我的$ query-> fetch()不起作用

时间:2011-03-08 22:51:34

标签: php pdo

在评论后编辑了问题。它仍然不起作用。

你好,

我正在尝试学习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 :(得分:0)

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。