![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| noder |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 18.8.2004 Репутация: нет Всего: нет |
Есть такой скрипт:
#!/usr/local/bin/perl read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'}); @pairs = split(/&/, $buffer); foreach $pair (@pairs) { ($name, $value) = split(/=/, $pair); $value =~ tr/+/ /; $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; $value =~ s/<!--(.|\n)*-->//g; $input{$name} = $value; } Так вот если ему подать русский текст из веб формы, то он записывает в файл (а обработонное мне нужно записывать в файл) одни знаки вопросы, помогите разобраться, что для этого нужно. |
|||
|
||||
| chaos |
|
|||
![]() Серийный программист ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2979 Регистрация: 7.7.2004 Где: Екатеринбург Репутация: нет Всего: 44 |
Конвертировать тебе симовлы нужно!!!
|
|||
|
||||
| noder |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 18.8.2004 Репутация: нет Всего: нет |
Э-эм рискну спросить...как? потому как я еще не совсем понимаю какую роль играют следующие строки в моем скрипте: $value =~ tr/+/ /; $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; $value =~ s/<!--(.|\n)*-->//g; на сколько я понимаю, в этих строках идет замена всяких символов? |
|||
|
||||
| dimes |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 249 Регистрация: 20.7.2004 Где: то около СПБ Репутация: нет Всего: 14 |
-каким браузером ты постиш данные?
-есть ли чтонибуть на странице что явно указывает кодировку? например <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1"> -как убедился что это не твой редактор превращает символы в "?" при просмотре полученных файлов? |
|||
|
||||
| noder |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 18.8.2004 Репутация: нет Всего: нет |
данные постились из IE, на странице с формой META тега нет. Просматривал содержимое файла консольным редактором Vi (проблемы с локалью исключены), потом просматривал в Виндах, те же знаки вопроса |
|||
|
||||
| GoodBoy |
|
|||
![]() Главный джедай ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 3886 Регистрация: 8.1.2003 Где: КМВ Репутация: 4 Всего: 83 |
noder
Честно говоря у меня подозрения именно на локаль... Попробуй в скрипте прописать это:
А на странице - <meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> И все кодировку страницы сделать в 1251. |
|||
|
||||
![]()
|
| Правила форума "Perl: CGI программирование" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: разработка для Web | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |