Bonjour, j'arrive pas a resoudre un probleme qui me semble simple, je veux uploader un fichier CSV depuis ma page php et inserer les donnee dans ma BDD MySQL alors voici details :
Mon fichier CSV resemble a ca :
Ma BDD a la structure suivante :"Fri 14.06", "Route A", "durree 1h30",
" ", "Route C", "durree 2h30",
" ", "Route C", "durree 2h30",
"Sat 15.06", "Route A", "durree 1h30",
" ", "Route E", "durree 0h50",
" ", "Route X", "durree 1h45",
-id [INT (11), PRIMARY KEY, AUTO_INCREMENT]
-route [VARCHAR (9)]
-durree[VARCHAR (15)]
dans ma page PHP, je veux permettre a l'utilisateur de
- INSERT et UPDATE le fichier CSV si
- date = date du jour
le probleme c'est qu'il fair un INSERT seulement pour la premiere itteration, voici mon code :
le resulat obtenu dans ma table c'est :
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 <?php $conn = mysql_connect ("localhost","root","") or die (mysql_error()); mysql_select_db ("mvt",$conn); if(isset($_POST['submit'])) { $file = $_FILES ['file']['tmp_name']; $handle = fopen ($file, "r"); $curr_date = date('D d.m'); //echo $curr_date; while (($fileop = fgetcsv ($handle, 1000, ",")) !==false) { $datecsv = $fileop[0]; $routecsv = $fileop[1]; $durreecsv = $fileop[2]; if ($datecsv == $curr_date) { continue; } { echo $datecsv; echo $routecsv; $sql = mysql_query ("INSERT INTO test (date, route, durre) VALUES ('$datecsv','$routecsv', '$durreecsv') ON DUPLICATE KEY"); } } if ($sql) { echo 'data uploaded succefully'; } else { echo 'please check your csv file'; } } else { echo 'veuillez selectionner un fichier'; } ?>
-> Fri 14.06, Route A, durree 1h30







Répondre avec citation
Partager