|
21 / 10 / 4
Регистрация: 02.04.2015
Сообщений: 779
|
||||||
Добавить к пагинации данные из параметров в ссылке06.11.2025, 22:02. Показов 1714. Ответов 21
Метки нет (Все метки)
Доброго времени, есть такой скрипт пагинации, почти все работает так как мне нужно
но только вот траблы у меня с пагинацией, данные города и раздела берутся из ссылки вида - https://domen.com/poisk.php?gorod=New York, NY&razdel=Household appliances и передаются в последствии в бд , на выходе получаю данные из бд, но только отображает первую страницу А пагинация на следующие страницы идет без параметров такого вида - https://domen.com/poisk.php?search.php?page=2 Помогите дополнить скрипт, чтобы в пагинации добавлялись параметры и ссылки в пагинации имели вид НЕ ТАКОЙ.... poisk.php?page=2 poisk.php?page=3 poisk.php?page=4 poisk.php?page=5 А ТАКОЙ... poisk.php?gorod=New%20York,%20NY&razdel= Household%20appliances&page=2 poisk.php?gorod=New%20York,%20NY&razdel= Household%20appliances&page=3 poisk.php?gorod=New%20York,%20NY&razdel= Household%20appliances&page=4 poisk.php?gorod=New%20York,%20NY&razdel= Household%20appliances&page=5 Чтобы передавало параметры в ссылке! Там вся проблема в том что это функция и внутри у нее ограниченна видимость переменных вот я добавил код в функцию // добавляет к пагинации (город и категорию) $gorod = $_GET['gorod']; $razdel = $_GET['razdel']; $loccat = "&gorod=$gorod&razdel=$razdel"; // print_r($loccat); как теперь мне связать вместе чтобы получить линки в пагинации вида? poisk.php?gorod=New%20York,%20NY&razdel= Household%20appliances&page=2 poisk.php?gorod=New%20York,%20NY&razdel= Household%20appliances&page=3 poisk.php?gorod=New%20York,%20NY&razdel= Household%20appliances&page=4 poisk.php?gorod=New%20York,%20NY&razdel= Household%20appliances&page=5
0
|
||||||
| 06.11.2025, 22:02 | |
|
Ответы с готовыми решениями:
21
Принятие параметров в ссылке и их отправка далее по ссылке без action Пагинация. Вывод не соответствующих данных
|
|
2604 / 1508 / 689
Регистрация: 23.08.2015
Сообщений: 3,839
|
||||||
| 06.11.2025, 23:52 | ||||||
|
serauto79,
0
|
||||||
|
21 / 10 / 4
Регистрация: 02.04.2015
Сообщений: 779
|
|
| 07.11.2025, 00:02 [ТС] | |
|
0
|
|
|
2604 / 1508 / 689
Регистрация: 23.08.2015
Сообщений: 3,839
|
|
| 07.11.2025, 00:07 | |
|
0
|
|
|
21 / 10 / 4
Регистрация: 02.04.2015
Сообщений: 779
|
||||||
| 07.11.2025, 00:17 [ТС] | ||||||
|
но у меня уже есть функция
у меня в функции есть код $gorod = $_GET['gorod']; $razdel = $_GET['razdel']; он из ссылки джетом берем данные из параметров, на как теперь эти данные добавить в уже существующей пагинации? Добавлено через 4 минуты или мне все подобные строки из моей функции if($page - 2 > 0) $page2left = ' <a href='.$pg['a']. ($page - 2).$pg['b'].'>'. ($page - 2) .'</a> '; обернуть в вашу функцию? currentUri(if($page - 2 > 0) $page2left = ' <a href='.$pg['a']. ($page - 2).$pg['b'].'>'. ($page - 2) .'</a> '); не пойму как
0
|
||||||
|
2604 / 1508 / 689
Регистрация: 23.08.2015
Сообщений: 3,839
|
|||||||
| 07.11.2025, 00:29 | |||||||
Не забывайте, что у атрибута href - кавычки обязательны. вы как-то их опустили. Добавлено через 20 секунд Но я бы немного по другому делал..
0
|
|||||||
|
21 / 10 / 4
Регистрация: 02.04.2015
Сообщений: 779
|
||||||||||||||||||||||||||
| 07.11.2025, 00:50 [ТС] | ||||||||||||||||||||||||||
|
Я делал раньше так
если ссылка в браузере с параметрами такого вида была
то пагинация была не корректна, передавало только первое слово из параметра до пробела
0
|
||||||||||||||||||||||||||
|
2604 / 1508 / 689
Регистрация: 23.08.2015
Сообщений: 3,839
|
||||||||||||||||||||||||||||||||||||||||||||
| 07.11.2025, 01:37 | ||||||||||||||||||||||||||||||||||||||||||||
Добавлено через 4 минуты Можно и дальше пойти, вынести шаблон пагинации для повторного использования. Чтоб получилось
1
|
||||||||||||||||||||||||||||||||||||||||||||
|
21 / 10 / 4
Регистрация: 02.04.2015
Сообщений: 779
|
|||||||||||||
| 07.11.2025, 12:34 [ТС] | |||||||||||||
просто те примеры что вы поделали, я там хз знает куда что из них подставлять в свой код чтобы работало, там переменные другие и тд. Добавлено через 1 час 0 минут if ($page != $total) $nextpage = ' <a href='.$pg['a']. ($page + 1) .$pg['b'].$loccat.'>></a><a href='.$pg['a'] .$total. $pg['b'].$loccat.'>>></a>'; или где не пойму вас, и каким образом это может влиять на обрезание ссылки если есть пробел или запятая в слове то которое получено из параметров ссылки.
0
|
|||||||||||||
|
2604 / 1508 / 689
Регистрация: 23.08.2015
Сообщений: 3,839
|
||
| 07.11.2025, 13:02 | ||
|
Просто посмотрите исходный код страницы (ctrl + U) - что у вас получается.
1
|
||
|
21 / 10 / 4
Регистрация: 02.04.2015
Сообщений: 779
|
|||||||
| 07.11.2025, 16:28 [ТС] | |||||||
Добавлено через 11 минут я пробовал и две кавычки ставить if ($page != $total) $nextpage = ' <a href=''.$pg['a']. ($page + 1) .$pg['b'].$loccat.''>></a><a href=''.$pg['a'] .$total. $pg['b'].$loccat.''>>></a>'; и двойную кавычку, ничего не меняет Добавлено через 10 минут в этой строке if ($page != 1) $pervpage = "<a href={$pg['a']}1{$pg['b']}$loccat><<</a><a href={$pg['a']}".($page - 1).$loccat." {$pg['b']}><</a>"; тоже добавлял одинарные кавычки так if ($page != 1) $pervpage = "<a href='{$pg['a']}1{$pg['b']}$loccat'><<</a><a href='{$pg['a']}".($page - 1).$loccat." {$pg['b']}'><</a>"; ниче не меняет!
0
|
|||||||
|
10 / 13 / 2
Регистрация: 02.02.2015
Сообщений: 46
|
|||||||||
| 07.11.2025, 16:59 | |||||||||
|
Вот сюда посмотри и подумай где с точки зрения браузера заканчивается ссылка.
И еще, я очень советую почитать про строковые литералы PHP в документации. Чем различаются одинарные и двойные кавычки, как в строке с одинарными кавычками использовать символ одинарной кавычки и то же самое с двойными. https://www.php.net/manual/ru/... string.php
0
|
|||||||||
|
21 / 10 / 4
Регистрация: 02.04.2015
Сообщений: 779
|
||||||
| 07.11.2025, 17:18 [ТС] | ||||||
|
сделал добавляя \'
Добавлено через 8 минут спасибо за подсказку про кавычку, я не додумался открыть код страницы чтобы посмотреть что там, посчитат что что-то обрезает до первого пробела в строке. Добавлено через 5 минут а теперь вопрос такой если в базе данных ничего не найдено, то на странице я все ровно вижу цифру 1 в том месте где идет нумерация пагинации, как мне вывести (по запросу ничего не найдено) как мне правильно написать условие иф елсе?
0
|
||||||
|
2604 / 1508 / 689
Регистрация: 23.08.2015
Сообщений: 3,839
|
||||||||||||||||||||||||||||||||||||||||||||
| 07.11.2025, 21:08 | ||||||||||||||||||||||||||||||||||||||||||||
Сообщение было отмечено serauto79 как решение
Решение
Я бы попытался сконцентрировать всю логику в одном месте.. можно допустим вынести в функцию
Сразу видно, что можно было сделать проще..
serauto79, Отсюда и возникает вопрос - зачем вообще шаблоны ссылок в виде переменной $pageFormat? Для повторного использования функции Pagination? Тут возникает много вопросов.. Тут все проблемы связаны с функцией Pagination.. она перегружена обязанностями, при этом нарушена ее целостность.. принимает какие-то куски SQL и т.д.. Т.е. часть логики вытекает наружу. Причем она генерирует HTML, а верстка может многократно усложняться и меняться по разным причинам.. Т.е. повторно ее использовать то и не особо получится. На самом деле эта функция просто лишена смысла. Но даже в этом случае если хотите ей передать разные виды ссылок - то проще и гибче передавать не некий шаблон ссылки, а саму функцию для ее генерации. К примеру К примеру
В большинстве случаев вам важно будет сохранять все Get - параметры.. Там могут находиться параметры, отвечающие за фильтрацию, сортировку и т.д.. И нет таких ситуаций, когда какие-то параметры нам нужно удалять.. Т.е. если тут еще раз посмотреть на функцию.. то мы можем даже просто взять весь массив $GET
2
|
||||||||||||||||||||||||||||||||||||||||||||
|
21 / 10 / 4
Регистрация: 02.04.2015
Сообщений: 779
|
|||||||
| 08.11.2025, 16:55 [ТС] | |||||||
|
Добавлено через 31 минуту Сейчас сделал по вашему как вы описали, но при выполнении скрипта пустая страница, где-то ошибка
0
|
|||||||
|
2604 / 1508 / 689
Регистрация: 23.08.2015
Сообщений: 3,839
|
||
| 08.11.2025, 19:17 | ||
|
0
|
||
|
21 / 10 / 4
Регистрация: 02.04.2015
Сообщений: 779
|
|||||||
| 08.11.2025, 23:27 [ТС] | |||||||
|
строка 100 и так пробовал все ровно пустой вывод
0
|
|||||||
|
2604 / 1508 / 689
Регистрация: 23.08.2015
Сообщений: 3,839
|
|
| 09.11.2025, 01:44 | |
|
0
|
|
|
21 / 10 / 4
Регистрация: 02.04.2015
Сообщений: 779
|
||
| 09.11.2025, 12:12 [ТС] | ||
|
if ($total > 1) { echo Pagination($pagination); } делал так, толку ноль а как ее вызывать еще?
0
|
||
|
2604 / 1508 / 689
Регистрация: 23.08.2015
Сообщений: 3,839
|
|||||||||
| 09.11.2025, 17:58 | |||||||||
0
|
|||||||||
| 09.11.2025, 17:58 | |
|
Помогаю со студенческими работами здесь
20
Пагинация, страницы Дерево комментариев с пагинацией Постраничная пагинация Пагинация страниц без добавления разрыв страниц Пагинация на php Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица.
Задача: зафиксировать три левых колонки в отчете.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
. . .
|
Настройки VS Code
Loafer 13.04.2026
{
"cmake. configureOnOpen": false,
"diffEditor. ignoreTrimWhitespace": true,
"editor. guides. bracketPairs": "active",
"extensions. ignoreRecommendations": true,
. . .
|
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2.
Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива.
Было так:. . .
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|
|
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html
Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
|
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
|
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях.
Задача: при копировании документа очищать определенные реквизиты и табличную. . .
|
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git
main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели
8ATzM_2aurI
|