[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: PHP_SELF vs ЧПУ
Игорь_Vasinsky
На сайте включён ЧПУ

Хочу получить php_self

Необходимость:

На какой либо странице:

Допустим:

ЧПУ
site.ru/windows/
а на сам деле:
site.ru?route=windows

дописываю GET

А необходимо при получении этого GET - остаться на этой же страницы (про редиректиться на себя)

Видимо GET необходимо будет удалить (чтоб ЧПУ узнал адрес), либо дописать в регулярку...


Как реализовать то ?



Спустя 1 час, 52 минуты, 53 секунды (20.02.2011 - 05:11) inpost написал(а):
Я не совсем понял, что ты хочешь...

Спустя 3 часа, 39 минут, 36 секунд (20.02.2011 - 08:51) Игорь_Vasinsky написал(а):
Ну вот смотри:

CMS написан так - что всё идёт через index.php

например - контакты:

index.php?route=contact

Какой-то другой раздел:

index.php?route=path/path?cat=28&id=52

ЧПУ перерисовывает это (для красоты и в сообраажениях SEO) в:

/contacts/
/path/path/28/52

Доустим я хочу сменить вид - передав параметр GET в URL:

/contacts/?theme=list
/path/path//28/52/?theme=preview

у меня есть 2 линка типа:

<a href="'$_SERVER['PHP_SELF']'.?theme=list">1 вид</a>
<
a href="'$_SERVER['PHP_SELF']'.?theme=preview">2 вид</a>


При клике на них - я должен перегрузиться на этой же странице где нахожусь (но тока при релоаде - получить и узнать ?theme=preview)

так вот - я не могу считать /contacts/ - потому что это мод реврайт - переименовывает адрес из index.php?route=contact

я считываю index.php?route=contact - т.к. это есть реальный путь, и следовательно получаю index.php?theme=preview , но так как я находился до этого на странице (спасибо ЧПУ) - /contacts/ - то соответственно теперь я перелетаю на страницу index.php, т.к. ЧПУ не узнаёт чтоли и для него:


/contacts/ и /contacts/?theme=list - это разные вещи .

Спустя 18 минут, 44 секунды (20.02.2011 - 09:09) inpost написал(а):
header("Location: ".$_SERVER['PHP_SELF'].$_GET['theme']);
Это тебе?

Спустя 50 минут, 28 секунд (20.02.2011 - 10:00) Игорь_Vasinsky написал(а):
неа.

короче мне нужно считать URL из строки в том виде как его подставляет ЧПУ

Спустя 1 час, 7 минут (20.02.2011 - 11:07) Игорь_Vasinsky написал(а):
Есть варианты?

Спустя 3 часа, 44 минуты, 1 секунда (20.02.2011 - 14:51) Animir написал(а):
Другими словами, нужно чтобы ЧПУ переделывал адрес в нужный, но при этом не трогал другие данные в GET?

Спустя 6 часов, 1 минута, 26 секунд (20.02.2011 - 20:52) Игорь_Vasinsky написал(а):
нет. всё я уже нашёл решение. всем спасиб.


Спустя 2 дня, 21 час, 7 минут, 24 секунды (23.02.2011 - 18:00) Ваня написал(а):
getenv('REQUEST_URI')
getenv('QUESRY_STRING')


_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.