DizeL
Новичок
Не могу сгенерировать XML в кодировке UTF-8
Пишу админку для флеш-сайта.
Проблема такая:
Я в XML передаю флэшу контент.
Чтобы отображать кириллицу, надо передавать данные в UTF-8 кодировке.
Отображаются каракули.
Оказывается, нужно чтоб не только заголовок передавал, что данные в этой кодировке, но и сам файл имел там какие-то 3 бита в начале... Поставил эти биты и сам файл в ТОТАЛе в UTF-8.
Теперь стало так, что сам контент опять передается не в UTF-8...
Пиши код файла:
Вот такой код.
Генерируется по адресу:
http://www.goword.ru/dj/admin-dj/xml.php
Почему-то данные не переводятся в UTF-8...
Кто может объяснить почему и что сделать, пожалуйста, посоветуйте что-то.
Заранее, спасибо.
-~{}~ 07.12.07 16:35:
Кстати, пробовал делать заголовки:
Всё-равно ничего не получается.
Пишу админку для флеш-сайта.
Проблема такая:
Я в XML передаю флэшу контент.
Чтобы отображать кириллицу, надо передавать данные в UTF-8 кодировке.
Отображаются каракули.
Оказывается, нужно чтоб не только заголовок передавал, что данные в этой кодировке, но и сам файл имел там какие-то 3 бита в начале... Поставил эти биты и сам файл в ТОТАЛе в UTF-8.
Теперь стало так, что сам контент опять передается не в UTF-8...
Пиши код файла:
PHP:
<?PHP
include "library.php";
header("content-type: text/xml");
echo "<?xml version=\"1.0\"?>
<mix>
";
$q="SELECT * FROM style";
$dbdata=mysql_query($q,$result);
$ppnumber=0;
while ($row = mysql_fetch_assoc($dbdata))
{echo "<style id=\"$ppnumber\" title=\"$row[title]\">
";
$q="SELECT * FROM item WHERE style_ID=$row[ID] ORDER BY 'title' DESC";
$dbdata_item=mysql_query($q,$result);
$ppnumber_item=0;
while ($item = mysql_fetch_assoc($dbdata_item))
{echo"<item url=\"$item[links]\" id=\"$ppnumber_item\" title=\"".utf8_encode($item[title])."\" date=\"".utf8_encode($item[release_date])."\" info=\"".utf8_encode ($item[notes])."\" track_ID=\"$item[ID]\">
";
// выводим трэки
echo "<track>
";
input_tracklist_xml($item[tracklist]);
echo "</track>
";
// выводим комментарии
echo " <comments>
";
$q="SELECT * FROM comments WHERE item_ID=$item[ID]";
$dbdata_comments=mysql_query($q,$result);
$ppnumber_comments=0;
while ($comments = mysql_fetch_assoc($dbdata_comments))
{echo "<item id=\"$ppnumber_comments\" name=\"".utf8_encode($comments[name])."\" title=\"".utf8_encode($comments[text])."\" />";
$ppnumber_comments++;
};
echo " </comments>
";
echo "</item>
";
};
$ppnumber++;
echo "</style>
";
};
echo "</mix>";
?>
Генерируется по адресу:
http://www.goword.ru/dj/admin-dj/xml.php
Почему-то данные не переводятся в UTF-8...
Кто может объяснить почему и что сделать, пожалуйста, посоветуйте что-то.
Заранее, спасибо.
-~{}~ 07.12.07 16:35:
Кстати, пробовал делать заголовки:
PHP:
header("content-type: text/xml; charset=utf-8");
echo "<?xml version=\"1.0\" encoding=\"utf-8\"?>
<mix>
";