Javascript-форум (https://javascript.ru/forum/)
-   Я не знаю javascript (https://javascript.ru/forum/ya-ne-znayu-javascript/)
-   -   URL с русскими буквами (https://javascript.ru/forum/ya-ne-znayu-javascript/3831-url-s-russkimi-bukvami.html)

Kolyaj 28.05.2009 13:34

Цитата:

Сообщение от runa
совсем не понимаю в чем дело

Дело в том, что не надо использовать кириллицу в именах файлов.

x-yuri 28.05.2009 13:43

Цитата:

совсем не понимаю в чем дело
дело в том, что сервер не может знать, в какой кодировке ты ему передаешь путь к файлу с русскими символами (информация о кодировке отсутствует)

есть вариант перехватывать такие запросы с помощью mod_rewrite

runa 29.05.2009 13:28

дело в том, что я могу сделать это только используя код скриптов.
Просто я студентка и прав на администрирование у меня нет, а преподаватель требует, чтобы работал скрипт с русским именем.
Я пыталась закодировать имя с помощью encodeURI, а потом обратно в cgi - не помогло

x-yuri 29.05.2009 13:55

Цитата:

а преподаватель требует, чтобы работал скрипт с русским именем
это из серии "наказание для музыкантов: отбывание срока в оркестровой яме"?

тогда с помощью php-функции urlencode (или других средств) преобразовываем имя файла в разных кодировках (cp1251, utf-8, koi-8) и отправляем серверу и да поможет...

runa 29.05.2009 14:46

ага, :)
поделюсь результатами

runa 30.05.2009 07:05

проблему можно решить, если перекодировать URL в из win в utf
есть скрипт на perl, который это делает
проблема в том, чтобы вызвать его по событию кнопки submit, передать туда url, а потом ajax должен схватить готовый url
Такое реально сделать? Если да, то помогите с командами

x-yuri 30.05.2009 07:33

надо запустить этот perl-скрипт (если он поможет) 1 раз , чтобы узнать URL, по которому надо обращаться к файл.cgi ;)
а вообще это вручную сделать можно:
php -r "echo urlencode(iconv('cp1251', 'utf-8', 'файл.cgi'))"
(+ поэкспериментировать с кодировкой-назначением, 2-ая)

runa 30.05.2009 09:37

скрипт только заменяет русские буквы на нужную кодировку через регулярные выражения.
мне нужно направить туда url, чтобы потом скрипт с ajax получил этот url.
url формируется при отпраке методом get и все происходит по нажатию одной кнопки, а запустить надо аж три скрипта:
1 обработки url (.pl)
2 ajax (.js)
3 скрипт обработки данных (файл.cgi)

x-yuri 30.05.2009 10:48

подожди, ты чего хочешь? Реализовать свое сложное, нерациональное решение (+ возможно оно не решит твою проблему)? Или ты хочешь решить свою проблему?

runa 30.05.2009 11:00

понимаешь, у меня очень ограниченные возможности
максимум возможностей это закинуть скрипты на сервер, больше никаких вариантов нет!
я не упрямая, правда :)


Часовой пояс GMT +3, время: 07:48.