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] Récupération du contenu d'un fichier et insertion dans une base de données


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    117
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Octobre 2005
    Messages : 117
    Points : 57
    Points
    57
    Par défaut [CSV] Récupération du contenu d'un fichier et insertion dans une base de données
    Bonjour à tous,

    La récupération d'un fichier CSV ne me pause aucun problème puisque des délimiteurs sont présents entre les données, mais il se trouve que j'ai un nouveau type de fichier à traiter...

    Le fichier texte se présente comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    valeur1         valeur2               valeur3        valeur4      valeur5   
    valeur1         valeur2               valeur3        valeur4      valeur5
    valeur1         valeur2               valeur3        valeur4      valeur5
    valeur1         valeur2               valeur3        valeur4      valeur5
    Je ne sais pas trop comment traiter ce fichier afin de l'insérer dans une béase de données...

    Quelles seraient vos pistes ?

    Par avance, merci !

  2. #2
    Membre éprouvé Avatar de alain.couthures
    Profil pro
    Gérant
    Inscrit en
    Avril 2007
    Messages
    902
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Gérant

    Informations forums :
    Inscription : Avril 2007
    Messages : 902
    Points : 1 247
    Points
    1 247
    Par défaut
    Cela peut dépendre du SGBD ... car MySQL permet aussi le LOAD INFILE en positionnel.

    Peut-être que le mieux pour vous serait de rajouter vous-même un séparateur...
    Formulaires XForms sur tous navigateurs sans extension à installer (architecture XRX) : http://www.agencexml.com/xsltforms/

  3. #3
    Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    117
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Octobre 2005
    Messages : 117
    Points : 57
    Points
    57
    Par défaut
    Merci Alain pour cette réponse.

    Le SGBD est bien MySQL...

    Je pourrais traiter le fichier et rajouter un séparateur à chaque espace par exemple, mais certaines valeurs sont des chaines de caractères comportant des espaces...

  4. #4
    Membre éprouvé Avatar de alain.couthures
    Profil pro
    Gérant
    Inscrit en
    Avril 2007
    Messages
    902
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Gérant

    Informations forums :
    Inscription : Avril 2007
    Messages : 902
    Points : 1 247
    Points
    1 247
    Par défaut
    Autant pour moi, MySQL ne gère pas le positionnel...

    Le plus simple pour vous est de découper chaque ligne par substr($ligne, $pos, $lg) et de reconstituer la ligne avec un séparateur. Une expression régulière pourrait aussi faire le travail en plus compacté...
    Formulaires XForms sur tous navigateurs sans extension à installer (architecture XRX) : http://www.agencexml.com/xsltforms/

  5. #5
    Membre du Club
    Inscrit en
    Octobre 2005
    Messages
    117
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Octobre 2005
    Messages : 117
    Points : 57
    Points
    57
    Par défaut
    Citation Envoyé par alain.couthures Voir le message
    Autant pour moi, MySQL ne gère pas le positionnel...

    Le plus simple pour vous est de découper chaque ligne par substr($ligne, $pos, $lg) et de reconstituer la ligne avec un séparateur. Une expression régulière pourrait aussi faire le travail en plus compacté...
    Merci, je pense que je vais utiliser cette solution.

    Bon après midi !

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 14/03/2016, 23h37
  2. Réponses: 2
    Dernier message: 05/05/2010, 17h01
  3. [TinyMCE] Récupérer le contenu d'un textearea TinyMCE inséré dans une base de donnée
    Par vivicente dans le forum Bibliothèques & Frameworks
    Réponses: 9
    Dernier message: 13/10/2009, 15h23
  4. Parcours d'un fichier et insertion dans une base de données !
    Par condor_01 dans le forum Général Java
    Réponses: 2
    Dernier message: 24/04/2008, 09h24
  5. Stoquer dans un fichier XML ou dans une base de données ?
    Par ludovic tambour dans le forum Décisions SGBD
    Réponses: 10
    Dernier message: 15/11/2007, 11h02

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