PHP SQL 只返回一个结果

PHP SQL Returning only one result

我正在尝试将我的网站从我的本地 wamp 项目迁移到我的实时服务器进行测试,在我的本地站点上一切正常,但在我的实时站点上,以下代码只有 returns 一个结果。肯定有多个SQL条目满足sql查询条件。有什么建议吗?

$opentickets = $db->query("SELECT tID, id, date, userid, category, department FROM ticket WHERE userid = '$_SESSION[id]' AND status='Open'");

if(count($opentickets) > 0) {
echo "<h2>Your open tickets:</h2>";
echo "<table class='table table-striped'>
    <tr>
    <th>Ticket</th>
    <th>Date Submitted</th>
    <th>Category</th>
    <th>Department</th></tr>";
$o = $opentickets->fetch(PDO::FETCH_ASSOC);
echo "<tr><td><a href='ticket.php?id=" . $o['tID'] . "'>" . $o['tID'] . </td>";
echo "<td>" . $o['date'] . "</td>";
echo "<td>" . $o['category'] . "</td>";
echo "<td>" . $o['department'] . "</td></tr>";
echo "</table>";
 }
else
{
echo "<h2>You have no open tickets</h2>";
}

您不是在迭代查询结果,您只是在获取第一行...

请参考 PHP Website 上的示例以了解如何执行此操作。

我刚刚更改了下面的代码,请查看手册以获取更多信息

while($o = $opentickets->fetch(PDO::FETCH_ASSOC)){
        echo "<tr><td><a href='ticket.php?id=" . $o['tID'] . "'>" .$o['tID'] . </td>";
        echo "<td>" . $o['date'] . "</td>";
        echo "<td>" . $o['category'] . "</td>";
        echo "<td>" . $o['department'] . "</td></tr>";
}