提问人:thatguyy 提问时间:7/26/2020 更新时间:7/26/2020 访问量:57
如何从数据库中获取价值
How to get value from database
问:
我正在创建一个社交网络。用户可以拥有经过验证的帐户。如果该列的值为 1,则表示用户已通过验证,我想回显 .如果值为 0,我想回显 .我有一个假设获取所有这些数据的方法和一个应该回显该方法给出的内容的对象。但是即使值显示 1,它也会继续回响。有人可以告诉我怎么了?verified_user
verified
not verified
Not verified
public function verifiedUser($user_to) {
$query = $this->con->prepare("SELECT verified_user FROM users WHERE username = ?");
$query->bind_param("s", $this->user['username']);
$query->execute();
$query->bind_result($verified_user);
$query_result = $query->get_result();
if ($verified_user == 1) {
return true;
} else {
return false;
}
}
if($logged_in_user_obj->verifiedUser($username)) {
echo "Verified";
} else{
echo "Not Verified";
}
我也尝试过,但这给了我现在得到的相同结果。num_rows
答:
0赞
Dharman
7/26/2020
#1
您需要使用存储在变量中的结果,或者通过绑定到变量并获取它来获取实际值。$query_result
如果你想使用,那么请执行:get_result()
public function verifiedUser(string $user_to): bool {
$query = $this->con->prepare("SELECT verified_user FROM users WHERE username = ?");
$query->bind_param("s", $user_to);
$query->execute();
$query_result = $query->get_result();
$row = $query_result->fetch_assoc();
if ($row && $row['verified_user'] == 1) {
return true;
}
return false;
}
如果要使用,请执行以下操作:bind_result
public function verifiedUser(string $user_to): bool {
$query = $this->con->prepare("SELECT verified_user FROM users WHERE username = ?");
$query->bind_param("s", $user_to);
$query->execute();
$query->bind_result($verified_user);
$query->fetch();
return $verified_user == 1;
}
评论
0赞
thatguyy
7/26/2020
我刚刚尝试了它们两个,现在它说已验证,即使我没有经过验证
0赞
Dharman
7/26/2020
的值是多少?的值是多少?您确定您选择了正确的记录吗?$verified_user
$user_to
0赞
thatguyy
7/26/2020
是的,我是积极的。 它只能保持的值是 或verified_user
tinyint(1)
0(false)
1(true)
0赞
thatguyy
7/26/2020
明白了。它为我提供了当前登录用户的值。我正在尝试检查是否有任何用户在其个人资料上经过验证
0赞
Dharman
7/26/2020
然后,您需要提供一个不同的参数来verifiedUser()
评论
$user_to
var_dump($verified_user)
$username
$query->bind_param("s", $user_to);
return (bool) $verified_user