我正在尝试从下面的代码段中获取结果,但是没有返回任何结果。 $stmt->execute(array(id))
未按预期运行。 它似乎在其他代码段中工作正常,我已经比较了它们,没有看到任何差异。
$stmt = $mysql->dbh->prepare("SELECT * FROM keys WHERE type = ?");
if($stmt->execute(array($id))) {
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
echo $row["price"];
}
}
谢谢
keys
是一个MySQL保留字
- http://dev.mysql.com/doc/refman/5.5/en/reserved-words.html
要么用反引号包装它,要么使用它的其他名称。
只是不要将其重命名为 key
.这也是一个MySQL保留字。
SELECT * FROM `keys`
使用错误异常会抛出错误。
打开连接后立即添加setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION)
(如果尚未添加
咨询:http://php.net/manual/en/pdo.error-handling.php
- 假设您已经建立了成功的数据库连接。