Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/18: Рейтинг темы: голосов - 18, средняя оценка - 4.78
25 / 25 / 11
Регистрация: 13.12.2011
Сообщений: 818
1

Удалить дублирующие гет-параметры из url

22.08.2016, 18:30. Показов 3709. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
у меня есть 2 ссылки, которые добавляют к URL гет-параметры.

url вида site/lk/games/

PHP
1
2
3
4
5
6
7
8
9
    <a href="/lk/games/">Все</a>
    <?foreach ($champs as $key):?>
        <a href="<?=$_SERVER['REQUEST_URI']?>?CID=<?=$key['ID']?>"><?=$key['NAME']?></a>
    <?endforeach;?>
 
    <a href="/lk/games/">Все</a>
    <?foreach ($teams as $key):?>
        <a href="<?=$_SERVER['REQUEST_URI']?>/?TID=<?=$key['ID']?>"><?=$key['NAME']?></a>
    <?endforeach;?>
когда перехожу по первой в URL появляется site/lk/games/?CID=2

когда по второй site/lk/games/?CID=2?TID=1

как теперь сделать что бы если я перехожу по первой ссылке, то в URL не добавлялось новое значение CID, а заменялось старое и так же со вторым. при этом если я выбираю в одной из ссылок "все", то этот гет параметр удалялся из URL ?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.08.2016, 18:30
Ответы с готовыми решениями:

Удалить пустые параметры (равные пробелу или 0) из гет-запроса
Добрый. Есть простая форма, в которой НЕ ВСЕ поля обязательны к заполнению, пусть на коленке это...

Убрать гет параметр из url
Всем привет,кто скажет как убрать гет параметр из url? например: сейчас есть: site.com/id?=1 мне...

Удалить дублирующие записи!
Здраствуйте! У меня возникла такая проблема. Я отфильтровываю данные по такому коду, чтобы убрать...

Не передаются данные метода гет в url. Почему?
Отправляю данные в через xmlHttpRequest. В параметрах функции open() пишу...

7
Заблокирован
22.08.2016, 18:48 2
Это не дублирование, а наследование. Формируйте ссылку не на основе REQUEST_URI, а исключительно на основе пути.

Добавлено через 1 минуту
P.S. В PHP $_SERVER['REQUEST_URI'] содержит не только путь, но и GET-параметры, поэтому у вас происходит такой казус. Можно было и догадаться.
0
25 / 25 / 11
Регистрация: 13.12.2011
Сообщений: 818
22.08.2016, 18:51  [ТС] 3
miketomlin, если исключительно на основе пути, то там гет-параметры удаляются
0
Заблокирован
22.08.2016, 18:56 4
Так вам и нужно удалить старые GET-параметры (параметры тек. страницы). После этого можете добавить новые, если нужно, как это сделано у вас (только там слеш какой-то левый затесался).
0
7 / 7 / 5
Регистрация: 17.03.2014
Сообщений: 77
22.08.2016, 19:39 5
Как вам выше написали нужно вместо
PHP
1
<a href="<?=$_SERVER['REQUEST_URI']?>/?TID=<?=$key['ID']?>"><?=$key['NAME']?></a>
Сделать так
PHP
1
<a href="site/lk/games/?TID=<?=$key['ID']?>"><?=$key['NAME']?></a>
И с другой ссылкой так же. Потому что когда вы переходите по одной из них, то ваш гет запрос попадает в $_SERVER['REQUEST_URI'] и у вас поэтому получается старый гет + новый.
0
25 / 25 / 11
Регистрация: 13.12.2011
Сообщений: 818
23.08.2016, 18:05  [ТС] 6
geee, да, но если делаю так, как вы написали, то если у меня уже есть гет-параметр от первой ссылки и я перехожу по второй ссылке, то первый затирается
0
Заблокирован
23.08.2016, 19:01 7
Mashka_mulashka, вы определитесь сначала, что вам нужно.
Цитата Сообщение от miketomlin Посмотреть сообщение
Так вам и нужно удалить старые GET-параметры (параметры тек. страницы). После этого можете добавить новые, если нужно, как это сделано у вас (только там слеш какой-то левый затесался).
Добавлено через 4 минуты
Если старые удалять не нужно, то к чему вопрос топика?
0
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
23.08.2016, 19:35 8
Через parse_url и parse_str вытащить текущие get параметры, слить нужным образом с новыми и собрать обратно через http_build_query
0
23.08.2016, 19:35
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.08.2016, 19:35
Помогаю со студенческими работами здесь

С помощью запроса удалить дублирующие записи
Перерыл весь инет но так и не нашел какое нужно поставить условие ((( Таблица Клиент (ключевого...

Как скрыть параметры URL и передать их методом пост используя Url.Action()
Здравствуйте. У меня в представлении на сайте есть ссылка, которая формируется в методе действии...

Удалить дублирующие пробелы, и заменить их одним, используя цепочные команды (masm)
Здравствуйте. Пытаюсь решить задачу. Суть: удалить дублирующие пробелы и заменить их одним,...

Параметры URL
Всем привет! Допустим есть такая ссылка : http://emptyurl.em/empty1.php?empty . Таков вопрос: как...

Необязательные параметры в URL
Есть функция: public static function convert_url($pattern){ $m = '#^'; $m...

Убрать параметры из url
Здрасте. есть строка с урлом странички. примерно такая -...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru