0

当您滚动到页面底部时,我尝试使用 AJAX 从我的数据库中提取结果,但是我的前 4 个结果被复制并放置在页面底部,然后由于某些未知原因实际上没有出现另外 4 个结果: / 有人能看出我的查询有什么问题吗?

    // If county isnt set, show all data
    $sth = $conn->prepare("SELECT * FROM directory WHERE user_active != ''ORDER BY Date DESC LIMIT 12");
    $sth->execute(array(':county' => $county));

    $c = 1;
    while ($row = $sth->fetch(PDO::FETCH_ASSOC)) {
        echo '<div class="entry';
             if (($c % 4) == 1) echo ' alpha ';
             echo ' span3"><span class="name">' . $row['First_Name'] . ' ' . $row['Surname'] . "</span>";
             echo MORE STUFF HERE IS OUTPUT 
        $c++;
    }

我注意到如果我删除查询限制,所有结果都正确显示吗?

4

1 回答 1

0

听起来您正在尝试进行基于 AJAX 的分页。我想这里的问题是您没有在LIMIT子句中指定偏移量。按照您现在的操作方式,您将始终从查询中获得相同的 12 个结果(当然假设表数据没有更改)。您可能需要做的是这样指定您的LIMIT

LIMIT <offset>, <number of records>

因此,如果您想获得前 12 条记录,它将是:

LIMIT 0, 12

接下来的 12 个将是:

LIMIT 12, 12

等等...

于 2013-01-09T21:46:28.213 回答