2013-06-05 3 views
1

Я отправляю ($_POST[]) данные со страницы A и пытаюсь вывести их на страницу B, однако что-то не работает с UTF8.Форма: передача данных UTF8 на другую страницу

Данные на странице B есть (я считаю) не в UTF8, например é становится ?. Если я использую utf8_encode на странице B, все будет хорошо.

Хитрость в том, что mb_detect_encoding() делает возвращение UTF-8 на странице B для данных из POST

Так на странице AI есть все заголовки установить в UTF8

header("Content-Type: text/html; charset=utf-8"); 
<meta charset="utf-8"> 

И после моего соединения тузд

mysqli_set_charset($mysqli, "utf8"); 

Форма на странице А содержит

accept-charset="UTF-8" 

и страница B загружается с помощью Ajax, а также имеет заголовок на

Могу ли я что-то отсутствует? Или я должен всегда использовать utf8_encode() по данным от POST?

+0

Что произойдет, если вы выполните эхо-данные на странице A? –

ответ

0

Вы можете добавить код accept-charset="UTF-8" в страницу Config. Таким образом, он будет использоваться на всех страницах по мере необходимости.

0

Для передачи данных со страницы A на B вы используете json_encode? Эта функция используется исключительно для данных, закодированных в utf-8

+0

no Я ничего не делаю. Просто пытаюсь напечатать '$ _POST ['text'];' –

+0

Да, но если вы используете Ajax, как вы передаете данные между двумя вашими страницами? – ezawadzki

+0

Ах, с XMLHttpRequest(). Я попытался установить заголовок там как UTF8, но ничего не меняя –

Смежные вопросы