Я пытаюсь запустить простой запрос с PDO в PHP. Код очень прост:PDO fetch всегда возвращает false в PHP
try {
$sql_query = "select * from Articles where title=':article'";
$dbh = get_PDO_connection();
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $dbh->prepare($sql_query);
$stmt->execute(array(':article' => "MD Example"));
var_dump($stmt);
$row = $stmt->fetch();
//if($row==null)return 'null';
var_dump($row);
} catch (PDOException $e) {
print $e->getMessage();
}
var_dump($stmt)
всегда печатает:
object(PDOStatement)#3 (1) { ["queryString"]=> string(45) "select * from Articles where title=':article'" }
... независимо от того, что я вкладываю в execute()
, без исключений брошенными. И, как указано в заголовке, fetch()
всегда возвращает false. Вы должны знать, что если я «жестко запрограммирую» SQL-запрос в строке, все это прекрасно работает. Другими словами, если я установил $sql_query
в «select * from Articles, где title = 'MD Example», то fetch()
возвращает ожидаемые результаты. Что тут происходит?
Возможно, самый быстрый ответ, который я получил здесь. Я приму это, как только 10-минутное ожидание закончится. – Hassan