| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Perl: разработка для Web > кодировка сбивается |
| Автор: gcc 30.11.2009, 17:39 | ||||
| подскажите мне нужно отправить utf8 на сервер с форм text и сразу же вернуть обратно onchange="_go(this)" но проблема что кодировка сбивается! вот:
я посмотрел отладку, вижу картинку что кодировка закодирована в что-то! проблем с кодировкой у меня нету кроме этого почему оно вовращает в сбитой кодировке? проблема на сервере? Я вот увидел в отладке что кодировка кодируется в что-то
НО utf8 работает хорошо во все остальном!!! т.е. русские символы закодироанные в что-то... |
| Автор: Egik2 30.11.2009, 20:51 |
| Текст приходит уже на сервер крокозябрицей, или возвращается тебе оттуда в таком виде? Если второе, тогда попробуй напрямую задать кодировку: print "Content-type:text/html; charset=utf-8\n\n"; вместо print header() и посмотреть как в самом Apache c директивами AddDefaultCharset или CharsetDefault и тому подобными может проблема в этом. |
| Автор: gcc 1.12.2009, 08:48 | ||||||||
| проблем с кодировкой у меня нету кроме этого ajax нету 1) на странице кодировка нормальная, я нажимаю на кнопку 2) мне возвращает в браузере
3) смотрю дамп в perl вижу такое
в mod_perl, поставил я в httpd.conf
забыл написать что на Catalyst использую и поставил туда:
вот эта страница http://x0.org.ua/perl/hello.html.txt т.е. проблема в том что в полях textarea или text есть символы из-за которые это происхордит, я пока не понял какие именно... но такое происходит со многими статьями мне не сроно надо, просто не приятно... |
| Автор: ginnie 1.12.2009, 13:23 |
| gcc, у меня такой вид текста был когда я использовал JSON::XS, который все мои cp1251-строчки конвертировал в utf-8 используя таблицу iso-8859-1 (latin1). Проблема скорее всего на серверной стороне. Попробуй в скрипте сделать отладочный вывод в консоль пришедшей строки и обработанной, перед отдачей клиенту. После этого станет понятно, где проблема и что копать дальше. |
| Автор: gcc 15.12.2009, 08:42 | ||
ginnie, если этот код закомментировать, то НЕ сбивается и все работает
я сделал: что если пользователь в админке что-то изменит, и если в вводимых данных ошибка, то чтобы те вводимые данные вернулись обратно... (чтобы их исправить и ввести без ошибок) (если их удалить, то пользователю прейдется все с начало вводить, что не хорошо... ) в этом хэше $c->request->params $c->request->params->{name_head_content} стоят данные не в utf8?? (такого вроде бы не было никогда) как это исправить? |
| Автор: gcc 15.12.2009, 14:04 | ||||||||||||||
я поставил так:
мне отвичает
есть decode заменить на encode то почему-то не переводятся тэги с HTML в BB Добавлено через 14 минут и 52 секунды
в начале скрипта и в конце перед отправкой в шаблон? === вот должно работать, то не работает, в конце скрипта:
и в начале:
=== раньше это работало:
сейчас не хочет |
| Автор: gcc 15.12.2009, 14:27 |
| то что я выше описал, в начале и в конце decode encode, срабатывает, НО на странице все равно сбитая кодировка, эти данные из param в нормальной кодировка, еще и данные выводятся не в BB, а в HTML... |
| Автор: gcc 16.12.2009, 08:38 | ||
| извините, там перепутал вообщем, сработало, вот это:
поставить перед отправкой в шаблон |