我正在尝试为登录我的网站的用户检索正确的user_id
...
$result = $conn->prepare("SELECT * FROM users WHERE email_address= :em AND password= :pw");
$result->bindParam(':em', $user);
$result->bindParam(':pw', $password);
$result->execute();
$rows = $result->fetch(PDO::FETCH_NUM);
if($rows > 0) {
$_SESSION['loggedin'] = 1;
$_SESSION['uid'] = $rows['user_id'];
}
我想获取相关的 user_id,我尝试使用 $rows['user_id'];
来获取相关的 user_id,但没有成功...
最佳答案
您应该使用 PDO::FETCH_ASSOC
而不是 PDO::FETCH_NUM
当没有更多结果时,fetch
返回 false,所以你应该这样做:
$result->execute();
if ($row = $result->fetch(PDO::FETCH_ASSOC)) {
$_SESSION['loggedin'] = 1;
$_SESSION['uid'] = $rows['user_id'];
}
关于php - 使用 PHP 从 MySQL 表中获取 1 个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22057060/