public function StoreUserInfo($sid, $name, $email, $password, $ktp, $gender) {
$hash = $this->hashFunction($password);
$encrypted_password = $hash["encrypted"];
$salt = $hash["salt"];
$stmt = $this->conn->prepare("UPDATE user SET name = $name , email = $email , encrypted_password = $encrypted_password , salt = $salt, ktp = $ktp , gender = $gender WHERE sid = '$sid'");
$stmt->bind_param("sssssss", $sid, $name, $email, $encrypted_password, $salt, $ktp, $gender);
$result = $stmt->execute();
$stmt->close();
if ($result) {
$stmt = $this->conn->prepare("SELECT name, email, encrypted_password, salt, ktp, gender FROM user WHERE sid = $sid");
$stmt->bind_param("s", $sid);
if ($stmt === FALSE) {
die($mysqli->error);}
$stmt->execute();
$stmt-> bind_result($token1,$token2,$token3,$token4,$token5,$token6,$token7);
while ( $stmt-> fetch() ) {
$user["sid"] = $token1;
$user["name"] = $token2;
$user["email"] = $token3;
$user["ktp"] = $token6;
$user["gender"] = $token7;
}
$stmt->close();
return $user;
} else {
$response["error"] = TRUE;
$response["error_msg"] = "Unknown error occurred in input!";
echo json_encode($response);
return false;
}
}
我有这个代码和错误显示
致命错误:
bind_param()
在第 7 行中调用boolean 上的成员函数
我不应该prepare()
在 UPDATE 上使用吗?
但是当我删除它时,它在第 13 行显示相同的错误
那我需要bind_param()
对吗?
我应该怎么办 ?
顺便说一下,我的输入在表中更新,但我想检查它并返回true。
您正在以错误的方式使用准备/绑定...
mysqli_
无名版本:$stmt = $this->conn->prepare('UPDATE user
SET name = ?,
email = ? ,
encrypted_password = ? ,
salt = ?,
ktp = ?,
gender = ?
WHERE sid =?');
$stmt->bind_param("sssssss",
$name,
$email,
$encrypted_password,
$salt,
$ktp,
$gender,
$sid
);
$result = $stmt->execute();
$stmt = $this->conn->prepare('UPDATE user
SET name = :name,
email = :email ,
encrypted_password = :encrypted_password ,
salt = :salt,
ktp = :ktp,
gender = :gender
WHERE sid =:sid');
// $stmt->bind_param("sssssss", $sid, $name, $email, $encrypted_password, $salt, $ktp, $gender);
$result = $stmt->execute(array(
':name'=>$name,
':email'=>$email,
':encrypted_password'=>$encrypted_password,
':salt'=>$salt,
':ktp'=>$ktp,
':gender'=>$gender,
':sid'=>$sid,
)
);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句