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 :

Doublons d'affichage en fichier csv (php)


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Homme Profil pro
    Etudiant
    Inscrit en
    Mai 2015
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Mauritanie

    Informations professionnelles :
    Activité : Etudiant
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2015
    Messages : 26
    Points : 19
    Points
    19
    Par défaut Doublons d'affichage en fichier csv (php)
    Bonjour

    j'ai reussi le téléchargement d'un fichier csv exporter d'une base de donnee(affichage des donnees du table employer) en php , mais il y a un doublons dans l'affichage voir image

    Nom : Sans titre.png
Affichages : 362
Taille : 116,0 Ko

    code du fichier

    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
     <?php 
     
     
     
         $a=mysql_connect("localhost","root","");
    mysql_select_db("gestionpersonnel",$a);
     
     $sep = ",";
     
     $filename = 'fichier/'.strtotime("now").'.csv';
     
      $req = mysql_query("SELECT * FROM employer") or die (mysql_error());
     
      $num_rows = mysql_num_rows($req);
     
      if($num_rows >= 1)
      {
      $row = mysql_fetch_assoc($req);
       $fp = fopen($filename,"w");
     
      $seperator = "";
      $comma = "";
     
      foreach($row as $name => $value)
      {
        $seperator .= $comma . '' .str_replace('','""',$name);
    	$comma = ",";
     }
     $seperator .= "\n";
       echo $seperator;
     
       fputs($fp,$seperator);
     
       mysql_data_seek($req, 0);
     
       while($row = mysql_fetch_assoc($req))
       {
     
      $seperator = "";
      $comma = "";
     
      foreach($row as $name => $value)
      {
        $seperator .= $comma . '' .str_replace('','""',$value);
    	$comma = ",";
     }
     $seperator .= "\n";
     fputs($fp,$seperator);
     }
       fclose($fp);
       }
        else
    	{
    	    echo 'La base de donnee est vide';
    	}
     
      header('Content-Type: text/csv');
              header('Content-Disposition: attachment; filename =' .$filename);
              header('Pragma: no-cache');
              readfile($filename);
     
     ?>
    Comment je peut resoudre ceci

    Cordialement

  2. #2
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Je dirais plutôt qu'il y a un doublon dans le fichier (l'affichage ne nous intéresse pas franchement)
    Tu es en train de construire un fichier CSV, pourquoi ne pas utiliser les méthodes faites pour, comme fputcsv ? D'autant plus que tu récupères déjà les données à écrire sous forme de tableau :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    $fp = fopen($filename,"w");
     
    // ligne d'entête
    $row = mysql_fetch_assoc($req);
    $names = array_keys($row);
    fputcsv($fp, $names);
     
    mysql_data_seek($req, 0);
    while($row = mysql_fetch_assoc($req))
    {
    	fputcsv($fp, $row);
    }
    fclose($fp);
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  3. #3
    Membre à l'essai
    Homme Profil pro
    Etudiant
    Inscrit en
    Mai 2015
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Mauritanie

    Informations professionnelles :
    Activité : Etudiant
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2015
    Messages : 26
    Points : 19
    Points
    19
    Par défaut
    Merciiiiii Celira

  4. #4
    Membre actif

    Inscrit en
    Octobre 2010
    Messages
    168
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 168
    Points : 241
    Points
    241
    Par défaut
    Salut les doublons en sont t'ils tous ?!? :-) bonne continuation

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

Discussions similaires

  1. Affichage contenu fichier csv ou txt
    Par Thierry_V dans le forum Général Python
    Réponses: 3
    Dernier message: 23/03/2014, 22h24
  2. [CSV] Importer un fichier CSV ou OV2 dans une page PHP
    Par gpsevasion dans le forum Langage
    Réponses: 13
    Dernier message: 12/02/2009, 14h31
  3. [EasyPHP] Affichage de fichier php (débutant)
    Par YLYES dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 24/03/2007, 19h15
  4. [CSV] Fichier CSV en PHP
    Par rimeh dans le forum Langage
    Réponses: 1
    Dernier message: 11/01/2007, 12h01
  5. [CSV] Affichage d'un fichier csv avec pagination
    Par arnoweb dans le forum Langage
    Réponses: 4
    Dernier message: 26/07/2006, 15h13

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