Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
lilechek16_04
0 / 0 / 0
Регистрация: 10.06.2014
Сообщений: 13
1

Вывод Pagination на PHP

12.06.2014, 18:58. Просмотров 829. Ответов 19
Метки нет (Все метки)

Помогите, пожалуйста! Очень срочно требуется изменить вывод Pagination на PHP, чтобы пагинация была вида: << < 5 6 7 8 9 > >>, используя такие данные:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
protected function getPagination($count, $count_on_page, $link) {
        $count_pages = ceil($count / $count_on_page);
        $sr["number"] = 1;
        $sr["link"] = $link;
        $pages = $this->getReplaceTemplate($sr, "number_page");
        $sym = (strpos($link, "?") !== false)? "&amp;": "?";
        for ($i = 2; $i <= $count_pages; $i++) {
            $sr["number"] = $i;
            $sr["link"] = $link.$sym."page=$i";
            $pages .= $this->getReplaceTemplate($sr, "number_page");
        }
        
        $els["number_pages"] = $pages;
        return $this->getReplaceTemplate($els, "pagination");
    }
Пожалуйста, очень нужна помощь, я в этом почти ничего не понимаю
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.06.2014, 18:58
Ответы с готовыми решениями:

Php pagination
Ребятки, привет. :curtsy: Посмотрела на pagination-ru логику пагинации через...

Вывод в php
Здравствуйте! Помогите пожалуйста, Как можно сделать так, чтобы выводилось...

Вывод информации из БД php
Нужно вывести из БД информацию (это я сделала) и name сделать ссылкой,при...

Php вывод с базы
Приветствую всех, пишу на php один проект, есть таблица в базе с событиями...

Вывод меню в PHP
Здравствуйте ув. Друзья! Хотелось бы у Вас поделиться опытом. Подскажите...

19
Para bellum
Эксперт PHP
4104 / 3052 / 985
Регистрация: 06.01.2011
Сообщений: 8,932
13.06.2014, 07:31 2
lilechek16_04, покажите шаблон, который тут обрабатывается.
0
lilechek16_04
0 / 0 / 0
Регистрация: 10.06.2014
Сообщений: 13
13.06.2014, 13:05  [ТС] 3
Закинула на файлообменник RGhost по этой ссылке: {ссылка удалена - прикреплённое - ниже}, код для скачивания: 1604. Заранее спасибо!

P.S. Код совершенно рабочий, просто у меня выводятся все страницы, и это выглядит очень не красиво, особенно на главной странице, где уже показана нумерация из 35 страниц, а хочется только чтобы выводилась нумерация из 5
0
Вложения
Тип файла: rar pagination.rar (6.2 Кб, 4 просмотров)
Para bellum
Эксперт PHP
4104 / 3052 / 985
Регистрация: 06.01.2011
Сообщений: 8,932
13.06.2014, 13:26 4
lilechek16_04, милая девушка, я шаблон просил . Вернее шаблоны, которые вот тут вызываются:
PHP
1
2
3
$pages = $this->getReplaceTemplate($sr, "number_page");
$this->getReplaceTemplate($sr, "number_page")
$this->getReplaceTemplate($els, "pagination");
0
lilechek16_04
0 / 0 / 0
Регистрация: 10.06.2014
Сообщений: 13
13.06.2014, 13:59  [ТС] 5
файл pagination.tpl
HTML5
1
2
3
<div id="pagination">
    <p>%number_pages%</p>
</div>
файл number_page.tpl
HTML5
1
<a href="%link%">%number%</a>
0
Para bellum
Эксперт PHP
4104 / 3052 / 985
Регистрация: 06.01.2011
Сообщений: 8,932
13.06.2014, 18:11 6
lilechek16_04, вот
1
Вложения
Тип файла: rar modules_class.rar (2.2 Кб, 4 просмотров)
lilechek16_04
0 / 0 / 0
Регистрация: 10.06.2014
Сообщений: 13
13.06.2014, 22:37  [ТС] 7
Большое спасибо!! только почему-то выдает синтаксическую ошибку: Parse error: syntax error, unexpected '[', expecting ')' in Z:\home\test.local\www\lib\modules_class.php on line 202. Поменяла на скобки, тогда стал выдавать такую ошибку: Parse error: syntax error, unexpected T_DOUBLE_ARROW in Z:\home\test.local\www\lib\modules_class.php on line 203. Что делать теперь?
0
Para bellum
Эксперт PHP
4104 / 3052 / 985
Регистрация: 06.01.2011
Сообщений: 8,932
14.06.2014, 06:51 8
lilechek16_04, я и предполагал, что так будет . Но ничего страшного, у Вас версия php просто ниже, чем 5.4 Поэтому создание массивов с помощью [] не поддерживается. Вот, переделал:
1
Вложения
Тип файла: rar modules_class.rar (2.2 Кб, 6 просмотров)
lilechek16_04
0 / 0 / 0
Регистрация: 10.06.2014
Сообщений: 13
14.06.2014, 13:37  [ТС] 9
Спасибо Вам большое! извините, пожалуйста, что еще к Вам пристаю, только он опять выдал ошибку: Parse error: syntax error, unexpected '[', expecting ')' in Z:\home\test.local\www\lib\modules_class.php on line 265
0
Para bellum
Эксперт PHP
4104 / 3052 / 985
Регистрация: 06.01.2011
Сообщений: 8,932
16.06.2014, 14:55 10
Лучший ответ Сообщение было отмечено lilechek16_04 как решение

