我正在学习PDO并尝试进行查询:
$stmt = $conn->prepare("SELECT * FROM hallinta
WHERE username = :user AND hash = :hash");
$stmt->bindParam(':user', $myusername);
$stmt->bindParam(':hash', $hash);
$stmt->execute();
$count = $stmt->rowCount();
while($row = $stmt->fetch()) {
$r=$row["hash"];
}
只有一个WHERE语句可以正常工作,但当两个:user和:hash都在查询中时我会收到错误
错误:SQLSTATE [42000]:语法错误或访问冲突:1064 SQL语法中有错误;检查与MySQL服务器版本对应的手册,以便在“第1行”附近使用正确的语法
查询有什么问题?
答案 0 :(得分:0)
出于一些非常奇怪的原因,您省略了错误消息中最有意义的部分,它实际上指出了错误。
但是,这不是PDO错误,而是SQL错误。您应该首先在控制台中测试您的查询,然后在PDO中仅使用经过测试的查询。
此外,您必须更加关注所运行的查询。您在此处发布的文件中没有语法错误。