Php ile rss takibi yapımı

Tarih : 23-03-2009 | imza : Burak | Kategori : Yazılarım

0

rssPhp ile kategorilerinize göre özel rss takibi hazırlayabilirsiniz. Hemde bir tek dosyayla bütün kategorilerinizin takibini yaptırabilirsiniz. Öncelikle rss hakkında biraz bilgi vereyim. Türkçe’de Zengin Site Özeti anlamına gelir. Rss’in altyapısı xml dosyalarıdır. Bu yazımda ise xml dosyasını php içerisine gömerek ve istediğimiz kategoriye göre tek dosyada rss takibimizi yapmayı anlatıyorum.Rss’i destekleyen tüm sitelerin rss adresi vardır. Ve bu adresleri RSS okuyucunuza okutup o siteye yeni bir içerik girildiğinde anında haberdar olursunuz. Sitenize girmeden içerik girilmiş mi girilmemiş mi bilginiz olur. Yeni eklenen içerik,  başlığından linkine kadar ayağınıza gelir. Sizede okumak incelemek kalır. Günümüzdeki birçok tarayıcı rss okuyucusunu içerisinde barındırıyor. Bunun haricinde Mozilla Thunderbird programıyla hem maillerinizi okuyabilir, hemde rss adresi okutabilirsiniz.

Aşağıda basit bir rss takibinin kodlarını veriyorum. Gerekli açıklamaları aşağıda yazıyorum..

[php]
<? include "baglanti.php";

header("Content-type: text/xmlnn");

echo "<?xml version="1.0" encoding="ISO-8859-9"?>
<rss version="2.0">
<channel>
<title>RSS BAŞLIĞINIZ</title>
<description>SİTENİZİN TANIMI</description>
<link>http://www.siteniz.com/</link>
<language>en-us</language>";
$kategori = $_GET['kat'];
mysql_query("SET NAMES latin5");
$yazilar = mysql_query("SELECT * FROM yazilariniz where kategori=’$kategori’ ORDER BY id DESC LIMIT 20");
while($yazi = mysql_fetch_array($yazilar)) {
$link = "http://www.siteniz.com/".$kategori;
echo "
<item>
<title>".$yazi['baslik']."</title>
<description>".$yazi['yazi']."</description>
<link>Buraya yazı linki verilecek. Sitenizde yazılar nasıl linklendiriliyorsa ona göre ayarlayabilirsiniz.</link>
</item>";
}

echo "
</channel>
</rss>";

?>[/php]

Buradaki mantığı açıklıyorum. Standart xml dosyamızın bazı taglarını sayfamız içerisinde oluşturduk.

Rss linkimiz şu şekilde olmalı : rss.php?kategori=internet

Daha sonra linkten GET methoduyla gelen kategori değerini çektik. Ben yukarıda herhangi bir filtreleme yapmadım ama siz güvenlik açıkları için önlemleri almayı unutmayın. Alabileceğiniz bazı önlemleri önceki makalelerimde bulabilirsiniz.
Daha sonra Türkçe karakter sorunu yaşanmaması için MysqlLorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. karakter karşılaştırmasını latin5 olarak ayarlattık. Veritabanı sorgumuzu başlattık. Sorguda; yazilar tablosundaki, linkten gelen kategoride olan yazıları filtreledik ve id sırasına göre yeniden eskiye doğru sıraladık. Max 20 tanesini gösterecek. Ve bunu döngümüzle rss ögesi olarak döndürdük. Gördüğünüz üzere aslında mantık basit. Mantığı kurduktan sonra rss takip sisteminizi bile kendiniz hazırlayabilirsiniz.

Yorum yazın