файл в UTF-8: PHP: $text = "русский в утф"; header('Content-type: text/html; charset=ISO-8859-1'); echo "<meta http-equiv='content-type' content='text/html; charset=ISO-8859-1' />"; echo mb_convert_encoding($text, 'ISO-8859-1', 'UTF-8'); выводит кашу что не так? в браузере сайты с ISO-8859-1 отображаются нормально
но форум то в 8859-1 и нормально все отображает а так не канает: PHP: $text = "русски в утф"; header('Content-type: text/html; charset=ISO-8859-5'); echo "<meta http-equiv='content-type' content='text/html; charset=ISO-8859-5' />"; echo mb_convert_encoding($text, "ISO-8859-5");
Может, и необязательный, но без него не будет работать PHP: $text = 'русский в утф'; header ('Content-type: text-html; charset=ISO-8859-5'); echo "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=ISO-8859-5\">"; echo $text . "<br>"; echo mb_convert_encoding ($text, 'ISO-8859-5', 'auto'); ЗЫ. Необходимости юзать малораспространенную кодировку в рунете вообще не вижу
объясните пожалуйста, как тогда я размещаю руками сообщение нормальными русскими буквами на форум, у которого кодировка ISO-8859-1 ? а если скриптом - то всякая хрень
$title = iconv("UTF-8", "ISO-8859-5//IGNORE", $title); $message = iconv("UTF-8", "ISO-8859-5//IGNORE", $message); c ISO-8859-5 ещё при выводе на экран из файла в utf-8 - видно русский текст а при отправке на форуме закорючки а если ISO-8859-1 - то вообще строки из одних пробелов
посмотри в каком виде отправляются данные .. у меня както была трабла что при отрпаке из формы текст отсылался ввиде html эквевилентов .. тоесть вместо букв были ихние хтмл коды и при выводи была трабла ... или же кодировка самого файла со скриптом не соответствует .. хз
***! я все-таки сделал это! PHP: function unicode_mk_cyr($str) { $encode = ""; for ($ii=0;$ii<strlen($str);$ii++) { $xchr=substr($str,$ii,1); if (ord($xchr)>191) { $xchr=ord($xchr)+848; $xchr="&#" . $xchr . ";"; } if(ord($xchr) == 129) { $xchr = "Ѓ"; } if(ord($xchr) == 163) { $xchr = "Ј"; } if(ord($xchr) == 138) { $xchr = "Љ"; } if(ord($xchr) == 140) { $xchr = "Њ"; } if(ord($xchr) == 143) { $xchr = "Џ"; } if(ord($xchr) == 141) { $xchr = "Ќ"; } if(ord($xchr) == 189) { $xchr = "Ѕ"; } if(ord($xchr) == 188) { $xchr = "ј"; } if(ord($xchr) == 131) { $xchr = "ѓ"; } if(ord($xchr) == 190) { $xchr = "ѕ"; } if(ord($xchr) == 154) { $xchr = "љ"; } if(ord($xchr) == 156) { $xchr = "њ"; } if(ord($xchr) == 159) { $xchr = "џ"; } if(ord($xchr) == 157) { $xchr = "ќ"; } $encode=$encode . $xchr; } return $encode; } $title = urlencode(unicode_mk_cyr($title)); $message = urlencode(unicode_mk_cyr($message)); функцию взял из комментов php.net
это не выход .. такое происходит когда вводимы текст не соответствует кодировке страницы (или чтото типо того) легче перевести всё в ut8 разве нет?