Php ,xml проблема с кодировкой и не обрабатывает "&" кто поможет ?

joni666

Постоялец
Регистрация
30 Окт 2007
Сообщения
65
Реакции
16
Решил сделать вывод rss с модуля Dletrack
Нашол скрипт для создания rss ленты..
Всё работает ток переменные отдают не в той кодировки .. =( может кто подскажет в чём проблема ?

Код:
<?php
 
define( 'DATALIFEENGINE', true );
define( 'ROOT_DIR', '..' );
define( 'ENGINE_DIR', dirname( __FILE__ ) );
 
@error_reporting ( E_ALL ^ E_WARNING ^ E_NOTICE );
@ini_set ( 'display_errors', true );
@ini_set ( 'html_errors', false );
@ini_set ( 'error_reporting', E_ALL ^ E_WARNING ^ E_NOTICE );
 
if( $config['http_home_url'] == "" ) {
 
    $config['http_home_url'] = explode( "engine/mp3rss.php", $_SERVER['PHP_SELF'] );
    $config['http_home_url'] = reset( $config['http_home_url'] );
    $config['http_home_url'] = "http://" . $_SERVER['HTTP_HOST'] . $config['http_home_url'];
 
}
include_once ENGINE_DIR . '/modules/functions.php';
 
// Прежде всего нужно указать, что файл будет в XML формате
header('Content-type: application/xml');
 
/* Затем впишем вступительную информацию
кто мы, адрес самого ресурса, электронный адрес веб-мастера и тому подобное */
$data="<?xml version=\"1.0\" encoding=\"windows-1251\" ?> ";
$data.= "<rss version=\"2.0\" encoding=\"windows-1251\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\">";
$data.= "<channel>";
$data.= "<title>Mp3Woober - Популярна mp3 Музыка бесплатно и без регистрации mp3 новинки слушать Ежечасные обновления. Хит-парады и рейтинги.</title>";
$data.= "<link>http://mp3woober.ru/</link>";
$data.= "<description>Наш Сервис, позволяющий скачать музыку бесплатно и без регистрации! Мы даём возможность всем желающим, без лишних проблем скачать бесплатно музыку mp3 в хорошем качестве, на высокой скорости.</description>";
$data.= "<copyright>Woober</copyright>";
$data.= "<language>ru</language>";
$data.= "<managingEditor>e-mail редактора</managingEditor>";
$data.= "<webMaster>jyvvi@ya.ru</webMaster>";
 
/* Подключимся к нашей базе данных имя пользователя базы, пароль, название самой базы */
$link = mysql_connect ("localhost", "root", "123456") or die("Невозможно соединиться!");
 
mysql_select_db("woobermp3", $link);
 
$query="SELECT * FROM mp3_dt_tracks ORDER BY id DESC";
 
$result = mysql_query($query, $link);
 
//пройдемся по двадцати последним вытаскивая, то что нам нужно
for ($i=1; $i<10; $i++)
{
 
// Вытягиваем нужные нам колонки
$row = mysql_fetch_array($result);
$date = $row['date'];
$id = $row['id'];
$title = $row['title'];
$artist = $row['artist'];
$text = $row['text'];
$author = $row['uploader_name'];
$genre = $row['tags_genre'];
$size = $row['file_size'];
$bitrate = $row['tags_bitrate'];
$time = $row['upload_time'];
 
 
 
// Добавляем нужную нам информацию в такую структуру:
$data.="<item>";
$data.="<title>".$artist.  " - "  .$title."</title>";
$link_short = 'music/track/'.totranslit( $row['artist'] ).'/'.$row['id'] .'-'. totranslit( $row['title'] ) . '/';
$data.= "<link>http://mp3woober.ru/".$link_short." </link>";
$data.= "<category>Pop</category>";
$data.="<description>Трек " .$title." от исполнителя ".$artist.  " в формате Mp3,  размер - ".$size."Кb, Битрейт ".$bitrate.". Можете прослушать или скачать Mp3 трек ".$artist.  " - "  .$title." , совершенно бесплатно! и без регистрвции. Мы даём возможность всем желающим, без лишних проблем скачать бесплатно музыку mp3 в хорошем качестве, на высокой скорости. Без раздражающей всплывающей рекламы.</description>";
$data.="<dc:creator>".$author."</dc:creator>";
$data.="<dc:date> </dc:date>\n</item>";
}
 
// И, наконец, закрываем базу
mysql_close($link);
 
// Добавляем «хвостовую» информацию
$data=$data."</channel></rss>";
 
// Выводи это всё
print($data);
?>
_ttp://mp3woober.ru/engine/mp3rss.php

и ещё бывает выдаёт ошибку когда в Тайтле встречается символ "&"
 
Попробуй
после mysql_select_db("woobermp3", $link);
mysql_query('SET NAMES cp1251')
 
Назад
Сверху