Page 1 sur 1
probleme avec load data infile
Posté : 01 juin 2005, 12:40
par logone
Salut,
Je dois recuperer un fichier texte (extension aff mais c'est du texte) sur
un ftp et l'inserer dans ma base mysql
pour ceci j'ai mis le code suivant
Code : Tout sélectionner
LOAD DATA INFILE
'ftp://login:[email protected]/home/repertoire/Perso/texte.aff'
INTO TABLE immodatatest
FIELDS TERMINATED BY ','
ENCLOSED BY ''
LINES TERMINATED BY '\r\n';
Mais j'ai une erreur Parse error: parse error, unexpected T_STRING
Je vois pas du tout ce qui peut fazire ca mon chemin ftp ??
Merci a vous
[/code]
Posté : 01 juin 2005, 16:35
par zeus
Est ce que tu tape ce code directement en PHP ?
l'erreur dit qu'il ne reconnait pas ce que tu lui as donné à interpreter
Posté : 01 juin 2005, 16:42
par logone
heu oui c'est une page que j'appelle et l'erreur m'est retournee a chanque fois je vois pas trop la
Posté : 01 juin 2005, 16:44
par zeus
Je crois que tu n'a pas compris un truc :
LOAD DATA INFILE est une commande SQL !!! Tu ne peut pas écrire
<?php
LOAD DATA INFILE ...
?>
il faut que tu commence à créer une connexion avec la base de données dans laquelle tu veux insérer tes données et te servir de cette connexion pour exécuter ta commande SQL
Posté : 01 juin 2005, 16:50
par logone
ok je comprends mieux
mais comment faire alors pour recuperer ce fichier distant et l'inserer dans ma base ? en PHP c'est faisable ??
Posté : 01 juin 2005, 16:55
par zeus
C'est faisable, mais tu doit quand même créer une connexion à ta bdd.
Puis tu doit parcourir ton fichier ligne par ligne, le mettre en forme, et inserer ligne par ligne !!!!
Mais je te déconseille cette méthode, c'est plus long, plus dangereux !!!!
Renseigne toi sur les méthodes d'interfacage entre MySQL et PHP (tu en auras besoin dans les 2 cas) et execute ta commande LOAD DATA INFILE, c'est ce que je fait d'habitude, que je trouve le plus simple et le plus rapide
Posté : 01 juin 2005, 17:01
par logone
methode d'interfacage entre mysql et php Grrrr!!!
Pardon pour mon ignorance sur le sujet mais je te comprends pas trop.
As tu une methode a m'indique que je pourrais regarde ??
Merci a toi
Posté : 01 juin 2005, 17:05
par zeus
Excuse moi, j'aurais dû dire : "Comment agir sur une BDD MySQL avec PHP"
suis bien ce tuto ==>
ICI <==
et tu auras les base
Posté : 01 juin 2005, 17:12
par logone
J'oubliais j'ai un fichier init qui effectue la connection a la base de donnée
Posté : 01 juin 2005, 17:14
par zeus
un fichier init ? init.php ou monFichier.init ?
Posté : 01 juin 2005, 17:19
par logone
un fichier init.php dans lequel je met la connection a la base de donnée
et que j'appelle avec un require()
Posté : 01 juin 2005, 17:21
par zeus
si la connexion avec la base de données est faite, tu peux exécuter ta requete comme ça :
$str_requete = "LOAD DATA INFILE ..."; //C'est ta commande SQL
mysql_query($str_requete);
Comme tu aurais fait un SELECT ou un INSERT
Posté : 01 juin 2005, 17:27
par logone
ha ba voila mon probleme
je pense que ca doit venir de ca
je test ca et te tiens au courant mais je pense que c'est ca
Merci encore
Posté : 01 juin 2005, 17:30
par zeus
Je pourrais surement pas te répondre ce soir mais je serais là demain ...