注意:尝试在C:\ xampp \ htdocs中获取非对象的属性

时间:2013-04-23 09:06:11

标签: php mysql

在执行此代码时,它会给出一条我不知道的错误消息。我做了goooooogle,但我找不到任何解决方案。

**注意:尝试在C:\ xampp \ htdocs中获取非对象的属性**

<?php
    $_REQUEST['PropertyID'];
    $_REQUEST['PropertyImageID'];
    $propertyImageID=$_GET['PropertyImageID'];
    $PropertyID=$_GET['PropertyID'];
    require_once('db.php');
    $propertyquery = "SELECT PropertyImageID, PropertyName, PropertyStatus, PropertyLocation, PropertyRegion FROM properties WHERE PropertyImageID =$propertyImageID";
     $propertyquery_run = $connection->query($propertyquery);
    if ($propertyquery_run-> num_rows > 0) 
    {
        while ($propertyrow = $propertyquery_run-> fetch_assoc()) 
          {
        $imagequery = "SELECT PropertyImageID, ImagePath FROM propertyimages WHERE PropertyImageID = $PropertyID";
         $imagequery_run = $connection->query($imagequery);       
    ?>
            <table style="margin-left:348px;">
    <tr><td>PropertyName:</td><td><span style="color:#0F0; font-weight:bold;"><?php echo htmlentities($propertyrow['PropertyName']) ?></span></td></tr>
    <tr><td>PropertyStatus:</td><td><span style="color:#0F0; font-weight:bold;"><?php echo htmlentities($propertyrow['PropertyStatus']) ?></span></td></tr>
    <tr><td>PropertyLocation:</td><td><span style="color:#0F0; font-weight:bold;"><?php echo htmlentities($propertyrow['PropertyLocation']) ?></span></td></tr>
    <tr><td>PropertyRegion:</td><td><span style="color:#0F0; font-weight:bold;"><?php echo htmlentities($propertyrow['PropertyRegion']) ?></span></td></tr>
            </table>
        <center>
    <?php 
                if($imagequery_run -> num_rows > 0)  
                {
                    while ($imagerow = $imagequery_run-> fetch_assoc())  
                    {
                    ?>
                       <div style="border:solid 2px #9F0; border-radius:5px; height:222px; width:544px;">
                       <img src="<?php echo htmlentities($imagerow['ImagePath'])  ?>" width="544" height="222" >
                       </div><br />    
                    <?php
                    }
                    }

                }
            }
    ?>

2 个答案:

答案 0 :(得分:1)

当您将非对象变量用作对象时,会出现此通知。 您可能在变量$a -> b上使用$a类似语法,而不是对象。

确保$propertyquery_run$imagequery_run ...是具有您正在使用的属性的对象。

编辑:

如果错误在$imagequery_run -> num_rows > 0。这意味着$imagequery_run不是具有num_rows属性的对象。也许它是NULL。在测试之前检查它的值。

$imagequery = "SELECT PropertyImageID, ImagePath FROM propertyimages WHERE PropertyImageID = $PropertyID";
$imagequery_run = $connection->query($imagequery);       
if(!$imagequery_run)
{
     // do what you want
}

答案 1 :(得分:1)

当查询字符串中出现逻辑错误并且$a->query()返回空对象时,就会发生这种情况。 确保您执行的查询字符串正确。