Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Постраничная навигация
Форумы портала PHP.SU » » Вопросы новичков » Постраничная навигация

Страниц (2): [1] 2 »
 

1. easy63 - 19 Июля, 2012 - 18:59:14 - перейти к сообщению
Сколько не искал альтернативных способов постраничной навигации, решения на этом форуме и на сторонних ресурсах в том числе и на западных сайтах ничего подходящего не нашел (есть только с LIMIT что меня устраивает, но не устраивает то что далее весь код занимает кучу строк что не удобно и не хотелось бы использовать). Огорчение

Есть ли какое то решение которое не занимало бы по 60 строчек кода и более и было простым? Растерялся

P.S. Есть у кого код с постраничной навигацией как у wordpress-а типа вперед назад если уж нету постраничной навигации как сказано выше?

P.S.S. Кто нибудь объясните как вытащить из глобальной переменной GET только определенные значения. Например обычно мне нужно вытащить не две цифры 1/2 отсюда, а только вторую, или только третью. Что нужно написать $_GET['page'] что бы так было если это возможно. Просто кто-то говорил что это возможно.
2. OrmaJever - 19 Июля, 2012 - 19:13:20 - перейти к сообщению
http://php.su/articles/?cat=exam...les&page=062
Думаю здесь уложились в 60 строк.
3. easy63 - 19 Июля, 2012 - 19:52:49 - перейти к сообщению
OrmaJever, да я оттуда дал пример что 60 строк, хотелось бы альтернативный способ.
И что насчет двух других вопроса?
4. Zuldek - 20 Июля, 2012 - 10:52:15 - перейти к сообщению
Какой ещё альтернативный вам нужен способ?
Задачи постраничной навигации решаются либо извлечением только нужных на странице данных, через LIMIT, либо извлечением сразу всего набора данных один раз и показом только нужных данных на "определённой странице". У wordpress-а навигация организуется абсолютно также.
Все остальное в коде, - это визуализация переходов по страницам <- 1, 2, 3 ... и так далее. Её вы можете переписать как угодно, оставив хоть всего две ссылки "вперед-назад".
Из $_GET достаются любые параметры которые были переданы по именам:
передали ?a=1&b=2
Забрали второй параметр $b = $_GET['b'];
5. PATCH - 20 Июля, 2012 - 11:06:29 - перейти к сообщению
6. Zuldek - 20 Июля, 2012 - 11:11:44 - перейти к сообщению
пуколка которая делает тот же самый запрос
CODE (htmlphp):
скопировать код в буфер обмена
  1. select * from katalog order by id desc LIMIT $start, $num

только без обновления страницы скрывая данные от поисковиков. Крайне не рекомендую реализовывать постраничную навигацию с аяксом дабы не потерять тучу страниц сайта в поисковой выдаче
7. Faab - 20 Июля, 2012 - 12:55:55 - перейти к сообщению
Zuldek пишет:

только без обновления страницы скрывая данные от поисковиков. Крайне не рекомендую реализовывать постраничную навигацию с аяксом дабы не потерять тучу страниц сайта в поисковой выдаче


А вот можно об этом поподробнее. Ведь обоими способами дата берёться из базы данных. На что орентируются поисковики?
8. Stierus - 20 Июля, 2012 - 12:59:55 - перейти к сообщению
Боюсь представить, что станет с автором вопроса, когда он узнает, что и лимит считается дурным тоном (запросы к бд, будь они неладны Радость ), а 60 строк несколько разрастаются в реальных проектах Улыбка
9. Zuldek - 20 Июля, 2012 - 13:05:58 - перейти к сообщению
Faab пишет:
А вот можно об этом поподробнее. Ведь обоими способами дата берёться из базы данных. На что орентируются поисковики?


http://site[dot]com/page1
http://site[dot]com/page2
http://site[dot]com/page3
разные страницы

http://site[dot]com#par=1
http://site[dot]com#par=2
http://site[dot]com#par=3
одна страница.

Эта тема размусолена и разжевана уже на всех seo-форумах.
Все сводится к тому, что если вы делаете постраничную навигацию на ajax, то, если индексация данных критично важна, вы должны дублировать её навигацией без ajax с отдачей разных страниц с разным контентом.
10. Faab - 20 Июля, 2012 - 13:21:24 - перейти к сообщению
Мда... неприятная новость.

Но это если весь сайт построить на одной странице. А если оглавление сделать на аjax а с него выходить на сами страницы, то в принципе, тогда всё не страшно. На самих страницах можно поставить, наверное, ещё один вьювер, если это конечно так нужно = индексация от этого не сильно обеднеет.
11. tuareg - 20 Июля, 2012 - 13:21:47 - перейти к сообщению
Zuldek пишет:

Эта тема размусолена и разжевана уже на всех seo-форумах.
Все сводится к тому, что если вы делаете постраничную навигацию на ajax, то, если индексация данных критично важна, вы должны дублировать её навигацией без ajax с отдачей разных страниц с разным контентом.

А кто Вам мешает делать ссылки вида _http://site.com/page1 и т.д?
12. armancho7777777 - 20 Июля, 2012 - 14:21:11 - перейти к сообщению
Stierus пишет:
лимит считается дурным тоном

А как быть?
В смысле, надо кешировать и отдавать контент из кеша?
Или ...
13. Stierus - 20 Июля, 2012 - 15:40:15 - перейти к сообщению
armancho7777777, я с трудом понимаю, когда ты тролишь, а когда реально спрашиваешь Улыбка
14. armancho7777777 - 20 Июля, 2012 - 15:41:39 - перейти к сообщению
Stierus, достатосно обратить внимание на то, кому я задаю вопрос.
15. Stierus - 20 Июля, 2012 - 15:49:01 - перейти к сообщению
Каждый выкручивается как может, кто-то на примари ключ ориентируется и из него рассчитывает (когда нет физических удалений из бд, а ток статусы меняются), кто-то ограничивает число страниц, кто-то делает текущую +- 3 страницы и тд. Смотря по ситуации. Оффсет на больших данных - не вариант и его никто не использует ... я видел извращения с кешированием и выведением в отдельное поле
(Добавление)
Но это на больших данных, с записями в десятки - сотни тысяч нечего и морочиться, когда начинаются лямы - тут надо уже импровизировать Улыбка

 

Powered by ExBB FM 1.0 RC1