我想知道为什么我的 PDO 语句返回 1 行但是当我将它分配给一个变量时数据是空的。
我有这个:
$stmt = $pdo->prepare("SELECT count(uid) AS total,uid FROM accounts WHERE username = ? AND pass = ?");
try {
$stmt->execute(array($temp[0],$temp[1]));
} catch (PDOException $e) {
echo $e -> getMessage(); exit;
}
$row = $stmt -> fetch();
if(!$row['total']){
echo json_encode(0);
} else {
$_SESSION['userData'] = $stmt->fetchAll(PDO::FETCH_ASSOC);
echo json_encode($_SESSION['userData']);
}
当我回显会话时,它会返回[]
是因为我在 fetchAll 之前进行了 fetch 吗?如果是这样,我该如何更改它以防止该问题?