postgresql — PHP PDO возвращает true

Я пытаюсь извлечь некоторые данные из моей базы данных, но возвращается логическое значение (как и ожидалось), но потом, когда я пытаюсь варианты ->fetch()Я получаю ошибку Fatal error: Uncaught Error: Call to a member function fetch() on bool,

Почему-то похоже ->execute();-функция спасает бул, а не объект — я не уверен, почему. Я думаю, что я слепо смотрю на свой код?

Код

<?php
$cc = $pdo->prepare("SELECT country FROM quarter WHERE company_id = ? GROUP BY 1 ORDER BY country ASC")->execute([$_GET["id"]]);
#var_dump($cc);
var_dump($cc->fetch());
var_dump($cc->fetchAll(PDO::FETCH_COLUMN));
?>

Ожидаемый ответ

country
GB
NO

Актуальный ответ

Fatal error: Uncaught Error: Call to a member function fetch() on bool in [..]

0

Решение

execute() метод возвращается пока бул prepare() возвращается объект

Вы должны использовать fetch() метод самого объекта

$cc = $pdo->prepare("SELECT country FROM quarter WHERE company_id = ? GROUP BY 1 ORDER BY country ASC");

$cc->execute([$_GET["id"]]);
#var_dump($cc);
var_dump($cc->fetch());
4

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]