C'est bon j'ai trouvé. Voila ce que j'ai fait:
En tout cas merci de votre aide!
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 <?php require_once('connexion.php'); $i = 1; if (($fichier = fopen("pers.csv", "r")) !== FALSE) { while (($ligne = fgetcsv($fichier,",")) !== FALSE) { $num = count($ligne); echo "<p> ligne numero $i: <br /></p>\n"; $i++; for ($j=0; $j < $num; $j++) { $donnee=explode(";",$ligne[$j]); $nom = $donnee[0]; //nom $prenom = $donnee[1];//prenom $date = $donnee[2]; //date $matricule = $donnee[3]; //matricule $centre = $donnee[4]; //centre $date2=explode("/",$date); //mise en forme date sql $date= $date2[2]."-".$date2[1]."-".$date2[0]; $sql = "SELECT NUMCS FROM EQUIPEMENTS.CIS WHERE ALIASCS=$centre"; $idcis = mysql_query($sql, $equip) or die(mysql_error()); $row_idcis = mysql_fetch_assoc($idcis); $numcs=$row_idcis['NUMCS']; $requete = "INSERT INTO EQUIPEMENTS.SAPEURS (MATRICULESP,NOMSP,PRENOMSP,DATERECRUTEMENTSP,NUMCS) VALUES ('$matricule','$nom','$prenom','$date','$numcs')"; mysql_query($requete); } } fclose($fichier); } ?>
le csv est mal formaté (celui que tu m'as donné...): il y a des "" autour de chaque ligne donc normal qu'il lise pas correctement
moi dans explode j'avais inversé le délimiteur et la chaine à exploser...
Code php : 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 <?php require_once('connexion.php'); mysql_select_db($database, $equip); $handle = fopen("pers.csv", "r"); echo "<table>"; while ($ligne = fgetcsv($handle,0,";")) { echo"<tr>"; $nbcol = count($ligne); for($i=0; $i<$nbcol; $i++) { echo"<td>".$ligne[$i]."</td>"; } echo"<td>"; $nom=$ligne[0]; $prenom=$ligne[1]; $d=explode('/',$ligne[2]); $datenaissance="{$d[2]}-{$d[1]}-{$d[0]}"; $matricule=$ligne[3]; $centre=$ligne[4]; $requete = "INSERT INTO SAPEURS (MATRICULESP,NOMSP,PRENOMSP,DATERECRUTEMENTSP,NUMCS) VALUES ('$matricule', '$nom', '$prenom', '$datenaissance', '$centre')"; mysql_query($requete); $error=mysql_error(); echo empty($error)?"ok":$error; echo"</td>"; echo"</tr>"; } echo"</table>"; fclose($handle); ?>
soyons pensez à mettre quand votre problème est résolu ou à utiliser pour les réponses pertinentes...
ne posez pas de problématique soi-disant simplifiée sur des problèmes que vous n'êtes pas capable de résoudre par respect pour ceux qui planchent dessus... sinon: et à utiliser pour insérer votre code...
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager