Xwab
Форумыnavigate_nextПрограммирование на PHP

Мелкая проблема с #(диезом) в URL-адресе
Сообщения
JESOD

Здравствуйте!
Кто подскажет, как обойти следующее непонятное явление:
Переходим к примеру по адресу:
http://test1.ru/papka/F#m/
А Url автоматом переделывается в:
http://test1.ru/papka/F/#m/
Как можно с этим справиться? Подскажите пожалуйста.

17 Дек 2010, 17:36
wapmorgan

кем переделывается?
браузером, скриптом?

17 Дек 2010, 17:39
JESOD

Браузером. У меня Mozilla. Я с компьютера. Странно. Скриптом точно не переделывается, потому что скрипт мой с нуля, так что упустить я ничего не мог.

17 Дек 2010, 17:41
JESOD

Причем так переделывается только в случае существования папки: papka
Если же папки нет, то URL остаётся нормальный, но выбивает, как и задумано, страницу 404.

17 Дек 2010, 17:43
OZ_

Неуч, после символа # не должно быть /.

17 Дек 2010, 17:48
Fashion

вроде бы все что стоит после диеза - якорь.
юзай urlencode() дважды

17 Дек 2010, 17:48
JESOD

OZ_, Сделал так: http://test1.ru/papka/G#
И теперь всё равно режет #(диез), и остаётся:
http://test1.ru/papka/G

17 Дек 2010, 17:49
JESOD

Fashion, Ну, да, но обойтись нельзя. Надо как-то выкрутиться. А на счёт: urlencode()
как именно применить? При формировании ссылки?

17 Дек 2010, 17:50
OZ_

Неуч, если G это имя директории, то правильно так:
http://test1.ru/papka/G/#

И если после # нет ничего, то # будет отброшен (поскольку указание на якорь без имени якоря бесполезно).

Если же ты хочешь просто передать диез в параметрах url, то закодируй его: 'http://test1.ru/papka/'.urlencode('G#');


__________
посл.ред. 17 Дек 2010, 17:58; всего 1 раз 17 Дек 2010, 17:55
JESOD

OZ_, Имя директории, в том то и дело, что G#

17 Дек 2010, 17:56
Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.