Автор Тема: кириллица в ссылках  (Прочитано 4273 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн venoel

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 3
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
кириллица в ссылках
« : 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

  • теперь местный
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2511
  • +0/-0
  • 2
    • Просмотр профиля
    • http://cg.net.ru
кириллица в ссылках
« Ответ #1 : 07 Октября 2005, 15:14:54 »
venoel
Цитировать
venoel:
соответствующую таблицу

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

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

А писать веб-cgi-приложения на Delphi - изврат.
LJ: Backslashed life (rss)

Оффлайн venoel

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 3
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
кириллица в ссылках
« Ответ #2 : 07 Октября 2005, 16:01:51 »
Вот такую особенность еще заметил. Если Апаче стоит на Win98, то все прекрасно работает(и работало полтора года).
Но если апаче под WinXP и переходить по такой ссылке именно в IE, то тогда и именно тогда возникает подобная неурядица.
Т.е. слова "Привет я тут", на странице(и в HTML коде) будут отражаться как "I?eaao y ooo"


[OFF]А веб-приложения на Дельфи - не больший изврат, чем Perl\'овский синтаксис[/OFF]

Оффлайн CGVictor

  • теперь местный
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 2511
  • +0/-0
  • 2
    • Просмотр профиля
    • http://cg.net.ru
кириллица в ссылках
« Ответ #3 : 07 Октября 2005, 17:22:37 »
venoel
Флаг "всегда отправлять url как utf8" в Свойства->Дополнительно
не трогал?..

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

Каждый дро... пишет, как он хочет. Delphi так Delphi.
LJ: Backslashed life (rss)

Оффлайн venoel

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 3
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
кириллица в ссылках
« Ответ #4 : 10 Октября 2005, 11:36:04 »
В общем сделал, что бы вместо кириллицы в ссылке было %хх, и все стало на свои места.

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

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28