无法返回PDO查询结果:未定义的变量

时间:2014-05-04 20:23:36

标签: php pdo

我无法从以下PDO查询中输出结果。当我尝试处理结果数组时,我留下了一个" 注意:未定义的变量:资产在... "错误信息。

我尝试了很多功能和输出,但无法使其正常工作。我在这里错过了什么吗?

QUERY

function getAssets() {
global $dbc;
$query = "SELECT * FROM assets ORDER BY company ASC";
try {
    $statement = $dbc->prepare($query);
    $statement->execute();
    $assets = $statement->fetchAll();
    $statement->closeCursor();
    return $assets;
} catch (PDOException $e) {
    $error_message = $e->getMessage();
    display_db_error($error_message);
}
}

观点

//call function
getAssets();

//display the results
foreach($assets as $asset) {
echo '<tr><td><b>Region:</b></td><td>'.$asset['company'].'</td></tr>';
}

我使用

测试了数组
print_r($assets);

它会打印整个数组,但循环会很有用。我也尝试将数据作为对象获取无效。

谢谢! ... 并感谢不要对全局变量充满诗意:)

1 个答案:

答案 0 :(得分:1)

$ assets是函数中的局部变量。要在函数外部使用它,你必须返回它(你做)将该结果分配给循环范围内的变量:

//call function and use it's result.
$assets = getAssets();