过去半小时我一直在玩弄这个,并且无法弄清楚我的生活有什么不妥。
自从我将这个添加到我的PHP文档后,我得到一个空白页面。注意,它在PDO上失败了。我无论如何都不是PDO的新手,但由于某种原因,这种失败让我很难过。所有数据都与数据库相关联。
页面返回空白,错误日志中没有错误。
$value = "9EED4A5E4A54DC41195C8949C87ABA5FD6C035CD795188E179F9EF76FC7154FF";
if (!empty($_COOKIE['hash'])){
$dbuser = "user";
$dbpass = "pass";
$dbh = new PDO('mysql:host=localhost;dbname=dbname', $dbuser, $dbpass);
$stmt = $dbh->query('SELECT id FROM users WHERE hash = :hash');
$stmt->bindParam(':hash', $value);
$_SESSION['userid'] = $stmt->fetchColumn();
}
请注意,Cookie是在上一页中设置的。 if语句有效,而不是专业
答案 0 :(得分:2)
query
立即执行查询。您要使用的方法是prepare
。在绑定参数后,您还需要调用execute
。
$stmt = $dbh->prepare($query);
$stmt->bindParam(":hash", $value);
$stmt->execute();
如果PDO失败,您可能还应该为其启用错误报告。
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);