Import fichier csv dans une BBD (mysql)

cs_onylink Messages postés 19 Date d'inscription jeudi 19 mars 2009 Statut Membre Dernière intervention 14 août 2009 - 2 juil. 2009 à 16:59
cs_onylink Messages postés 19 Date d'inscription jeudi 19 mars 2009 Statut Membre Dernière intervention 14 août 2009 - 3 juil. 2009 à 13:35
Bonjour,
Je cherche à importer un fichier de type csv pour ensuite rentrer les valeurs dans la bdd.

    <form action="enter_DB_test.php" enctype="multipart/form-data">
   
   
   
Ensuite j'essaie de récupérer le fichier pour le mettre dans la base de donnée.

<?php
mysql_connect("localhost", "root", "");
mysql_select_db("test");
$fichiercsv = $_POST['fichiercsv'];
mysql_query("LOAD DATA INFILE '$fichiercsv' INTO TABLE test FIELDS TERMINATED BY ';' LINES TERMINATED BY '\r\n' IGNORE 1 LINES;");
?>

Ca ne marche pas.. Ca me transmet que le nom (String).. Et non le fichier..

J'aimerai avoir l'adresse mémoire du fichier, ou n'importe quel autre technique..
Le problème c'est que je n'arrive pas stocker le fichier importer.

Si vous avez une idée pour m'aider.. parce que là je ne trouve rien..

3 réponses

cs_jeca Messages postés 341 Date d'inscription mercredi 17 juillet 2002 Statut Membre Dernière intervention 14 juillet 2011 14
2 juil. 2009 à 17:53
Bonjour,

Un fichier se récupère dans $_FILES et non pas dans $_POST.

http://www.php.net/manual/fr/features.file-upload.post-method.php
0
cs_onylink Messages postés 19 Date d'inscription jeudi 19 mars 2009 Statut Membre Dernière intervention 14 août 2009
2 juil. 2009 à 19:07
Cool merci je vais pouvoir essayer.. (Une aprem de perdu en perspective, mais si ça marche :D...)

Et merci pour le lien, j'avais pas trouvé de bonne documentation (ou plutot je suis passé à coté).

Cordialement,
Onylink
0
cs_onylink Messages postés 19 Date d'inscription jeudi 19 mars 2009 Statut Membre Dernière intervention 14 août 2009
3 juil. 2009 à 13:35
Bonjour,
J'ai essayé de faire plusieurs truc, mais je n'arrive toujours à rien..

Script du formulaire :

<form enctype="multipart/form-data" action="enter_DB_test.php" method="post">

Envoyez ce fichier :

</form> 

Script de rentré dans la BDD :

<?php
mysql_connect("localhost", "root", "");
mysql_select_db("test");



$tmp_file = $_FILES['file']['tmp_name'];
  if( !is_uploaded_file($tmp_file) )
 {
  exit("Le fichier est introuvable.
Vous n'avez pas choisi de fichier ? uploader.");
 }



mysql_query("LOAD DATA INFILE '$tmp_file' INTO TABLE test FIELDS TERMINATED BY ';' LINES TERMINATED BY '\r\n' IGNORE 1 LINES;");



?>


Je ne comprend pas pourquoi ça ne marche pas..
Quand j'injecte directement mon fichier csv dans ma requète sql cela marche trés bien. J'ai donc un problème pour transmettre le fichier à la requète sql.
Si quelqu'un peu me dire à quel endroit se trouve le problème et comment le résoudre ?

Grand merci

Cordialement,
Onylink.
0
Rejoignez-nous