我一直在将我的网站从不受保护的mysql查询改写为mysqli预准备语句,并且一切进行得很顺利,直到得到此结果为准备语句中的参数没有提供数据。没有提供准备好的语句中的参数的数据MySQLi PHP
我已经研究过它无济于事,我正在请求这个社区的盲目迷人来帮助我。
if(empty($err)) {
$pSETQuery = NULL;
if(!empty($_POST['password'])) {
$pSETQuery .= ", password = ?";
}
if($session->isSuperuser()) {
$pSETQuery .= ", usertype = ?";
}
if(!($stmt = $database->prepare("UPDATE user SET username = ?, email = ? $pSETQuery WHERE UserId = ?"))) {
$err[] = "PREPARE FAILED.";
}
$stmt->bind_param("s", $_POST['username']);
$stmt->bind_param("s", $_POST['email']);
if(!empty($_POST['password'])) {
$stmt->bind_param("s", $_POST['password']);
}
if($session->isSuperuser()) {
$stmt->bind_param("s", $_POST['usertype']);
}
$stmt->bind_param("i", $_POST['userid']);
if(!$stmt->execute()){
$err[] = "Execute failed. ERROR: " . $stmt->error;
}
}
问候, 哈利
任何帮助,将不胜感激,需要一个快速的答案,将接受它,如果它是值得的。 – PwnageAtPwn