sql >> Database teknologi >  >> RDS >> Mysql

MySQLi opdatering forberedt erklæring opdaterer ikke database

Du behøver ikke at undslippe dine variabler i en forberedt sætning, i stedet skal du binde dine variabler, før du udfører sætningen. Også kolonnenavnene skal være inden for `-mærker.

$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();

Jeg har ikke inkluderet alle de bundne parametre for kortheds skyld.

Håber dette hjælper.




  1. mysql-forespørgsel for at opdatere felt til max(felt) + 1

  2. MySQL-konverteringsfunktion

  3. Hvordan afrundes REAL type til NUMERISK?

  4. Valg af de seneste MySQL-rækker med MAX(tid) WHERE tid <=x