Я пытаюсь сегментировать код, который ведет себя странно.Бесконечный свиток для элементов sql
Я использую бесконечный свиток Поля Ирландии с плагином для кладки JQuery для отображения содержимого.
Содержание вытягивается 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();
}
Я знаю, что это делать с но я попытался добавить код к последнему без успеха.
Возможно, кто-то здесь, кто знает больше об этом, может дать некоторое понимание?
Я понял, что вы имеете в виду, но я также попытался поместить переменную $ limit в инструкцию без предложения if, и она по-прежнему тянет каждую строку, а не последнюю 20. –
Я неправильно понял. Когда я добавляю второй параметр, определяемый как: $ limit = $ this-> config-> item ('pin_load_limit'); Страница загружает только 20. Что такое 'pin_load_limit', но больше не прокручивается. –