bind_param错误

时间:2011-07-13 17:31:13

标签: php mysql

这是我的错误:

  
    
      

警告:mysqli_stmt :: bind_param()[mysqli-stmt.bind-param]:变量数与/Applications/XAMPP/xamppfiles/htdocs/Jil/benutzer_eintragen.php中预准备语句中的参数数量不匹配第19行

    
  

这是我的代码

$sql = "INSERT INTO benutzer SET vorname='?', nachname='?', username='?', email='?', passwort='?';";
$stmt = $db->prepare($sql);
$stmt->bind_param("sssss", $vorname, $nachname, $username, $email, $passwort);
$stmt->execute();

2 个答案:

答案 0 :(得分:6)

我认为您需要消除声明中的引号:

$sql = "INSERT INTO benutzer SET vorname=?, nachname=?, username=?, email=?, passwort=?;";

答案 1 :(得分:2)

您不需要SQL语句中?周围的引号。

此外,您的SQL语句不正确。 SET仅与UPDATE一起使用,INSERT使用VALUES

$sql = "INSERT INTO benutzer(vorname,nachname,username,email,passwort) VALUES (?,?,?,?,?)";

<击>

$sql = "INSERT INTO benutzer SET vorname=?, nachname=?, username=?, email=?, passwort=?";
$stmt = $db->prepare($sql);
$stmt->bind_param("sssss", $vorname, $nachname, $username, $email, $passwort);
$stmt->execute();