Besoin d'aide pour importer des données depuis un fichier texte...

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Besoin d'aide pour importer des données depuis un fichier texte...

Merci

par Nabief » 05 janv. 2009, 20:59

Merci de toutes ces réponses !

Je me penche la dessus et je reviens vous voir dès que besoin.

Très sympas !

Meilleurs voeux à vous tous .

Cordialement.

nabief

Re: Besoin d'aide pour importer des données depuis un fichie

par Calimero » 28 déc. 2008, 19:42

En parcourant les divers ouvrages que j'ai en ma possession, je me suis dit que je devrait peut-être importer toutes ces données dans un tableau, mais voila, j'avoue que je ne sais même pas pas où commencer...
Un commencement possible : file()

par Sékiltoyai » 28 déc. 2008, 15:43

Ou plus efficace : fgetcsv()…

par animithra » 28 déc. 2008, 14:49

Bien le bonjour !

Puisque tu as la chance d'avoir un fichier texte (qu'il s'agisse de .txt ou .csv) tu peux utiliser la découpe par un séparateur.

Ici chaque ';' représente une séparation dans les champs de ton fichier.

Tu peux utiliser une fonction de type explode().

Je te conseille de lire toute la documentation de la fonction, mais je te ré-explique brièvement le principe.

Si j'ai un document contenant :

Code : Tout sélectionner

0001;Jean;DUPONT;01 23 45 67 89; 0002;Luc;MARTIN;01 23 45 43 21;
Je peux créer une découpe de la manière suivante :

Code : Tout sélectionner

<?php //ouverture $fichier = fopen('chemin du fichier','mode d'ouverture'); //lecture du fichier $contenu = fread($fichier); //fermeture du fichier fclose($fichier); //découpe par le séparateur $mavariable = explode('séparateur',$contenu); ?>
Au final tu auras une variable de type array tel que :

Code : Tout sélectionner

$mavariable[0] = "0001"; $mavariable[1] = "Jean"; $mavariable[2] = "DUPONT"; $mavariable[3] = "01 23 45 67 89"; $mavariable[4] = "0002"; $mavariable[5] = "Luc"; $mavariable[6] = "MARTIN"; $mavariable[7] = "01 23 45 43 21";
Tu peux ensuite utiliser une boucle pour créer tes requêtes d'insertion dans la base de données.

J'espère avoir été assez claire, n'hésite pas à poser d'autres questions dans le cas contraire.

Bon courage et bonne progra.

Besoin d'aide pour importer des données depuis un fichier te

par Nabief » 28 déc. 2008, 13:04

Bonjour,
J'ai réalisé un site "PHP/MYSQL" pour un revendeur de voiture d'occasions, j'ai réussit à me débrouiller tout seul jusqu'à présent, mais là j'ai besoin d'aide car dans tous les bouquins dont je dispose et tous les tutos parcourus, je ne parviens pas à réaliser mon projet.
Je souhaiterais que quelqu'un puisse m'aider à réaliser un "upgrade" d'une base de données MYSQL depuis un fichier .txt, sachant que je ne dispose d'aucune possibilité de modifier le fichier .txt qui est uploader par FTP par un éditeur tiers.
Le site en question est le suivant: http://www.autostock95.fr

Le principe est le suivant:

Le garagiste utilise un logiciel de publication d'annonce pour incrémenter plusieurs sites de vente d'occasions tel que "la centrale" etc.
Ce logiciel upload un fichier texte sur son site par FTP ainsi que les photos des véhicules dans un dossier dédié.
Le fichier texte est rédigé ainsi:
475;427;VO;BMW;SERIE 3;325I 4P;BERLINE;4;ESSENCE;BVM5;13;192;1998;10/02/1998;195000;BORDEAU;1;Radar de recul , Jantes en alliage, Autoradio CD Laser, Lève Vitres électrique, Ordinateur de Bord, Ouverture automatique des portes, Autoradio K7, Radar avant, DETECTEUR DE NUIT ET DE PLUIE, Airbag conducteur, Toit ouvrant électrique, Toit ouvrant manuel, Sièges chauffants, Régulateur de vitesse, Rétroviseur électrique, Rétroviseur dégivrant, Pré-équipement GSM, Système de navigation GPS avec écran 16-9, Système de navigation GPS, Système anti blocage, Airbags frontaux et latéraux conducteur et passager, 4 Vitres éléctriques, Rétroviseurs conducteur et passagers électriques, Airbags conducteur et passagers, 2 Vitres éléctriques AV, Alerte de franchissement de ligne, Anti patinage, Sellerie cuir, Fermeture centralisée, Direction assistée, Climatisation automatique, Feux additionnels anti-brouillard, Climatisation, CAPOTE ELECTRIQUE, Banquette fractionnable, Phares au xénon;3990;3900;3 MOIS OU 5000 KM;3;GRIS;
Sachant que cela ne représente qu'une seule ligne et qu'il y a un retour chariot pour chaque nouvelle voiture. (Les premiers nombres sont l'ID unique du véhicule dans la base, ensuite la marque, puis le modèle et ainsi de suite jusqu'à la fin des options ...
Il me faut donc parvenir à insérer chaque champ en lieu et place dans la base MYSQL et regrouper tous les champs "Options" dans un seul et unique champ texte.
En parcourant les divers ouvrages que j'ai en ma possession, je me suis dit que je devrait peut-être importer toutes ces données dans un tableau, mais voila, j'avoue que je ne sais même pas pas où commencer...
Ca me déroute un peu, je ne suis qu'un newbie en PHP et j'aurais vraiment besoin d'aide pour appréhender ce fichier texte et comprendre ce que je fais dessus.
Si il y avait une âme charitable qui accepterait de m'accompagner dans cette démarche, je lui en serais vraiment reconnaissant !
Ps: Je ne recherche pas la facilité en espérant des bouts de codes à copier/coller, mais vraiment à apprendre à manipuler ce genre ce genre de fichier .

Merci d'avance à tous ceux qui voudront bien me répondre.
Bonne journée et joyeuses fêtes de fin d'année à tous.

Nabief