Mysql
 sql >> Base de données >  >> RDS >> Mysql

MySQLi met à jour l'instruction préparée ne mettant pas à jour la base de données

Vous n'avez pas besoin d'échapper vos variables dans une instruction préparée, vous devez plutôt lier vos variables avant d'exécuter l'instruction. De plus, les noms de colonne doivent être entre les marques `.

$stmt = $dbConnectionW->prepare("UPDATE members SET 
                      `fname`=?,
                      `sname`=?,
                      `gender`=?,
                      `nationality`=?,
                      `year`=?,
                      `dep1`=?,
                      `dep2`=?,
                      `f_pos`=?,
                      `f_region`=?,
                      `exp_comp`=?,
                      `exp_dep`=?,
                      `shareinfo`=?,
                      `interest`=?,
                      `userconfirm`=?
                          WHERE `confirmcode`=?");
$stmt->bind_param('ssssissssssssis',$_POST['fname'],$_POST['sname'],$_POST['gender'],...);          
$stmt->execute();

Je n'ai pas inclus tous les paramètres liés par souci de concision.

J'espère que cela vous aidera.