Показать полную графическую версию : Преобразование русских символов в адресной строке
Zalegajuschij
24-02-2009, 14:03
А вот меня интересует: "По какому всемирному закону броузер преобразует путь ftp://Софт/Архиваторы/ в ftp://%D1%EE%F4%F2/%C0%F0%F5%E8%E2%E0%F2%EE%F0%FB/?"
Всемирный закон гласит: если символа в ANSI-кодировке нет (да, кажется, в ANSI, но это не абсолютно достоверно. Другими словами - нелатинские символы), то в URL'е он кодируется юникодом следующим образом - знак процента и двухбайтовый код символа.
И называется URL-encoded.
Zalegajuschij
24-02-2009, 17:31
Следующий вопрос: "Каким образом это можно сделать самому, не используя броузер?"
Я немного был не точен в описании. Посмотрите подробности в Вике (http://ru.wikipedia.org/wiki/URL).
"Как самому сделать"
Смотря зачем вы это делаете.
Вот, например, на JavaScript'е (http://xpoint.ru/know-how/JavaScript/PoleznyieFunktsii?38#EscapeSovmestimyiySRusskimiBuk) решение.
На php функция urlencode()
Как вручную - в вике по той же ссылке есть что посмотреть) Например, начало таблицы (http://i-technica.com/whitestuff/urlencodechart.html).
Мне лениво вдаваться в подробности - я бы воспользовался функцией на php.
В общем-то, если нужна табличка по кириллице, можете найти её в гугле или самостоятельно составить :)
М → D0 и 9C → %D0%9C
и → D0 и B8 → %D0%B8
к → D0 и BA → %D0%BA
р → D0 и 80 → %D0%80, и т. д.
А дальше всё должно быть понятно:
и - %D0%B8
й - %D0%B9
к - %D0%BA
л - %D0%BB
м - %D0%BC
...
Zalegajuschij
24-02-2009, 19:12
Спасибо, попробую разобраться.
А нужно мне это для того чтобы дать правильную ссылку в случае если не работает FTP ресурс куда я заливаю файл.
%D0%9C »Слышал ещё, что вроде бы если есть какой-то запрет на определённый адрес сайта, то достаточно ввести этот адрес в таком формате, каждую букву адреса заменить на знак процента и HEX-значение буквы, и никакой запрет тогда уже не поможет.
Слышал ещё, что вроде бы если есть какой-то запрет на определённый адрес сайта, то достаточно ввести этот адрес в таком формате, каждую букву адреса заменить на знак процента и HEX-значение буквы, и никакой запрет тогда уже не поможет. »
Дудки! :) Если стоит грамотный брандмауер, и в сети сидит толковый админ, то ничего из этой затеии не получится.
Это уж больно простой или даже "детский" вариант обхода защиты.
Да и потом, я не уверен кто(что) именно занимается преобразованием кодов в строку. Скорей всего сам браузер, и он уже посылает нормальный запрос, который благополучно "срезается" ограничителем.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Available in ZeroNet 1osznRoVratMCN3bFoFpR2pSV5c9z6sTC