Оптимальное решение для следующей / предыдущей функции в PHP / mySQL - PullRequest
1 голос
/ 22 марта 2011

Я хочу хорошее решение для следующего и предыдущего в PHP-скрипте. Первое, что я думаю, это то, что вы делаете это, когда идете дальше:

select id from table where id > '$_GET[id]' limit 1;

Но как мне узнать, нахожусь ли я на первой или последней записи? Я хочу скрыть следующую кнопку, если это последняя запись и т. Д. Тогда я думаю, что-то вроде этого:

select id from table where id > '$_GET[id]' limit 2;
if(mysql_num_rows($q) != 1) echo $nextButton;

Проблема с моим решением здесь, когда я на первой записи! Как я могу узнать, сколько записей у меня есть над одной, которую я выбираю? Есть ли простое и хорошее решение для этого или я должен использовать более одного запроса, чтобы выяснить это?

1 Ответ

2 голосов
/ 22 марта 2011

На самом деле вам нужно найти количество страниц на основе количества строк на странице, которую вы отображаете.Это поможет вам рассчитать смещение для подачи в ваше предложение LIMIT.

Вы можете найти учебник здесь

В качестве примечания:

Do NOT pass $ _GET ['id'] в ваш запрос SQL, как вы.Вы должны по крайней мере запустить mysql_real_escape_string () против него первым.

...