Php mysqli插入语句错误

Php mysqli插入语句错误,php,sql,mysqli,insert,Php,Sql,Mysqli,Insert,只是更新我的mysql连接等等来使用这个mysqli实现。 我正在尝试运行下面的代码 与数据库的连接很好,可以正常工作,何时替换?对于真正的价值,它是有效的。有人能帮我纠正下面的错误吗 谢谢 守则: $sql = "INSERT INTO customers (cap_login, cap_pword, title, firstname, lastname, email) VALUES (?,?,?,?,?,?)"; echo $sql; $stmt = $db->prepare($sq

只是更新我的mysql连接等等来使用这个mysqli实现。 我正在尝试运行下面的代码

与数据库的连接很好,可以正常工作,何时替换?对于真正的价值,它是有效的。有人能帮我纠正下面的错误吗

谢谢

守则:

$sql = "INSERT INTO customers (cap_login, cap_pword, title, firstname, lastname, email)
VALUES (?,?,?,?,?,?)";
echo $sql;

$stmt = $db->prepare($sql);
$stmt->bind_param($username, $pass_hash, $title, $firstname, $lastname, $email);
$stmt->execute();
$stmt->close();
错误:

Warning: mysqli_stmt::bind_param(): Number of variables doesn't match number of parameters in prepared statement in....
我重复了sql语句,得到了以下结果:

INSERT INTO customers (cap_login, cap_pword, title, firstname, lastname, email) VALUES (?,?,?,?,?,?)

在使用函数之前,必须先读取

bind_param ( string $types , mixed &$var1 [, mixed &$... ] )
                    ^^^^^^

因此,第一个参数必须是一个字符串,如mysqli\u stmt的语法:

mysqli_stmt::bind_param ( string $types , mixed &$var1 [, mixed &$... ] )
您没有指定变量的类型

试一试


首先指定类型,然后传递变量,即
$stmt->bind_param(“ssss”、$username、$pass_hash、$title、$firstname、$lastname、$email)见哦。。是的,在PDO中,我们初始化一个PDO对象。无论如何,谢谢你:)
$stmt->bind_param("ssssss",$username, $pass_hash, $title, $firstname, $lastname, $email);