Bonjour,

je souhaite importer des données d'un fichier CSV vers une bd MySQL.
J'ai écrit un script PHP malheureusement aucun enrégistrement se fait dans la BD lorsque j'éxécute mon script.

Il est impossible d'uploader un fichier csv sur le forum de developpez.net alors je vous donne un lien sur lequel vs pourrez telecharger mon fichier csv dont je veux extraire les données: http://tresor.amast.org/export.csv
Je vous fourni maintenant le script que j'utilise:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<?
// table inventaire dans ma base avec 8 champs, id_inv(int 30), titre(varchar 100),auteur(varchar 50), date_creation(varchar 50),localisation(varchar 30),statut_admin(varchar 150),rep_img(text),techniques(varchar 30) .
// ensuite grace à la fonction ci-dessous, j' insère le fichier qu'on a chargé sur // le serveur bien sur.
 
//***************************************************
// Lecture et insertion du fichier export.csv
//**********************************************
 
function LireFichier()
{
 $sqllink=mysql_connect ("localhost","root","") or die ("Impossible de se connecter à la base de donnée");
 mysql_select_db("inventaire");
 
 $filename="export.csv"; // mettez le nom de votre fichier
// ouverture du fichier 
$fd = fopen( $filename, "r");
//Tant qu'on est pas à la fin
 while (!feof($fd)) {
     // on lit le fichier
    $buffer = fgets($fd,1000);
     // on découpe la chaine lue dans un tableau
    $name=explode(",",$buffer);
// on enlève les " (on peut faire un boucle for pour éviter les 7lignes)
    $name[0]=str_replace("\"","",$name[0]);//id_inv
	//$name[0]= addslashes($name[0]);
    $name[1]=str_replace("\"","",$name[1]);//titre
	//$name[1]= addslashes($name[1]);
	$name[2]=str_replace("\"","",$name[2]);//auteur
	//$name[2]= addslashes($name[2]);
	$name[3]=str_replace("\"","",$name[3]);//date_creation
	//$name[3]= addslashes($name[3]);
    $name[4]=str_replace("\"","",$name[4]);//localisation
	//$name[4]= addslashes($name[4]);
	$name[5]=str_replace("\"","",$name[5]);//statut_admin
	//$name[5]= addslashes($name[5]);
	$name[6]=str_replace("\"","",$name[6]);//rep_img
	//$name[6]= addslashes($name[6]);
	$name[7]=str_replace("\"","",$name[7]);//techniques
	//$name[7]= addslashes($name[7]);
 
	//echo $name[2]."<br/>";
	// on insère les valeurs dans la base
	mysql_query ("INSERT INTO inventorier(id_inv, titre, auteur, date_creation, localisation, statut_admin, rep_img, techniques) values ('".$name[0]."','".$name[1]."','".$name[2]."','".$name[3]."','".$name[4]."','".$name[5]."','".$name[6]."','".$name[7]."')",$sqllink) or die("impossible d'enrégistrer");
  }
  fclose ($fd);
mysql_close($sqllink);  //On ferme la connexion à la base de données  
 
}
 
 
?>

Merci pour votre precieuse aide.