Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 12/01/2008, 10h26   #1
Nouveau Membre du Club
 
Inscription : octobre 2005
Messages : 117
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : octobre 2005
Messages : 117
Points : 29
Points : 29
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 :
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 !
JoN28fr est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/01/2008, 12h04   #2
Membre Expert
 
Avatar de alain.couthures
 
Inscription : avril 2007
Messages : 889
Détails du profil
Informations personnelles :
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : avril 2007
Messages : 889
Points : 1 061
Points : 1 061
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/
alain.couthures est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/01/2008, 12h30   #3
Nouveau Membre du Club
 
Inscription : octobre 2005
Messages : 117
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : octobre 2005
Messages : 117
Points : 29
Points : 29
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...
JoN28fr est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/01/2008, 12h57   #4
Membre Expert
 
Avatar de alain.couthures
 
Inscription : avril 2007
Messages : 889
Détails du profil
Informations personnelles :
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : avril 2007
Messages : 889
Points : 1 061
Points : 1 061
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/
alain.couthures est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/01/2008, 13h50   #5
Nouveau Membre du Club
 
Inscription : octobre 2005
Messages : 117
Détails du profil
Informations personnelles :
Âge : 26

Informations forums :
Inscription : octobre 2005
Messages : 117
Points : 29
Points : 29
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 !
JoN28fr est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 11h57.


 
 
 
 
Partenaires

Hébergement Web