Bonjour tout le monde,

J'aimerai importer un fichier .csv dans un tableau contenant plusieurs champs.

J'ai fait mon code mais ça ne fonctionne pas et je sais pas du tout pourquoi...! Ca fait plusieurs jours que je me "prend" la tête à essayer de résoudre le problème mais sans succès ...! Je pense que mon code vaut mieux qu'un grand discours

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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
<form method="post" action="" enctype="multipart/form-data">
<?php
 
if(!defined('IN_INDEX')){
exit();
}
 
$_SESSION['action']="module/administration/action.php";
 
if(isset ($_POST['valideImport'])){
 
//On ouvre le fichier à importer en lecture seule
 if (file_exists($fichier))
     $fp = fopen("$fichier", "r"); 
 else
     {
       echo "Fichier introuvable !<br>Importation stoppée."; //le fichier n'exsiste pas
       exit();
     }
 
    while (!feof($fp)) //on importe le fichier
    { 
       $ligne = fgetcsv($fp,4096);//tant qu'on est pas à la fin du fichier, on li une ligne
 
       $liste = explode( ";",$ligne); // On récupère les champs séparés par ; dans liste
 
       //On assigne les variables
       $login = $liste[0];
       $password = $liste[1];
       $nom = $liste[2]; 
       $prenom = $liste[3]; 
       $profil = $liste[4];
       $rue = $liste[5];
       $cp = $liste[6];
       $ville = $liste[7];
       $mail = $liste[8];
       $tel_fixe = $liste[9];
       $tel_portable = $liste[10];
 
       //On ajoute un nouvelle enregistrement dans la table
       $connexion->exec('INSERT INTO collaborateur (login,password,nom,prenom,profil,rue,cp,ville,mail,tel_fixe,tel_portable,site_id) VALUES ("'.$login.'","'.$password.'","'.$nom.'","'.$prenom.'","'.$profil.'","'.$rue.'","'.$cp.'","'.$ville.'","'.$mail.'","'.$tel_fixe.'","'.$tel_portable.'")');
 
       if(mysql_error())
        { 
           print "Erreur dans la base de données : ".mysql_error();
           print "<br>Importation stoppée.";
           exit();
        } 
     } 
 
     echo "<br>Importation terminée, avec succès."; 
 
     //On ferme le fichier 
     fclose($fp); 
}
 
?>
<br/>   
Choisir le fichier ".csv" à importer :
<br/>
<table border="0" cellspacing="0" cellpadding="3">
<tr>
<td>Fichier :</td> 
<td>
	<input type="hidden" name="MAX_FILE_SIZE"* value="4000" />
	<input id="fichier" type="file" name="fichier" />
</td> 
</tr>
<tr>
<td></td>  
<td> <input type="submit" name="valideImport" value="Importer"> </td> 
</tr>
</table> 
</form>
Merci de votre aide qui m'ai à chaque fois précieuse.