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 :

[CSV] fputcsv : fichier vide [PHP 5.2]


Sujet :

Langage PHP

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    320
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 320
    Points : 311
    Points
    311
    Par défaut [CSV] fputcsv : fichier vide
    Salut,

    Je bute là-dessus depuis hier:

    Je dois insérer des enregistrements dans une base à partir d'un fichier csv fourni par l'utilisateur.

    J'utilise pour cela fgetcsv pour lire le fichier csv et récupérer un tableau ($ligne) contenant les champs pour chaque ligne du fichier.

    Jusqu'ici tout va bien, tout fonctionne.

    Dans certains cas, les données fournies par l'utilisateur dans son fichier sont incorrectes. A ce moment-là, au lieu d'insérer les données, je voudrais récupérer la ligne incirminée et la coller dans un fichier .csv qui contiendra toutes les lignes posant problème, pour fournir à l'utilisateur un fichier synthétique et lui éviter de rechercher dans son fichier d'origine les erreurs ligne par ligne.

    J'utilise donc fputcsv pour écrire mon tableau $ligne dans un second fichier csv.

    Le problème, c'est que ce second fichier fait toujours 0ko.

    Voici du code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    $fichier = "toto";
     
    //Nom du fichier d'erreur.
    $fichierErr = $fichier." erreurs.csv";
    [...]
    //Plus bas dans le script
    $fErreur = fopen( $fichierErr, "w+" );
    print "<br /><b>".$fErreur."</b><br />";
    fputcsv( $fErreur, $ligne, ";" );
    fclose( $fErreur );
    Je précise que tout le script fonctionne, à part cette foutue fonction fputcsv qui me fait un fichier vide : $ligne n'est pas vide, c'est bien un tableau contenant des données, $fErreur n'est pas false, comme me l'indique le print qui donne bien un Resource ID, et aucun message d'erreur concernant l'ouverture du fichier ou quoique ce soit.

    Je sèche un peu.
    *.Har(d)t
    ---
    "Je donnerais mon bras droit pour être ambidextre"
    Brian W. Kernighan

  2. #2
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 185
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 185
    Points : 8 381
    Points
    8 381
    Billets dans le blog
    17
    Par défaut
    'w+' Open for reading and writing; place the file pointer at the beginning of the file and truncate the file to zero length. If the file does not exist, attempt to create it.
    Utilise plutôt "a".

    Sinon donne un testcase illustrant le bug
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    320
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 320
    Points : 311
    Points
    311
    Par défaut
    Citation Envoyé par Séb. Voir le message
    Utilise plutôt "a".

    Sinon donne un testcase illustrant le bug
    Youhou, c'était si simple !

    Merki
    *.Har(d)t
    ---
    "Je donnerais mon bras droit pour être ambidextre"
    Brian W. Kernighan

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

Discussions similaires

  1. [CSV] fputcsv me génère un fichier vide
    Par karpediem dans le forum Langage
    Réponses: 6
    Dernier message: 09/04/2009, 19h06
  2. Créer un fichier vide
    Par Bouguennec dans le forum Pascal
    Réponses: 5
    Dernier message: 08/08/2007, 19h45
  3. Compression fichiers vides
    Par Dobyan08 dans le forum Linux
    Réponses: 2
    Dernier message: 08/06/2006, 12h21
  4. fichier vide ou non
    Par mrtatou dans le forum C
    Réponses: 6
    Dernier message: 07/02/2006, 04h04
  5. Mysqldump donnant un fichier vide
    Par simoryl dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 15/02/2005, 16h42

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