Romario
Новичок
Как переделать кодировку вывода xml.
Здравствуйте, в скрипте есть файл rss.php заточеный под кодировку utf8, млжно ли как нибудь переделать на русскую кодировку Windows-1251?
Здравствуйте, в скрипте есть файл rss.php заточеный под кодировку utf8, млжно ли как нибудь переделать на русскую кодировку Windows-1251?
PHP:
require_once 'init.php';
if(!ENABLE_RSS){
header('Location: index.php');
exit;
}
$expire_where = "AND (EXPIRY_DATE>=".$db->DBDate(time())." OR EXPIRY_DATE IS NULL)";
if(isset ($_REQUEST['p'])){
$limit = LINKS_TOP;
switch($_REQUEST['p']){
case 'd':
$sql = "SELECT * FROM {$tables['link']['name']} WHERE STATUS=2 $expire_where ORDER BY DATE_ADDED DESC";
$tpl->assign('title', ' - Latest Links');
break;
case 'h':
$sql = "SELECT * FROM {$tables['link']['name']} WHERE STATUS=2 $expire_where ORDER BY HITS DESC";
$tpl->assign('title', ' - Top Hits');
break;
}
}
elseif(isset ($_REQUEST['q'])) {
$tpl->assign('title', ' - Search results');
$tpl->assign('description', ' Search results for: '.htmlspecialchars($_REQUEST['q']));
$q = $db->qstr('%'.preg_replace('`\s+`','%', $_REQUEST['q']).'%');
$sql = "SELECT * FROM {$tables['link']['name']} WHERE STATUS=2 AND (URL LIKE $q OR TITLE LIKE $q OR DESCRIPTION LIKE $q) $expire_where";
}elseif($id = get_category()){
$sql = "SELECT * FROM {$tables['link']['name']} WHERE STATUS=2 AND CATEGORY_ID = $id $expire_where";
$path = get_path($id);
$url = '';
$title = ' - ';
for($i=1;$i<count($path);$i++){
if(ENABLE_REWRITE){
$url .= $path[$i]['TITLE_URL'].'/';
}
if($i>1){
$title .= ' > ';
}
$title .= $path[$i]['TITLE'];
}
if(!ENABLE_REWRITE){
$url = 'index.php?c='.$id;
}
$tpl->assign('title', xml_utf8_encode($title));
$tpl->assign('description', xml_utf8_encode($path[count($path)]['DESCRIPTION']));
}
$tpl->assign('url', htmlspecialchars('http://'.$_SERVER['SERVER_NAME'].DOC_ROOT.'/'.$url));
if($limit > 0){
$rs = $db->SelectLimit($sql, $limit);
$links = $rs->GetRows();
}else{
$links = $db->GetAll($sql);
}
$n = count($links);
for($i=0;$i<$n;$i++){
$links[$i]['TITLE'] = xml_utf8_encode($links[$i]['TITLE']);
$links[$i]['DESCRIPTION'] = xml_utf8_encode($links[$i]['DESCRIPTION']);
$links[$i]['URL'] = xml_utf8_encode($links[$i]['URL']);
$links[$i]['RECPR_URL'] = xml_utf8_encode($links[$i]['RECPR_URL']);
$links[$i]['OWNER_NAME'] = xml_utf8_encode($links[$i]['OWNER_NAME']);
$links[$i]['OWNER_EMAIL'] = xml_utf8_encode($links[$i]['OWNER_EMAIL']);
}
if($n>0)
$tpl->assign('links', $links);
header('Content-type: application/xml');
echo $tpl->fetch('rss2.tpl');
?>