我在db中有一个表,作为“预订”,我试图根据表中的选定电子邮件来打印表的特定列。

但是当我通过id链接传递电子邮件时,它给出了Trying to get property of non-object错误

我的html链接如下:

<td><a href='some.php?id=<?php echo $row2['email'];?>'>Know more</a></td>


然后some.php页面如下:

<?php
    $sql2 = "SELECT * FROM bookings WHERE email =" .$_GET["id"];
    $result2 = $conn->query($sql2);
    if ($result2->num_rows > 0) {
    while($row2 = $result2->fetch_assoc()) {
?>
    <tr >
        <td><?php echo ($row2["user"]); ?></td>
        <td><?php echo ($row2["location"]); ?></a></td>
        <td><?php echo ($row2["bookedat"]); ?></td>
        <td><?php echo ($row2["stay"]); ?></td>
    </tr>
<?php     }
    } else {
echo "0 results";
            }
?>


现在,电子邮件已正确传递。我已经检查过了。但是当涉及到php页面时。它给出了错误Notice: Trying to get property of non-object in D:\xampp\htdocs\some.php on line 186在这里,行186是if ($result2->num_rows > 0) {

任何帮助表示赞赏。

最佳答案

查询问题:

 $sql2 = "SELECT * FROM bookings WHERE email " .$_GET["id"];

假设变更
$sql2 = "SELECT * FROM bookings WHERE email ='" .$_GET["id"]."'";

或更好地使用参数化查询:
$sql2 = "SELECT * FROM bookings WHERE email = ?" ;

并在之后设置参数$ _GET [“ id”],然后再次检查$ _GET [“ id”]是否具有某些值。

07-24 09:38
查看更多