Проблема с русским текстом в UTF-8

Saturn

Новичок
Проблема с русским текстом в UTF-8

Windows 2003 Server SP1 Eng
Apache 1.3.34
PHP 4.4.3 (mbstring, iconv и пр. - всё есть)
MySQL 5.0.18

Тяну из таблицы под MySQL 5.0.18 данные (они там хранятся в UTF-8) - текст русский (проги типа Navicat видят его нормально).
Получаю текст в UTF-8 (mbstring опознаёт его как "UTF-8"), переконвертирую в CP1251 для отображения на сайте (c помощью mbstring, iconv или любым другим способом)
и нифига не получается.
Есть такой скрипт от tony2001 - он определяет кодировку: так вот моего текста определяет, как "KOI8-R".

В общем, подскажите, как мне всё-таки получить текст в удоваримом для браузера виде.
Есть ли универсальные методы для этого (ну или хотя бы почти универсальные)?

Просьба не отсылать в FAQ, темы про MySQL и кодировку и т.п. - уже прочитал ВСЁ!!!
Просьба также не предлагать изменить формат базы - в базу данные вбивает сторонний софт - им управлять нет возможности.
 

Saturn

Новичок
ну я не получаю на выходе видимый для глаза текст на русском. вот.

кстати, в запросе CONVERT тоже пробовал - фигвам.
 

Andreika

"PHP for nubies" reader
>переконвертирую в CP1251 для отображения на сайте
а сей загадочный запрос вы нам конечно не покажете?
 

440hz

php.ru
Saturn
а кодировка страницы какая? 8) и можно пример что все-таки на выходе получаем?
 

Saturn

Новичок
440hz
страницы стоит 1251, но не в этом же проблема. ну получал бы текст в кои8 - convert_cyr_string и все дела...
но его ещё получить надо...

Andreika
вам для iconv и mb_convert_encoding написать? или как я CONVERT в MySQL использую? всё стандартно - как говорят мануалы по PHP и MySQL.
 

Andreika

"PHP for nubies" reader
Saturn
и то и другое и можно без хлеба

PS. если проблема не описана в FAQ и не находится в поиске - старайся давать инфы побольше, чтобы вытаскивать из тебя ее не приходилось
 

Saturn

Новичок
$text = mb_convert_encoding($text, "Windows-1251", "UTF-8");
или
$text = iconv("UTF-8", "Windows-1251", $text);
или
"SELECT CONVERT('text' USING cp1251)..."

-~{}~ 20.03.06 13:59:

Andreika
проблема везде описана, но решения мне не помогают.
 

Кром

Новичок
>$text = mb_convert_encoding($text, "Windows-1251", "UTF-8");

Вот перед этой строкой, если вывести $text, и поставить в броузене utf8, текст нормально читается?
 

Saturn

Новичок
Кром
тот же "эффект"

как я понимаю, проблема в том, что кодировка какая-то хитрая, вот и стандартные средства не дают конвертировать её... а что за она и как её "разобрать" - ???
 

Кром

Новичок
>тот же "эффект"

Что значит "тот же" давай уже поподробней. Выведи текст из базы и меняй в IE кодировку пока он не отобразится. И сообще, что за кодировка.
 
Сверху