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 :

Supprimer les doublons dans un fichie texte


Sujet :

Langage PHP

  1. #1
    Débutant Avatar de VIRGINIE87
    Femme Profil pro
    Sans Emploi
    Inscrit en
    Avril 2006
    Messages
    286
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Sans Emploi

    Informations forums :
    Inscription : Avril 2006
    Messages : 286
    Points : 72
    Points
    72
    Par défaut Supprimer les doublons dans un fichie texte
    slt à tous,
    J'ai récupéré le le nom des images (actuellement 16 images) contenu d'un fichier images dans un fichier texte, mais le soucis est à chaque fois que je reactualise ma page php il me rajoute les 16 même images à la suite des autres.
    donc comment dois-je m'y prendre.
    voila ce que j'ai déja fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    // élimine les doublons du fichier texte
    $keywords = 'donnees.txt'; // fichier
    $f = fopen($keywords, 'a+'); // lecture écriture
    $liste_sans_doublons = array();
    foreach ( $liste_sans_doublons as $valeur ) {
      if ( !in_array($valeur,$liste_sans_doublons) ) {
        array_push($liste_sans_doublons,$valeur);
      }
    }
    $max = count($liste_sans_doublons);
    $i = 0; 
    while ( $i < $max ) {
      echo ($liste_sans_doublons[$i]) . '<br />';
      $i++;
    }
    mais je n'obtient pas le résultat voulu ?
    quelqu'un peut il me dire quelles sont mes erreurs?
    merci

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Erreur 1 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $liste_sans_doublons = array();
    foreach ( $liste_sans_doublons as $valeur ) {
    Etant donné que tu viens d'initialiser ta variable comme un tableau vide, il n'y a rien a parcourir.

    Erreur 2 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $max = count($liste_sans_doublons);
    $i = 0; 
    while ( $i < $max ) {
    Par parcourir un tableau, on utilise foreach()

    Erreur 3 :
    Ce n'est pas au moment de l'affichage qu'il faut empecher les doublons, c'est quand tu crées ton fichier.

  3. #3
    Débutant Avatar de VIRGINIE87
    Femme Profil pro
    Sans Emploi
    Inscrit en
    Avril 2006
    Messages
    286
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : Sans Emploi

    Informations forums :
    Inscription : Avril 2006
    Messages : 286
    Points : 72
    Points
    72
    Par défaut
    ok je prend compte des tes remarques.
    ca y es j'ai la solution pour controler les doublons lors de l'écriture du fichier texte.
    voici le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <?php
    $fichier2 = 'donnees.txt'; // fichier texte
    $tab = array_map('trim', file($fichier2));
    $f = fopen($fichier2, 'a+'); // lecture écriture
    $dossier2 = 'H:\Wamp\wamp\www\images\min';
    if($dossier = opendir($dossier2)){ // si le dossier recherché existe
     while(false !== ($fichier = readdir($dossier))){ // on lit les fichiers du dossier
      if($fichier != '.' && $fichier != '..' && $fichier != 'Thumbs.db' AND !in_array($fichier, $tab)){ // on ne traite pas ces fichiers
       fwrite($f, $fichier."\n"); // on enregistre à la fin
      }
     } // on termine la boucle
     closedir($dossier); // on ferme le dossier
    } 
    fclose($f); // on ferme
    ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. supprimer les doublons dans une table
    Par mavean dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 26/06/2019, 13h26
  2. Supprimer les doublons dans un vecteur
    Par ecthelion dans le forum Collection et Stream
    Réponses: 11
    Dernier message: 30/11/2007, 09h27
  3. Vérifier les doublons dans un fichier texte
    Par Shyboy dans le forum Langage
    Réponses: 2
    Dernier message: 11/07/2007, 09h34
  4. [vbexcel]Comment supprimer les doublons dans une combobox?
    Par Mugette dans le forum Macros et VBA Excel
    Réponses: 20
    Dernier message: 24/11/2005, 11h12

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