我正在使用教程设置用户配置文件系统,但遇到了这个PHP错误。
//第一行是给出错误的那一行
$sql = "SELECT * FROM users";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo '<hr />';
echo '<table>';
echo '<tr><td>ID:</td><td>'.$row["id"].'</td></tr>';
echo '<tr><td>Avatar:</td><td><img src="'.$row["avatar"].'" width="100px" /></td></tr>';
echo '<tr><td>Firstname:</td><td>'.$row["firstname"].'</td></tr>';
echo '<tr><td>Lastname:</td><td>'.$row["lastname"].'</td></tr>';
echo '<tr><td>Country:</td><td>'.$row["country"].'</td></tr>';
echo '</table>';
}
}
else {
echo "0 results";
}
}
答案 0 :(得分:1)
使用$ result-> num_rows()替换$ result-> num_rows。因为它是一个功能。我希望这对您有用。
$result->num_rows()
答案 1 :(得分:1)
尝试一下
if ($result && ($result->num_rows() > 0))
{
while($row = $result->fetch_assoc())
{
echo '<hr />';
echo '<table>';
echo '<tr><td>ID:</td><td>'.$row["id"].'</td></tr>';
echo '<tr><td>Avatar:</td><td><img src="'.$row["avatar"].'" width="100px" /></td></tr>';
echo '<tr><td>Firstname:</td><td>'.$row["firstname"].'</td></tr>';
echo '<tr><td>Lastname:</td><td>'.$row["lastname"].'</td></tr>';
echo '<tr><td>Country:</td><td>'.$row["country"].'</td></tr>';
echo '</table>';
}
}
else {
echo "0 results";
}
答案 2 :(得分:0)
当您没有任何结果时,可能会发生此错误,因此,您尝试获取空对象的属性。如上所述,首先,您应确保$ results不为空。代替:
if ($result->num_rows > 0) {
尝试:
if ($result && ($result->num_rows > 0)) {
答案 3 :(得分:0)
$lclQuery = "SELECT * FROM users";
$result = $con->query($lclQuery);
if($result->rowCount() > 0) {
while($row = $result->fetch_assoc()) {
echo '<hr />';
echo '<table>';
echo '<tr><td>ID:</td><td>'.$row["id"].'</td></tr>';
echo '<tr><td>Avatar:</td><td><img src="'.$row["avatar"].'" width="100px" /></td></tr>';
echo '<tr><td>Firstname:</td><td>'.$row["firstname"].'</td></tr>';
echo '<tr><td>Lastname:</td><td>'.$row["lastname"].'</td></tr>';
echo '<tr><td>Country:</td><td>'.$row["country"].'</td></tr>';
echo '</table>';
}
}
else {
echo "0 results";
}
使用如上。上面的代码肯定有效。