【发布时间】:2013-05-17 20:20:30
【问题描述】:
只需更新我的 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 (?,?,?,?,?,?)
【问题讨论】:
-
先指定类型,然后传递变量,即
$stmt->bind_param("ssssss",$username, $pass_hash, $title, $firstname, $lastname, $email);见php.net/manual/en/mysqli-stmt.bind-param.php