erreur dans update ?
Posté : 23 déc. 2016, 17:22
Bonjour j'ai une erreur dans mon update ? je vois pas mon erreur.
<?PHP
require'header.php';
$nom_update = filter_input(INPUT_POST, 'nom_update');
$type = filter_input(INPUT_POST, 'type');
$sex = filter_input(INPUT_POST, 'sex');
$jour = filter_input(INPUT_POST, 'jour');
$mois = filter_input(INPUT_POST, 'mois');
$annee = filter_input(INPUT_POST, 'annee');
$tail = filter_input(INPUT_POST, 'tail');
$poid = filter_input(INPUT_POST, 'poid');
$signe = filter_input(INPUT_POST, 'signe');
$ethni = filter_input(INPUT_POST, 'ethni');
$yeux = filter_input(INPUT_POST, 'yeux');
$cheveux = filter_input(INPUT_POST, 'cheveux');
$sil = filter_input(INPUT_POST, 'sil');
$fum = filter_input(INPUT_POST, 'fum');
$detail_p = filter_input(INPUT_POST, 'detail_p');
$nom = filter_input(INPUT_GET, 'token');
$ID = filter_input(INPUT_GET, 'token_update');
if(isset($_POST['choix'])){
$choix = implode(' - ', $_POST['choix']);
echo $choix;
for ($i=0;$i<count($_POST['choix']);$i++){
$choix .= $_POST['choix'][$i];
}
$requete = $connection->prepare('SELECT * FROM membre_plus WHERE ID=:ID');
$requete->execute(array(':ID'=> $ID));
$resultat = $requete->fetchAll();
$nb_result = count($resultat);
if ($nb_result == 1){
foreach($_POST['choix'] as $liste){
$compte_plus = ('UPDATE membre_plus SET
type=:type,
jour=:jour,
mois=:mois,
annee=:annee,
sex=:sex,
tail=:tail,
poid=:poid,
signe=:signe,
ethni=:ethni,
yeux=:yeux,
cheveux=:cheveux,
sil=:sil,
fum=:fum,
choix=:choix,
detail_p=:detail-p WHERE ID=:ID');
$req_plus = $connection->prepare($compte_plus);
$req_plus->execute(array(':ID'=> $ID,':type'=>$type,
':sex'=>$sex,':jour'=>$jour,
':mois'=>$mois,':annee'=>$annee,
':tail'=>$tail,':poid'=>$poid,
':signe'=>$signe,':ethni'=>$ethni,
':yeux'=>$yeux,':cheveux'=>$cheveux,
':sil'=>$sil,':fum'=>$fum,
':choix'=>$liste,
':detail_p'=>$detail_p));[b][color=#FF0000] // ici l'erreur[/color][/b]
}
$compte_online = ('UPDATE online_site SET type=:type WHERE pseudo_site=:nom');
$req = $connection->prepare($compte_online);
$req->execute(array(':nom'=> $nom_update,
':type'=>$type));
$compte_membre = ('UPDATE membres SET type=:type WHERE pseudo=:nom');
$req = $connection->prepare($compte_membre);
$req->execute(array(':nom'=> $nom_update,
':type'=>$type));
header("Location: http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF'])."/m_profil.php?token=".$_SESSION['login']."");
exit();
}
}else{ /* Le pseudo */
$message_in = 'Soucis de connexion, contacter Webmaster.';
}
$compte = $connection->prepare('SELECT * FROM membre_plus WHERE nom=:nom');
$compte->execute(array(':nom'=>$nom));
while($result = $compte->fetch(PDO::FETCH_OBJ)){
?>
Voici l'erreur
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY093]: Invalid parameter number: parameter was not defined' in C:\Program Files\EasyPHP-5.3.8.1\www\source\m_profil.php:67 Stack trace: #0 C:\Program Files\EasyPHP-5.3.8.1\www\source\m_profil.php(67): PDOStatement->execute(Array) #1 {main} thrown in C:\Program Files\EasyPHP-5.3.8.1\www\source\m_profil.php on line 67