IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

listing d'image d'un répertoire avec récursion


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Octobre 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 4
    Par défaut listing d'image d'un répertoire avec récursion
    Bonjour à tous, j'ai une question. J'ai un fichier .csv qui contient une liste de 3000 produits, descriptions et prix. Ensuite, j'ai un répertoire de photos qui contient 8 000 photos. Mon plan est de faire une fonction qui va pouvoir inscrire les photos dans le CSV.

    Voici la structure des noms de photo.

    Clavier.jpg
    Clavier_1.jpg
    Clavier_2.jpg
    Moniteur.jpg
    DVD.jpg
    DVD_1.jpg
    CD.jpg
    CD_1.jpg
    ...

    Dans le CSV, nous allons retrouver les produits ainsi:

    Clavier,Un simple clavier,10.00$
    Moniteur,Écran 22 pouces,150.00$
    DVD,Tour de DVD,10.00$
    CD,Tour de CD,10.00$

    Mon fichier finale, je voudrais ceci:

    Clavier,Un simple clavier,10.00$,Clavier.jpg;Clavier_1.jpg;Clavier_2.jpg
    Moniteur,Écran 22 pouces,150.00$,Moniteur.jpg
    DVD,Tour de DVD,10.00$,DVD.jpg;DVD_1.jpg
    CD,Tour de CD,10.00$,CD.jpg;CD_1.jpg

    Je ne veux pas vous faire coder la fonction, mais si vous pouvez maider à penser à l'algo, je ne dirais pas non

    Merci à vous.

  2. #2
    Expert confirmé Avatar de papajoker
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2013
    Messages
    2 324
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2013
    Messages : 2 324
    Par défaut
    Bonjour,
    je ferais plutot l'inverse

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    tant que parcourir .csv {
      $motCle= $csvLigne[0];
      $fichiers=glob('/dossier/'. $motCle.'*.jpg');
      if (count($fichiers)>0) ;
    }

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Octobre 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 4
    Par défaut
    Merci pour votre réponse, je vais essayer de passer ainsi. Voici mon algo. Qu'en pensez-vous:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Ouvrir fichier CSV
    $ligne = 2
    Tant que le fichier n'est pas terminé{
     
    $nomProduit = Prendre la cellule $ligne . A
     
    pour chaque (glob('/images/' . $nomProduit . ' . *.jpg') as $nomImage {
    écrire '/images/' . $nomImage . ';'
    }
    écrire "\n"
    $ligne ++
    }

  4. #4
    Expert confirmé Avatar de papajoker
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2013
    Messages
    2 324
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2013
    Messages : 2 324
    Par défaut
    pas vraiment plutot :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    $handle = fopen("/dossier/test.csv", "r"));
    $csvLigne = fgetcsv($handle, 0, ";")); // lecture entete
    while (($csvLigne = fgetcsv($handle, 0, ";")) !== FALSE) {
      $motCle= $csvLigne[0];
      $fichiers=glob('/dossier/'. $motCle.'*.jpg');
      $ligne= $motCle.';'. $csvLigne[1]. ';'.$csvLigne[2];
      if (count($fichiers)>0) {
    	 foreach($fichiers as $fichier){
    	    $ligne.= ';'.basename($fichier);
    	 }
      }
      echo $ligne."\n"; 
    }
    fclose($handle);

Discussions similaires

  1. Réponses: 0
    Dernier message: 14/11/2010, 14h59
  2. Réponses: 0
    Dernier message: 09/11/2010, 12h45
  3. Probleme avec list-style-image:url()
    Par orphen dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 03/04/2008, 16h30
  4. Liste d'images d'un répertoire
    Par richard_sraing dans le forum Windows Forms
    Réponses: 6
    Dernier message: 24/03/2007, 21h48
  5. Décalage dans IE avec list-style-image
    Par creatchy dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 01/02/2007, 13h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo