注意:尝试获取非对象的属性

时间:2018-02-26 06:05:39

标签: php mysql mysqli

我面临一些问题,并获得通知获取非对象的属性,请参阅代码

<?php 
$sql = "SELECT countt FROM diary where created='".date('Y-m-d')."' AND user_id='".$_SESSION['user']['id']."'";
        $result = mysqli_query($db, $sql);
        if ($result->num_rows>0) {
        while($row = mysqli_fetch_assoc($result)) {
              $te = $row['countt'];
        }
        } else {
    $te = 0;
            }
?>

当代码执行期间上层代码运行错误时

  

注意:尝试在C:\ wamp \ www \ Coding中获取非对象的属性   文件\ diary.php在这一行的第4行

if ($result->num_rows>0)

1 个答案:

答案 0 :(得分:0)

您的查询失败,您应该

change()

您正在使用MYSQLI 过程面向对象,您应该避免这样做以简化代码维护。

将此if (!$result) { die('Error: ' . mysqli_error($db)); } 替换为此if ($result->num_rows>0)

  

注意:您应该使用预准备语句来避免SQL注入。

参考,How to use prepared statement with MYSQLI Procedural and OO