“试图获取非对象的属性”

时间:2018-08-01 17:12:30

标签: php sql database dynamic html-table

我目前正在尝试使用PHP使用以下代码显示表:

$sqlQ = 'SELECT w_Continent.ID, w_Continent.NAME, w_Country.Name, w_Country.Continent
    FROM w_Continent JOIN w_Country 
    ON w_Continent.ID = w_Country.Continent
    ;';

$stmtRow = $db->query($sqlQ); //execute sql query
while ($rowOne = $stmtRow->fetchObject()) {
    ?>
    <tr>
        <td><?php echo $sqlQ->Name;?></td>
        <td><?php echo $sqlQ->Name;?></td>
    </tr>
    <?php

但是,当测试所说的PHP代码时,我在浏览器上收到一个错误,该错误替换了应该显示的数据行,并且显示为:

  

注意:试图获取(目录名称)中非对象的属性

2 个答案:

答案 0 :(得分:2)

应该为$rowOne->Name而不是$sqlQ->Name

$sqlQ只是一个字符串,不包含查询结果

答案 1 :(得分:0)

您正在查询失败,并且返回false导致上述错误

    $sqlQ = 'SELECT w_Continent.ID, w_Continent.NAME, w_Country.Name, w_Country.Continent FROM w_Continent JOIN w_Country ON w_Continent.ID = w_Country.Continent';
            $stmtRow = $db->query($sqlQ); //execute sql query
            while ($rowOne = $stmtRow->fetchObject()) {
                ?>
<tr>
    <td><?php echo $rowOne->Name;?></td>
    <td><?php echo $rowOne->Name;?></td>
</tr>
<?php

将查询更改为上面的一项并进行检查。请注意,分号(;)已删除。