Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Pagination шаг за шагом, Помогите пожалуйста разобраться 
V
    Опции темы
insy
Дата 4.10.2009, 17:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 140
Регистрация: 21.9.2008
Где: Saratov

Репутация: нет
Всего: нет



Доброго времени суток, помогите пожалуйста разобраться как работает pagination... именно шаг за шагом, короткий алгоритм! Можно на примере CI или просто на голом php)

Заранее спасибо...
PM MAIL   Вверх
Ипатьев
Дата 4.10.2009, 17:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



а собственные идеи какие-нибудь есть?
PM MAIL   Вверх
insy
Дата 4.10.2009, 17:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 140
Регистрация: 21.9.2008
Где: Saratov

Репутация: нет
Всего: нет



Ну как бы... Я вообщем хочу разобраться.... например берем CodeIgniter... что заносим в контроллер, что в модель, что во вьюху... на самом простом примере,...
А то в юзер гиде по CI не очень подробно написано...

Это сообщение отредактировал(а) insy - 4.10.2009, 17:27
PM MAIL   Вверх
Ипатьев
Дата 4.10.2009, 17:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



Вы тогда не очень удачное название теме дали.
Алгоритм выполнения программы - это одно.
Последовательность нажимания кнопочек при вызове готовой библиотеки - совсем другое. К алгоритму она не имеет отношения. 
Имеет смысл спросить на каком-нибудь специализированном форуме, посвященном этому фреймворку. Поскольку множество программистов на РНР не слишком пересекается со множеством пользователей одного из фреймворков.

Это сообщение отредактировал(а) Ипатьев - 4.10.2009, 17:38
PM MAIL   Вверх
insy
Дата 4.10.2009, 17:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 140
Регистрация: 21.9.2008
Где: Saratov

Репутация: нет
Всего: нет



согласен, ну а просто на php без использования CI?
PM MAIL   Вверх
Ипатьев
Дата 4.10.2009, 17:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



Ну а без использования CI собственные идеи какие-нибудь есть?

PM MAIL   Вверх
insy
Дата 4.10.2009, 17:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 140
Регистрация: 21.9.2008
Где: Saratov

Репутация: нет
Всего: нет



а что подразумевается по собственными идеями? как я это сам вижу?
PM MAIL   Вверх
Ипатьев
Дата 4.10.2009, 17:56 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



ну да
какие есть идеи по данному алгоритму. 

PM MAIL   Вверх
insy
Дата 4.10.2009, 18:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 140
Регистрация: 21.9.2008
Где: Saratov

Репутация: нет
Всего: нет



как вариант есть таблица с огромным количеством записей нужно сделать, чтобы записи разбивались например по 40элементов, ну и соответственно можно было перемещаться... Так же реализовать кнопки "Первая" и "Последняя" страницы... ну вот как- то так...
PM MAIL   Вверх
Ипатьев
Дата 4.10.2009, 18:07 (ссылка)    | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



Ну, неплохая постановка задачи.
А какие идеи по реализации? 
Скажем по разбивке? Что имеется в виду под словом "разбивались"?

Это сообщение отредактировал(а) Ипатьев - 4.10.2009, 18:09
PM MAIL   Вверх
Kallisto
Дата 4.10.2009, 22:49 (ссылка)  | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 163
Регистрация: 20.4.2007

Репутация: -3
Всего: -1



Всегда раздражали "эксперты" которые вместо решения проблемы начинают задалбывать зачем это вам и давайте думайте сами..

Итак:
При выборки из базы используется SQL запрос.

При задании запроса можно указать сколько записей и начиная с какой необходимо сделать выборку.
Это осуществляется с помощью LIMIT

Использовать очень просто:
SELECT * FROM TABLE LIMIT сколько_записей_надо

или с OFFSET
SELECT * FROM TABLE LIMIT начиная_с_какой, сколько_записей надо

Пример:
SELECT * from users limit 5 - покажет 5 юзеров
SELECT * from users limit 5,10 - покажет 10 юзеров после 5ти


Разбиение страниц работает по след. принципу, например если задана переменная $page то мы ее толкаем в запрос
Допустим надо чтобы было по 50 записей на страницу.
Нумерация страниц с 1

$perpage = 50;
$offset = (--$page)*$perpage;
$sql = "select * from users limit $offset,$perpage";

А ниже выводим страницы..

предварительно переменную $page необходимо проверить на валидность и существование


Успехов. будут вопросы - пишите
PM MAIL   Вверх
youri
Дата 5.10.2009, 08:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 740
Регистрация: 17.4.2004

Репутация: 6
Всего: 16



Всегда раздражали "эксперты", которые дают готовое решение. Как минимум, они не дают ТС подумать. Причем часть из них хочет показаться умными. Как результат имеем "программистов", которые разрабатывают методом copy-paste и за каждым новым куском бегуют на форум ;)
PM   Вверх
Leklerk
Дата 5.10.2009, 08:58 (ссылка)  | (голосов:5) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 200
Регистрация: 31.7.2009
Где: Санкт-Петербург

Репутация: нет
Всего: нет



youri,  smile 
PM MAIL ICQ   Вверх
Kallisto
Дата 5.10.2009, 09:51 (ссылка) |   (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 163
Регистрация: 20.4.2007

Репутация: -3
Всего: -1



Если вы считаете, что сказать человеку про ЛИМИТ, кратко объяснить для чего он  и как использовать в РНР и для решения pagination то да.. это готовое решение.
PM MAIL   Вверх
insy
Дата 5.10.2009, 13:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 140
Регистрация: 21.9.2008
Где: Saratov

Репутация: нет
Всего: нет



Согласен, что оба участника спора правы... что собственно копипаст это не замечательно... и излишне пытающие люди - это тоже не совсем замечательно...
Просто я абсолютно не спорю  с тем, что вы понимаете, затем я собственно сюда и пришел,чтобы у вас проконсультироваться, но просто такая пытка, учитывая , что я сам собственно не особо могу понять что как мне охарактеризовать свой вопрос, и мне просто нужен простой алгоритм, как предоставил Kallisto, чтобы начать плясать и задавать дальнейшие вопросы... 
Я почему-то очень сомневаюсь товарищ Ипатьев, что вы не могли его написатьsmileМожет просто плохо поняли друг друга... 

p.s Kallisto спасибо... процесс пошел...

Добавлено через 6 минут и 46 секунд
Это не в коем случае не какое-то заявление, типа "от вас толку 0, только разговоры", Ипатьев,  отдельное спасибо, ты мне уже не раз помогал, но сейчас просто я с трудом смог объяснить  свою мысль.smile

Добавлено через 11 минут и 22 секунды
А переменная $page тут для чего используется? и что значит --$page?
PM MAIL   Вверх
Страницы: (3) Все [1] 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1166 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.