Решение

Вы извините Я не везде создание массивов поменял. Попробуйте:
1
Вложения
Тип файла: rar modules_class.rar (2.2 Кб, 4 просмотров)
lilechek16_04
0 / 0 / 0
Регистрация: 10.06.2014
Сообщений: 13
16.06.2014, 15:17  [ТС] 11
Все круто!!! Я Вам очень благодарна!!! на главной странице прекрасный вывод страниц. Только можно еще вопросик: дело в том, что на странице где идет раздел и под ним идет краткое содержание статей вывод страниц выглядит так:

-6 -5 -4 -3 -2 -1 0 1 2 > >>

как это можно исправить?
0
Para bellum
Эксперт PHP
4104 / 3052 / 985
Регистрация: 06.01.2011
Сообщений: 8,932
16.06.2014, 16:52 12
lilechek16_04, понятия не имею. Может быть переменная page используется в URL? Её нельзя использовать, кроме как для навигации этой.
1
lilechek16_04
0 / 0 / 0
Регистрация: 10.06.2014
Сообщений: 13
16.06.2014, 21:54  [ТС] 13
возможно причина в том, что в файле sectioncontent_class.php (который я тоже скидывала в pagination.rar) есть упоминание page. Вы не смогли бы посоветовать что в этом случае предпринять? Заранее огромное спасибо!
0
Para bellum
Эксперт PHP
4104 / 3052 / 985
Регистрация: 06.01.2011
Сообщений: 8,932
17.06.2014, 11:05 14
Нет, она там не играет роли. Похоже нашёл проблему. Попробуйте так:
0
Вложения
Тип файла: rar modules_class.rar (2.2 Кб, 5 просмотров)
lilechek16_04
0 / 0 / 0
Регистрация: 10.06.2014
Сообщений: 13
17.06.2014, 13:07  [ТС] 15
к сожалению ничего не изменилось
0
lilechek16_04
0 / 0 / 0
Регистрация: 10.06.2014
Сообщений: 13
18.06.2014, 23:24  [ТС] 16
Я кажется поняла в чем дело, просто сайт еще у меня маленький, каждый раздел состоит всего из 5-7 статей и поэтому выводятся отрицательные номера статей. На данный момент изменила private $beside = 4;, т.е. 4 поменяла на 1, а в $end = $start + $this->beside * 2; и в $start = $amount_pages - $this->beside * 2; 2 поменяла на 1. А когда статей станет больше в разделах, то в private $beside = 1; верну 4. И все будет прекрасно.
Огромное спасибо за Вам за Ваши ответы! Я Вам очень благодарна!!!
0
lilechek16_04
0 / 0 / 0
Регистрация: 10.06.2014
Сообщений: 13
26.06.2014, 02:11  [ТС] 17
извините, пожалуйста, а как можно сделать, чтобы была видно, что текущая страница активна? что нужно указать в коде?
0
Para bellum
Эксперт PHP
4104 / 3052 / 985
Регистрация: 06.01.2011
Сообщений: 8,932
27.06.2014, 07:18 18
Приношу свои извинения, работа, работа, ответить не мог. Теперь выкроил минуту. $beside можете назад на 4 изменить, теперь отрицательных чисел не будет. Текущая ссылка теперь выделяется жирным.
Вот:
1
Вложения
Тип файла: rar modules_class.rar (2.2 Кб, 7 просмотров)
lilechek16_04
0 / 0 / 0
Регистрация: 10.06.2014
Сообщений: 13
29.06.2014, 15:45  [ТС] 19
Огромное Вам СПАСИБО!!!!! Все прекрасно теперь отображается!!!)))
0
Para bellum
Эксперт PHP
4104 / 3052 / 985
Регистрация: 06.01.2011
Сообщений: 8,932
29.06.2014, 16:23 20
Не за что
0
29.06.2014, 16:23
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.06.2014, 16:23

Вывод hint в php
Уважаемые знатоки. Подскажите пожалуйста, как можно сделать вывод hint при...

Построчный вывод php shell_exec
как организовать построчный вывод без буферизации например такого скрипта:...

Вывод Php даных в html
У меня есть скрипт на php как можно выводить даные в html файл через include ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru