Mysql
 sql >> Datenbank >  >> RDS >> Mysql

mysqli_stmt::bind_param() [mysqli-stmt.bind-param]:Anzahl der Variablen stimmt nicht mit Anzahl der Parameter überein

$sql = 'INSERT INTO users (user_email, user_name, user_pref, user_password)
      VALUES(?, ?, ?, des_encrypt(substring(md5(rand()),1,8)))';

Definiert nur 3 Platzhalter, aber Sie versuchen, auf 4 Platzhalter zu schreiben.

$stmt->bind_param('ssss', $_POST['user_email'], $_POST['user_name'], $_POST['user_pref'], $_POST['user_password']);

Für jeden ? Sie in die vorbereitete SQL-Anweisung einfügen, müssen Sie eine Variable in bind_param übergeben.