Home » Internet, Programmings

Membuat RSS Feed dengan PHP

Author : Izul Cyber Cafe 6 February 2009 1,003 views 11 Comments

rss_sniffelsSudah lama juga tidak posting, akhirnya saat libur ujian semester kali ini saya dapat menulis kembali di cafe ini, sebenarnya sudah ada beberapa judul artikel yang telah saya siapkan, tapi akhirnya artikel ini lah yang akhirnya memenuhi syarat untuk tampil lebih dulu.

Oya sekalian mengabarkan, untuk teman2 yang sudah memakai ShoutBox buatan Izul Cyber Cafe, sekarang anda bisa mendownload Upadate terbarunya, sudah dilengkapi smile, halaman admin, dan captha(security code), silahkan download disini source nya.

http://izulcybercafe.com/shouticc.zip

Oke kita lanjut, kali ini kita akan mencoba membuat RSS Feed untuk website buatan kita sendiri.

Apasih RSS ? RSS adalah singkatan dari Really Simple Syndication yaitu sebuah contoh web feed yang memiliki logo seperti gambar diatas, hampir disetiap blog ada. Dengan RSS kita bisa membaca berita dari sebuah situs lansung di website kita sendiri atau di situs feed reader seperti FEED BURNER, jadi tidak perlu membuka situs yang bersangkutan untuk membaca artikel terbarunya

Bagaikan McDonalds dengan layanan delivery 24 jam dalam 7 hari yang ada di dunia maya. .

Contoh : Misalnya kamu ingin mengetahui berita terbaru dari izulcybercafe.com, kamu tidak harus membuka situs izulcybercafe.com, karena dengan RSS anda bisa melihat berita terbaru dari www.izulcybercafe.com langsung dari situs/blog kamu, tinggal ambil alamat RSS nya, misal URL untuk RSS detik.com yaitu :

http://izulcybercafe.com/?feed=rss2

copy URL tersebut, lalu masukan sebuah Widget RSS kedalam website/blog kamu, lalu Paste URL tadi ke situ, maka ketika kamu membuka halaman depan situs kamu, maka Berita-berita terbaru dari izulcybercafe.com akan muncul di situs kamu, jadi tidak perlu membuka situs izulcybercafe.com kan ?

Lagi – lagi.

Bagaikan Restoran dengan layanan delivery 24 jam dalam 7 hari yang ada di dunia maya ( di izulcybercafe khususnya :) . .

rss_wid

rss_widget

Biasa nya di Blog sudah tersedia fasilitas tersebut, tapi bagai mana kalau situs yang kita buat sendiri (Bukan Blog), untuk itu kita harus menulis kodenya sendiri, lalu menguploadnya ke situs hosting.

Kita coba buat langsung saja, kita hanya butuh sebuah file PHP dan sebuah database sebagai berikut.

Script – 1.

—————————————————————-

create database feed;

use database feed;

