Bonjour
alors ma question est; comment importer un fichier csv dans la base de donnée mysql par phpadmin, j'ai vu sur plusieurs forum la solution est de crée deux fichier php formulaire et insertion. mais bien méme avec le code je sais pas trop comment faire, si vous pouvez m'aider ça serait bien.
alors voici la reponse que j'ai trouvé:
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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
 
voici ma proposition en php
formulaire
<form method="post" enctype="multipart/form-data" action="import_requete_communes.php">
<table width="628" border="0" align="center" cellpadding="5" cellspacing="0" bgcolor="#eeeeee">
<tr>
<td width="500"><font size=3><b>Selectionner votre fichier *.csv :</b></font></td>
<td width="244" align="center"><input type="file" name="userfile" value="userfile"></td>
<td width="137" align="center">
<input type="submit" value="Envoyer" name="envoyer">
</td>
</tr>
</table>
</form>
 
récupération en php
 
<?php
// vérification sur la session authentification (la session est elle enregistrée ?)
// ici les éventuelles actions en cas de réussite de la connexion
require_once('connect.php');
$sql=mysql_query("DELETE FROM commmunes");
 
//=========================
// Traitement des donnees
//=========================
 
//recupere le nom du fichier indiqué par l'user
$fichier=$_FILES["userfile"]["name"];
 
// ouverture du fichier en lecture
if ($fichier)
{
//ouverture du fichier temporaire
$fp = fopen ($_FILES["userfile"]["tmp_name"], "r");
}
else{
// fichier inconnu
?>
<p align="center" >- Importation échouée -</p>
<p align="center" ><B>Désolé, mais vous n'avez pas spécifié de chemin valide ...</B></p>
<?php
exit();
}
// declaration de la variable "cpt" qui permettra de conpter le nombre d'enregistrement réalisé
$cpt=0;
?>
<p align="center">- Importation Réussie -</p>
 
<p align="right"><a href="#bas">Bas de page</a></p>
 
<?php
// importation
while (!feof($fp))
{
$ligne = fgets($fp,4096);
// on crée un tableau des élements séparés par des points virgule
$liste = explode(";",$ligne);
// premier élément
$liste[0] = ( isset($liste[0]) ) ? $liste[0] : Null;
$liste[1] = ( isset($liste[1]) ) ? $liste[1] : Null;
$liste[2] = ( isset($liste[2]) ) ? $liste[2] : Null;
 
 
 
$champs1=$liste[0];
$champs2=$liste[1];
$champs3=$liste[2];
 
// pour eviter qu un champs "nom" du fichier soit vide
if ($champs1!='')
{
// nouvel ajout, compteur incrémenté
$cpt++;
// requete et insertion ligne par ligne
// champs1 id en general dc on affecte pas de valeur
 
mysql_query("INSERT INTO communes(dep, com, nomcom) VALUES('$champs1','$champs2','$champs3' )");
 
$dep="dep";
mysql_query("DELETE FROM communes WHERE (dep='$dep')");
 
 
 
?>
<table width="505" border="1" align="center" cellpadding="0" cellspacing="0" bgcolor="#eeeeee">
<tr>
<td width="124">Eléments importés :</td>
<td width="361"><?php echo $liste[0];?></td>
<td width="361"><?php echo $liste[1];?></td>
 
</tr>
</table>
<?php
}
}
 
// fermeture du fichier
fclose($fp);
//on supprime la derniere car elle est vide
 
 
//==================
// FIN
//==================
?>
<br><br>Nombre de valeurs nouvellement enregistrées: <b><?php echo $cpt;?></b>.<br><br>
 
 
<a name="bas"></a>
<p align="right"><a href="#haut">Haut de page</a></p><br>