Merhabalar.. Aşşağıdaki kodda karakter sorunu var nasıl düzeltiriz.
Bazı yazı başlıkları şöyle gözüküyor:
Öğrenci 'Allah' İsmini
Aliya İzzetbegoviç: Türkiye'nin Geleceği
Papa'ya Neden IŞİD'in Hedefinde
<?php
$resim_goster = TRUE;
header ("Content-type: application/rss+xml; charset=utf-8");
$ek = '';
if(isset($_GET['kategori'])) {
$ek = "-".$_GET['kategori'];
}
$cachefile = "cache/rss-yandex-news".$ek.".rss";
# 15 dakika
$cachetime = 60 * 5;
if (file_exists($cachefile)){
if(time() - $cachetime < filemtime($cachefile)){
readfile($cachefile);
exit;
}else{
unlink($cachefile);
}
}
ob_start();
include "_boot.php";
$where = '';
if(isset($_GET['kategori'])) {
$where.= "AND kategori = '".safe($_GET['kategori'],'string')."'";
}
echo "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n";
?>
<rss xmlns:yandex="http://haber.yandex.com.tr/" xmlns:media="http://search.yahoo.com/mrss/" version="2.0">
<channel>
<title><?=temizlik_SM($ayar['siteadi'],false)?></title>
<link><?=$ayar['url']?></link>
<description><?=temizlik_SM($ayar['slogan'],false)?></description>
<image>
<title><?=temizlik_SM($ayar['siteadi'],false)?></title>
<link><?=$ayar['url']?></link>
<url><?=$ayar['url']?>images/banner/<?=$ayar['logo']?></url>
</image>
<?php
$onceki = date('Y-m-d H:i:s', strtotime(date('Y-m-d H:i:s').' -1 week'));
$news = $db->getir("SELECT id, baslik, kategori, spot, hta, detay, DATE_FORMAT(tarih,'%a, %d %b %Y %T') AS tarihx, resim, hta FROM haber WHERE aktif = '1' AND tarih >= '".$onceki."' $where ORDER BY tarih DESC LIMIT 900");
if($news) {
foreach($news AS $row) {
$row['baslik'] = temizlik_SM($row['baslik']);
$row['spot'] = temizlik_SM($row['spot']);
$row['detay'] = strip_tags(temizlik_SM($row['detay']));
?>
<item>
<link><?=$ayar['url'].$row['hta']."-h".$row['id']?>.html</link>
<pubDate><?=$row['tarihx']?> +0300</pubDate>
<category><![CDATA[<?=$row['kategori']?>]]></category>
<title><![CDATA[<?=$row['baslik']?>]]></title>
<description><![CDATA[<?=$row['spot']?>]]></description>
<yandex:full-text><![CDATA[<?=$row['detay']?>]]></yandex:full-text>
<yandex:related>
<link url="<?=$ayar['url'].$row['hta']."-h".$row['id']?>.html"><?=tirnaksil($row['baslik'],false)?></link>
</yandex:related>
</item>
<? } } ?>
</channel>
</rss>
<?php
function temizlik_SM($s) {
$bul = array("&", "<", ">", "'", "\"", "&#39;", "’", "–");
$degistir = array("&", "<", ">", "", """, "", "", "");
return str_replace($bul,$degistir,$s);
}
file_put_contents($cachefile, ob_get_contents());
ob_end_flush();Ustalar bir el atın size zahmet...