Хочу получить 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 линка типа:
При клике на них - я должен перегрузиться на этой же странице где нахожусь (но тока при релоаде - получить и узнать ?theme=preview)
так вот - я не могу считать /contacts/ - потому что это мод реврайт - переименовывает адрес из index.php?route=contact
я считываю index.php?route=contact - т.к. это есть реальный путь, и следовательно получаю index.php?theme=preview , но так как я находился до этого на странице (спасибо ЧПУ) - /contacts/ - то соответственно теперь я перелетаю на страницу index.php, т.к. ЧПУ не узнаёт чтоли и для него:
/contacts/ и /contacts/?theme=list - это разные вещи .
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 из строки в том виде как его подставляет ЧПУ
короче мне нужно считать 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