Эта тема на forum.dklab.ru


thorr: национальные языки
Когда я через форму передаю слово, написанное буквами отличными от кириллицы и латиницы (например, по-гречески или на иврите), то получаю (сразу в POST) абракадабру, причем кириллицей (т.е. вместо Ελληνικά получается ЕллзнйкЬ). Замечено: если в слове (или в поле ввода в форме) хотя бы первая буква русская, а остаток иноязычный, то все прекрасно сохраняется в базу, и на выходе получаю те буквы в том начертании, которые вводились. htmlentities мог бы спасти отца русской демократии, поскольку превращает национальные начертания в расширенный код с амперсандом и решеткой, но при этом портятся и русские слова, становятся чем-то вроде "Ãîðîäà" (в базе это выглядит как "Ãîðîäà"), да еще при каждом сохранении данных превращает эти начальные амперсанды в &, что мне вовсе не надо. Как лечить?
Юрий Насретдинов:
Укажите явно кодировку UTE8, не будет такого безобразия. Правда придется использовать эту кодировку везде на сайте. Я думаю, это на самом деле не так уж и плохо.
thorr:
Укажите явно кодировку UTE8, не будет такого безобразия. Правда придется использовать эту кодировку везде на сайте.

везде - это где? В заголовке META, в типе mysql-таблиц, в подключении к mysql?
А без этого никак? Есть ли функция, которая определяет, кириллица ей пришла в строке или что-то более экзотическое?
Юрий Насретдинов:
Это принципиально невозможно.
thorr:
А что это за хитрая кодировка такая - UTE8 (яндекс ничего вразумительного не дает)? Вначале подумал, что опечатка и надо UTF-8, но сейчас прописал UTE8 в заголовке META charset (на той странице, где форма) и все заработало как надо - POST передает 16-битные 16ричные обозначения для национальных букв, а кириллицу передает как есть (причем безо всяких htmlentities и htmlspecialchars) :) (а с UTF-8 вообще вся страница превращается в какую-то дичь, все теги ломаются, а вместо букв одни палочки, крестики и квадратики). Мистика, одним словом.
Satyrius:
thorr
Кодировка UTF-8. А искать надо вниметельнее: ask google: кодировка utf 8. Один из первых результатов поиска: http://www.linuxdoc.ru/manpages/man7/utf-8.7.html

Эта тема на forum.dklab.ru