Bonjour,

Voilà mon code :
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
<?php
 
include "fonction.inc.php";
 
connexion("localhost", "root", "", "ccf");
 
include "debut.inc.php";
if ((isset($_FILES['envoiFichier']['name'])&&($_FILES['envoiFichier']['error'] == UPLOAD_ERR_OK))) 
{    
$chemin_destination = 'C:/uploads';    
move_uploaded_file($_FILES['envoiFichier']['tmp_name'],
$chemin_destination.$_FILES['envoiFichier']['name']);    
}    
 
if (count($_FILES)==0) {
echo"
<form method='post' action='convocationCsv.php' enctype='multipart/form-data'>
<input type='hidden' name='MAX_FILE_SIZE' value='2097152'> 
  Sélectionner le fichier listeConvocation.csv :</br></br>
  <input name = 'envoiFichier' type='file'/></br></br>
  <input class='bouton' type='submit' value='Envoyer le fichier'>
</form>
";  
}
 
else {
 
$row = 1;
if (($handle = fopen("listeConvocation.csv", "r")) !== FALSE) {
    while (($data = fgetcsv($handle, 1000, ";")) !== FALSE) {
        $num = count($data);
 
        $row++;
        for ($c=0; $c < $num; $c++) {
 
        }
        $sql = "INSERT INTO ccf_convocation VALUES ('{$data[0]}', '{$data[1]}', '{$data[2]}', '{$data[3]}', '{$data[4]}', '{$data[5]}', '{$data[6]}', '{$data[7]}'  )";
        $resultat=mysql_query($sql);
    }
    echo" <p> Liste importer </p>";
    fclose($handle);
}
}
 
 
include "fin.inc.php";
 
?>
Donc j'ai un autre script du même genre qui ajoute des utilisateurs qui fonctionne, mais j'ai un problème pour celui-ci.

message d'erreur :

Notice: Undefined offset: 7 in C:\Program Files\EasyPHP-5.3.3\www\ccf\convocationCsv.php on line 58

Mon tableau commence bien à l'index 0 et se termine à 7 car il y a 8 champs dans la table ou je souhaite importer ces données.

Si je supprime le data[7], rien ne se passe, donc je le remet mais j'ai l'erreur citée plus haut.

Malgré l'erreur mon script insère quelques données dans ma table mais pas au bon endroit, et la date est affiché en "0000-00-00", j'ai bien pensé à mettre le format des cellules concernant les dates en américain dans mon fichier listeConvocation.csv, pour coïncider avec le format de MySQL.

Merci de m'aider