我正在尝试一段行为奇怪的代码。
我正在使用带有 JQuery masonry 插件的 Paul Irish 无限滚动来显示内容。
内容通过sql拉取,有固定数量,目前为20。
这意味着页面将从数据库中加载前 20 行内容,然后在向下滚动时加载接下来的 20 行。
我在几页上有这个功能,除了一页外它工作正常。
在此页面上,它不是加载最近的 20 个帖子,而是加载该特定字段中的每个帖子。有些有超过 5000 个帖子,所以它确实使页面崩溃。你可以想象的一个主要问题。
我一直在尝试调整代码以查找异常并将其范围缩小(我认为)到一个特定的部分。
这是在有效页面上使用的代码:
function index() {
$userID = false;
$order = false;
$limit = $this->config->item('pin_load_limit');
$page = $this->uri->segment(3, 1);
$nextOffset = ($page -1) * $limit;
$nextPage = $page +1;
$sql = "SELECT *
FROM
pins";
if ($userID)
$sql .= " WHERE
user_id= $userID ";
if ($order) {
$sql .= " ORDER BY
' $order'";
} else {
$sql .= " ORDER BY time DESC";
}
$sql .= " LIMIT $nextOffset,$limit";
$query = $this->db->query($sql);
if ($query->num_rows() > 0) {
$row = $query->result();
}
这是页面上不起作用的代码:
function getEachBoardPins($id,$limit=false)
{
$sql = "SELECT
*
FROM
pins
WHERE
board_id = $id
ORDER BY time DESC";
if($limit)
$sql .=" LIMIT 0 ,$limit" ;
$query = $this->db->query($sql);
return $query->result();
}
我知道这与引脚负载限制有关,但我尝试将代码添加到后者但没有成功。
也许这里有更多了解它的人可以提供一些更好的见解?