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 :

lecture CSV : \0 intempestifs


Sujet :

Langage PHP

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 21
    Par défaut lecture CSV : \0 intempestifs
    Bonjour,

    Je fais la lecture d'un CSV et je stocke les données dans mysql.

    Le problème est que la lecture fonctionne bien l'écriture dans mysql aussi, mais quand je fais export data dans mysql, j'obtiens pour chacun des champs un \0 en avant de chaque caractère.

    Exemple :

    ('\0U\0S\0A\0', '\01\09\08\07\0-\00\02\0-\02\05')

    Je me serais attendu à avoir :

    ('USA', '1987-02-25')

    J'ai essayé str_replace('\0','',$var); mais ça ne fonctionne pas.

    Avez-vous une idée ?

    Merci

  2. #2
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    161
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2005
    Messages : 161
    Par défaut
    Il serait intéressant d'avoir ton code qui importe le CVS...

    \0 correspond à un caractère NUL
    Mais tu peux déjà tenter de faire ça avant d'insérer tes données dans la base: (en supposant que $val1, $val2, ...$valN correspondent aux valeurs contenu dans une ligne du csv
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $val1 = trim($val1)
    $val2 = trim($val2)
    ...
    $valN = trim($valN)
     
    sql = "INSERT INTO taTable (col1, col2, ..., colN) Values ($val1, $val2, ..., $valN)"
    Sinon, tu peux aussi faire le trim avant d'afficher tes données, mais c'est plus propre de le faire à l'insertion (pour avoir des données 'propres' dans ta base)

  3. #3
    FoxLeRenard
    Invité(e)
    Par défaut
    Citation Envoyé par jgx342 Voir le message
    Bonjour,
    Je fais la lecture d'un CSV et je stocke les données dans mysql.
    Le problème est que la lecture fonctionne bien l'écriture dans mysql aussi, mais quand je fais export data dans mysql, j'obtiens pour chacun des champs un \0 en avant de chaque caractère.
    Exemple :
    ('\0U\0S\0A\0', '\01\09\08\07\0-\00\02\0-\02\05')
    Je me serais attendu à avoir :
    ('USA', '1987-02-25')
    J'ai essayé str_replace('\0','',$var); mais ça ne fonctionne pas.
    Avez-vous une idée ?
    Merci
    peux tu préciser si c' est a la lecture du fichier, que tu as ceci, ou bien a la lecture de Mysql ??

    Auquel-cas qu'el argument astu employé a l'écriture PUIS a la lecture MySql

    donnes nous aussi la syntaxe de lecture du fichier d'origine.
    Merci

  4. #4
    Membre Expert Avatar de Bebel
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2003
    Messages : 786
    Par défaut
    Salut au lieu de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    str_replace('\0','',$var);
    utilise plutot

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    str_replace("\0",'',$var);
    car avec ' tu n'interpretes pas le contenu, donc il va essayer de supprimer la chaine '\0' et non son rendu.

Discussions similaires

  1. Lecture csv coté serveur
    Par dadaking dans le forum GWT et Vaadin
    Réponses: 6
    Dernier message: 29/04/2011, 09h13
  2. Form avec lecture CSV
    Par Nheil dans le forum Ext JS / Sencha
    Réponses: 2
    Dernier message: 14/02/2011, 09h01
  3. lecture csv probleme
    Par lemessindu57 dans le forum C++
    Réponses: 2
    Dernier message: 09/12/2010, 10h02
  4. Lecture CSV et verification ordre des champs
    Par vincent62149 dans le forum VB.NET
    Réponses: 9
    Dernier message: 11/12/2009, 11h34
  5. Réponses: 3
    Dernier message: 23/08/2006, 16h30

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