Мой $ query-> fetch () не работает - PullRequest
0 голосов
/ 09 марта 2011

Вопрос отредактирован после комментариев. Это все еще не работает.

Привет,

Я пытаюсь узнать, как работает PDO, но мой сценарий:

$database = new PDO('mysql:host=localhost;dbname=***', '***', '***');
$query = $database->prepare("SELECT nombre, 
                                    tecnica,
                                    tamanno,
                                    estado FROM obra WHERE anno = ?");
$query->execute(array('2009'));
while ($item = $query->fetch(PDO::FETCH_ASSOC)) {
    $item['nombre'];
}

Ничего не печатает. Если я сделаю:

var_dump($query->fetch())

Я получаю bool (false) . Прочитав много примеров, я не могу понять, что я делаю неправильно.

Заранее спасибо.

1 Ответ

0 голосов
/ 10 марта 2011
while ($item = $query->fetch(PDO::FETCH_ASSOC)) {
    $item['nombre'];
}

Ничего не печатает.

Это потому, что вы ничего не делаете с $item['nombre'].Попробуйте:

while ($item = $query->fetch(PDO::FETCH_ASSOC)) {
    print_r($item);
}

Вы должны получить ожидаемый результат.

Если нет, попробуйте добавить это до ваше соединение будет открыто:

PDO::setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

и убедитесь, что для display_errors установлено значение true.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...