warning avec requete sql en php
Bonjour,
j'ai fais un programme qui me rempli ma base de données avec un fichier csv.
Cependant j'ai un warning avec les requetes:
Citation:
Invalid parameter number: number of bound variables does not match number of tokens
Voici le code :
Code:
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
| <?php
$fichierCsvActivite="C3P_activite.csv"; // fichier donnees activités
$separateur = ';';
// Récupère une ressource sur les fichier CSV
$fileActivite = new SplFileObject($fichierCsvActivite);
$fileActivite->setFlags(SplFileObject::READ_CSV | SplFileObject::SKIP_EMPTY);
$fileActivite->setCsvControl($separateur);
// Pour avoir un code générique, on génère les marqueurs en fonction du nombre de champs :
//Activite
$tab_champsActivite = $fileActivite->current();
$champs_insertActivite = array_fill(0,count($tab_champsActivite),'?');
$champs_insertActivite = implode(',',$champs_insertActivite);
try
{
$bdd = new PDO('mysql:host=localhost;dbname=basec3p', 'root', '');
$ReqInsertActivite = "INSERT INTO activite VALUES($champs_insertActivite)";
$insertionActivite = $bdd->prepare($ReqInsertActivite);
$fileActivite->next();
while($rowActivite = $fileActivite->current())
{
$insertionActivite->execute($rowActivite);
$fileActivite->next();
}
echo "<br>table activite remplie avec succès.<br>";
}
catch(PDOException $e)
{
die('Erreur : '.$e->getMessage());
}
?> |
le warning est signalé pour la ligne :
Code:
$insertionActivite->execute($rowActivite);
Ainsi, il y'a certains lignes de mon fichier csv qui ne sont pas remplies dans ma base données.
Merci de votre aide