2012-02-01 7 views
2

Мне нужно написать скрипт на PHP, который будет отображать 20 миниатюр за раз, и если вы нажмете на один из миниатюр, он будет настраиваться, чтобы отобразить диапазон 20 миниатюр с выбранным в центре. В базе данных MySQL есть сотни эскизов, поэтому необходимо найти запись и отобразить 9 записей до и 10 записей после.Thumbnail Pagination ideas

Идея, которую я имел, включает в себя 3 отдельных запроса MySQL. Один, чтобы получить выбранный большой палец, один, чтобы получить их раньше и один, чтобы получить эскизы после.

Как это сделать только с одним запросом? Основное поле базы данных моей миниатюры является алфавитным, поэтому нет числа, связанного с записью, но я мог бы добавить поле идентификатора целого числа, если нужно.

+0

Я предполагаю, что это всего лишь 2 запроса, так как у меня уже есть выбранный значок из URL. Но я все еще думаю, что это можно сделать с помощью 1 запроса. –

ответ

1

Вы должны использовать лимит, чтобы компенсировать результат ваших запросов. С этим и простым подсчетом (чтобы получить общие элементы в таблице) вы должны иметь право направить свои страницы правильно =).

Вот ссылка:

http://dev.mysql.com/doc/refman/5.1/en/select.html

http://dev.mysql.com/doc/refman/5.1/en/counting-rows.html

Кроме того, я нашел этот полезный PHP/MySQL подкачки учебник, который использует предел

http://www.php-mysql-tutorial.com/wikis/php-tutorial/paging-using-php.aspx

вам нужно только выровнять 9 эскизов и показать 20 записей, чтобы получить желаемое значение зультаты.

удачи!

+0

Хорошо, я планировал использовать Limit, но я думал не так. Простые вычисления могли бы получить меня в центре. Lol, я здесь до кофе, спасибо ... –

+0

У всех нас есть моменты предварительного кофе = D – dabito

+0

Я думаю, что я обнаруживаю, что в этом случае лучше идти вперед и использовать два запроса, потому что альтернативы помедленнее. Я нашел это у кого-то, у кого была такая же проблема. http://forums.mysql.com/read.php?52,197366,197366#msg-197366 –