所以我想使用html表单更新mysql数据库中的一些用户数据,但是提醒的数字总是0.但是在phpmyadmin中使用命令它正在工作。 也许准备声明对我的参数做错了什么?
function updateUser($newemail, $name, $email) {
$stmt = $this->db->prepare("update user set name=:name, email=:newemail where email=:email");
$stmt->bindValue(":newemail", $newemail, PDO::PARAM_STR );
$stmt->bindValue(":name", $name, PDO::PARAM_STR );
$stmt->bindValue(":email", $email, PDO::PARAM_STR );
$stmt->execute();
$x =$stmt->rowCount();
echo "<script>alert($x);</script>";
}
我正在调用这个函数。所以他们新的变量必须是不同的:
if( (strcmp($newemail,$email) != 0) || (strcmp($newname,$name)!= 0) ){
$this->db->updateUser($newemail, $name, $email);
}
答案 0 :(得分:0)
您正在使用错误的名称变量调用该函数。您使用旧名称而不是新名称,因此不会更改名称。
if( (strcmp($newemail,$email) != 0) || (strcmp($newname,$name)!= 0) ){
$this->db->updateUser($newemail, $newname, $email);
}