Видях кода ви в друг отговор и бих препоръчал да използвате LIMIT функционалността в MySql, вместо да компенсирате стойностите. Пример:
SELECT * FROM all_posts ORDER BY post_id DESC LIMIT '".(((int)$page)*5)."',5
Това просто ще вземе номер на страница в AJAX заявката и автоматично ще получи отместването. Това е една последователна заявка и работи независимо от последните резултати на страницата. Изпратете нещо като page=1 или page=2 във вашия jQuery код. Това може да стане по няколко различни начина.
Първо, пребройте броя на елементите, конструирани на страницата, и разделете на броя на страницата. Това ще даде номер на страница.
Второ, можете да използвате jQuery и да свържете номера на текущата страница към тялото:
$(body).data('page', 1)
Увеличете го с едно при всяко зареждане на страница.
Това наистина е по-добрият начин, защото използва една заявка за всички операции и не изисква много информация за данните, които вече са на страницата.
Единственото нещо, което трябва да се отбележи, е, че тази логика изисква заявката за първа страница да бъде 0, а не 1. Това е така, защото 1*5 ще се оценява на 5, пропускайки първите 5 реда. Ако е 0, той ще се оцени до 0*5 и ще пропусне първите 0 реда (тъй като 0*5 е 0).
Кажете ми всички въпроси, които имате!