Forum Webscript.Ru

Общие => Веб-технологии => Тема начата: venoel от 07 Октября 2005, 10:29:43

Название: кириллица в ссылках
Отправлено: venoel от 07 Октября 2005, 10:29:43
Имеется у меня следующее.
WinXP, Apache 2.0.43. CGI-приложение написанное на Дельфи(далее project1.exe).
Во такая у меня проблемы.  
project1.exe формирует HTML-страничку, где сть ссылка подобного вида .....project1.exe?var1=наименование. Т.е. значение переменной var1 - строка, состоящая из кириллицы. При переходе на эту ссылку в адресной строке кириллическое значение заменяется кодами вида %ХХ. Скриптом все обрабатывается нормально, даннные выдаются корректные. Но только если пользоваться браузером Opera или Firefox. Если же Internet Explorer\'ом, то при переходе на такую ссылку в адресной строке отображается кириллица так как есть, но в скрипт попадает тарабарщина %ХХ. Когда разрабатывался project1.exe (года два назад. тогда правда Apache стоял на Win98) в Эксплорере все проверялось и все работало. В какой момент появился глюк - сказать не могу, т.к. сам прользуюсь Oper\'ой - а там все работает. Вопрос в следующем - что делать? :)
1. Можно ли что-то указать в настройках Explorer\'a, Apache?
2. Можно проверять с какого браузера было обращение и перекодировать соответствующие поля, но....Где взять соответствующую таблицу перекодировки или хотя бы по каким ключевым словам искать в инете?




Если не по адресу - извиняюсь.
Название: кириллица в ссылках
Отправлено: CGVictor от 07 Октября 2005, 15:14:54
venoel
Цитировать
venoel:
соответствующую таблицу

В записи %XX, XX - hex код символа. Перекодирование элементарное (функция chr(xx) в object Pascal, или компонент NMUrl в Delphi, если я еще не всё забыл).

Вообще юникод-ссылки пока тема новая и сырая. Я бы не стал их использовать, а кодил бы либо в транслит, либо не использовал вообще.

А писать веб-cgi-приложения на Delphi - изврат.
Название: кириллица в ссылках
Отправлено: venoel от 07 Октября 2005, 16:01:51
Вот такую особенность еще заметил. Если Апаче стоит на Win98, то все прекрасно работает(и работало полтора года).
Но если апаче под WinXP и переходить по такой ссылке именно в IE, то тогда и именно тогда возникает подобная неурядица.
Т.е. слова "Привет я тут", на странице(и в HTML коде) будут отражаться как "I?eaao y ooo"


[OFF]А веб-приложения на Дельфи - не больший изврат, чем Perl\'овский синтаксис[/OFF]
Название: кириллица в ссылках
Отправлено: CGVictor от 07 Октября 2005, 17:22:37
venoel
Флаг "всегда отправлять url как utf8" в Свойства->Дополнительно
не трогал?..

Решение я сказал, в пред. посте.

Каждый дро... пишет, как он хочет. Delphi так Delphi.
Название: кириллица в ссылках
Отправлено: venoel от 10 Октября 2005, 11:36:04
В общем сделал, что бы вместо кириллицы в ссылке было %хх, и все стало на свои места.

Хотя все равно связка IE+Apache(WinXP) - странно работает.
И главное не понятно кто-же из них глючит. Если IE  - то он же при обращении к Apache(Win98) работает нормально. Если Apache(WinXP) - то при обращении к нему с других браузеров тоде порядок. Чудеса.