CREATE TABLE `rss` (
`id` int(11) NOT NULL auto_increment,
`title` varchar(100) collate latin1_general_ci NOT NULL,
`content` text collate latin1_general_ci NOT NULL,
`date` date NOT NULL,
PRIMARY KEY  (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=4 ;

INSERT INTO `rss` VALUES (1, ‘Obama dilantik’, ‘Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean velit.’, ’2009-01-16′);
INSERT INTO `rss` VALUES (2, ‘Gaza makin mencekam’, ‘Ut vitae magna eget purus viverra interdum.’, ’2009-01-16′);
INSERT INTO `rss` VALUES (3, ‘SBY mencalonkan diri lagi.’, ‘Phasellus ullamcorper. Nam sed nisl. Curabitur aliquet porta augue. Cras convallis dui at turpis’, ’2009-01-16′);

—————————————————————-

Penjelasan :

Script tersebut akan membuatkan kamu sebuah database bernama feed, dengan tabel bernama rss yang terdiri dari 4 field yaitu (id, title, content, date) lengkap dengan isi beritanya.

Membuatnya bisa dengan PHPMyAdmin.

Script – 2.

// ———— >index.php

—————————————————————-

<?php
$host = “localhost”;
$user = “root”;
$pass = “”;
$db = “feed”;

$connection = mysql_connect($host,$user,$pass)or die(“Koneksi ERROR”);
mysql_select_db($db, $connection);

header(“Content-type: text/xml; charset=utf-8″);
print “<?xml version=\”1.0\” encoding=\”utf-8\”?>\n”;
print “<rss version=\”2.0\”>”;
print “<channel>”;
print “<title>Izul Cyber Cafe</title>\n”;
print “<link>http://www.izulcybercafe.com</link>\n”;
print “<description>RSS Izul Cyber Cafe</description>”;

$query = “select * from rss order by id desc limit 0,10″;

$result = mysql_query($query);

while ($row = mysql_fetch_array($result, MYSQL_ASSOC)){
$scontent = $row['content'];
$xdate = date(“d F Y”,$time);
$content_decode = html_entity_decode($scontent);

print “\t<item>\n”;
print “\t\t<title> ” .$row["title"]. “</title>\n”;
print “\t\t<link>http://tvone.com</link>\n”;

print “\t\t<pubDate>$xdate</pubDate>\n”;
print “\t\t<description>”;
echo htmlentities($content_decode);
print “</description>\n”;

print “\t</item>\n”;
print “\n”;
}
print “</channel>”;
print “</rss>”;
?>

-—————————————————————

Penjelasan.

  • Script tersebuat akan men-generate dokumen XML sesuai dengan RSS 2.0
  • Simpan file tersebut di sebuah lokasi, misal di : www.domainkamu.com/rss/index.php
    lokasi tersebut akan menjadi lokasi Web Feed (RSS Feed) kamu.
  • Sesuaikan konfigurasi host,user,pass dengan konfigurasi web server kamu.
  • Perhatikan query : ORDER BY id desc limit 0,10 yaitu akan menampilkan artikel dengan urutan besar ke kecil sebanyak 10 dimulai dari 0.
  • Perhatikan juga baris echo htmlentities($content_decode);
    Penggunaan fungsi htmlentities sangat penting disini untuk menghindarkan kesalahan karakter jika konten Kamu dalam format HTML.
  • Jika anda hanya ingin memberikan sebagian konten, Anda perlu membuat fungsi khusus (atau field tambahan) untuk menampung sebagian konten tersebut.

Kurang lebih anda akan mendapat tampilan seperti gambar berikut.

rss

11 Comments »

  • imammulya said:

    wah boleh juga tuh postingan nya,jadi tau niy gw cara buat rss dengan PHP,makasih banyak bang Zul…….

  • joanne said:

    wah ternyata cukup mudah kah?
    padahal dulu temanku buat RSS reader utk tugas akhir hahhahaha

  • Yohan said:

    Menarik tapi gue gak ngerti banget sama gituan huebat :D salam kenal

  • denologis said:

    wah, saya pake wordpress. jadi sudah ada RSS feed readernya :D

  • aNGga Labyrinth™ said:

    Wahh,, keren ya..

    walaupun tahu tapi diriku selama ini merasa “belum perduli” dengan hal ini, jadi blom mempelajari lebih jauh, hanya sekedar tau.

    Dengan postingan ini malah jadi tau alurnya, makasih ya kk..
    :)

  • Andri said:

    whehe.. keren… seep deh.. thanks infonya… :D

  • IzulCyberCafe (author) said:

    #All :: Hehhehehee…..Terima kasih…..

  • balladona said:

    dari sini saya tau tentang umpan itu…..
    salam kenal

  • Edi Psw said:

    Ntar dipraktekkan di rumah

  • zoel said:

    owh githu tohh….

  • madhysta said:

    wah saya belum mampu sampai ke sini…. masih taman kanak-kanak…. hehehehe….. tapai ga ada salahnya saya pelajari juga, siapa tahu nanti bisa kaya mas izul… hehehehe…

Leave your response!

Add your comment below, or trackback from your own site. You can also subscribe to these comments via RSS.

Be nice. Keep it clean. Stay on topic. No spam.

You can use these tags:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="">

This is a Gravatar-enabled weblog. To get your own globally-recognized-avatar, please register at Gravatar.