Fichier.Txt -> Table MySQL

spoof
Invité n'ayant pas de compte PHPfrance

27 juin 2007, 14:27

le code:
<?php 
$fichier="test.txt"; 

//verif presence fichier 
if (file_exists("$fichier")) 
{ 
/*declaration variables*/ 
$user="root"; 
$passwd=""; 
$host="localhost"; 
$bdd="test"; 

// connecte à MySQL 
mysql_connect("$host", "$user", "$passwd") or die("erreur de connexion serveur"); 
mysql_select_db("$bdd") or die("erreur de connexion Bdd"); 

// Lance ma fonction LOAD DATA INFILE 
mysql_query("LOAD DATA LOCAL INFILE 'test.txt' INTO TABLE test FIELDS TERMINATED BY ';' OPTIONALLY ENCLOSED BY '\'") or die ( "pb envoi fichier : " . mysql_error() ); 

echo "connexion reussi"; 

// On se déconnecte de MySQL 
mysql_close(); 
} 

else echo"Aucun fichier présent"; 
?> 
L'erreur suivante apparait:

Code : Tout sélectionner

pb envoi fichier : Erreur de syntaxe près de ''\'' à la ligne 1

spoof
Invité n'ayant pas de compte PHPfrance

27 juin 2007, 14:41

Bon voilà !
j'ai fait quelque modif est voilà:
mysql_query("LOAD DATA LOCAL INFILE 'test.txt' INTO TABLE test FIELDS TERMINATED BY ';' LINES STARTING BY '' TERMINATED BY '\n' (id, list, solde)") or die ( "pb envoi fichier : " . mysql_error() ); 
Maintenant il me dit :

Code : Tout sélectionner

pb envoi fichier : La table 'test.test' n'existe pas
Effectivement j'ai créé une table 'test' et non "test.test".
-Faut il que je créé ma table avec les champ avant, ou LOAD DATA INFILE le fait 'til tout seul ??
-Pourriez vous m'expliquer le deroulement de LOAD DATA INFILE svp ? Du moin comment il créer la table... La créé t'il ou s'est moi qui doit le faire ???
-Ensuite, les champs de la table sont t'il créé automatiquement ou je doit le faire aussi.

Merci pour votre Aide...

A force de cherche je m'approche du but :)

spoof
Invité n'ayant pas de compte PHPfrance

27 juin 2007, 14:50

me revoilà :)


J'ai reussi à corrigé les erreur oufff :lol:

Mais j'en est une autre maintenant :
pb envoi fichier : File 'test.txt' not found (Errcode: 2)

Un pb avec mon fichier txt :cry:
help me please

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

27 juin 2007, 15:31

Modération :
Déjà, pensez à utiliser les balises [ php]
:arrow: http://www.phpfrance.com/forums/voir_sujet-14406.php
C'est le dernier avertissement.

Ca serait domage de fermer ce sujet uniquement parce que tu ne m'écoutes pas
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

27 juin 2007, 15:35

Essaye de donner une adresse absolue pour le fichier (exemple /home/user/test.txt).

Je pense que c'est MySQL qui ne le cherche pas au bon endroit ;)
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Mammouth du PHP | 693 Messages

27 juin 2007, 18:59

MySQL cherche les dossier dans le répertoire de la BDD.

spoof
Invité n'ayant pas de compte PHPfrance

28 juin 2007, 11:47

Ioufffffffffffffffff.....;
Enfin j'ai réussi à faire marché mon code :lol:

Existe t'il une fonction php qui permet de telecharger un fichier dans un répertoire donné ??

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

28 juin 2007, 12:09

Du serveur vers le serveur, c'est le fonction de copie standards ... copy() en 1er

Depuis un serveur vers un autre serveur, get_content_file()

Depuis le client vers le serveur, via un formulaire d'upload ;)
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

spoof
Invité n'ayant pas de compte PHPfrance

28 juin 2007, 12:14

Mercu pour tout Zeus :)
Qu'est ce que je ne ferais pas sans toi :wink:

Aller je regarde çà de suite :lol:

spoof
Invité n'ayant pas de compte PHPfrance

28 juin 2007, 12:20

Ma fonction pour enregistrer mes fichier texte dans la base Sql fonctionne bien.
Maintenant je voudrais faire une page index qui:

-menu du haut: Affiche dans un cadre, les fichier texte présent dans le répertoire "fichier".
-menu du bas: Zone pour upload les fichiers dans le répertoire "fichier".

Donc pour la zone d'upload je regarde la fonction "copy()" de suite, car je fait çà en local pour l'instant. Par contre pour afficher le contenu d répertoire, que puis je utiliser comme fonction svp ?

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

28 juin 2007, 12:21

Mercu pour tout Zeus :)
Mais de rien ;) :D
Qu'est ce que je ne ferais pas sans toi :wink:
La même chose, mais avec un autre :lol:
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Mammouth du PHP | 693 Messages

28 juin 2007, 12:38

tu peux utiliser la fonction readdir() qui à chaque appel enverra un nom de fichier du répartoire. Avec une boucle tu devrai pourvoir lister un répertoire

spoo
Invité n'ayant pas de compte PHPfrance

28 juin 2007, 14:11

Merci bien , je regarde çà de suite ;)