Silakan tunggu sedang proses
Selasa Pon 16 April 2024 09:40
learn make rich
share make it perfect
Ayat Suci
karena telah datang seorang buta kepadanya.
(QS. 'ABASA:2)

 otomatis refresh

Javascript ayat
Daftar Fungsi
pasaran
Mencari nama hari dan nama pasaran
pdu2sms
Konversi dari PDU ke Teks SMS
bacarss
Membaca RSS dari beberapa situs
Para Rekan
MyWeblog

Membuat RSS Feed

Aryo Sanjaya
Tidak semua pengunjung suka memasuki website kita (jujur dari hati terdalam), kalaupun mereka terpaksa masuk ke website kita, mungkin mereka cuma ingin melihat bagian yang menarik bagi mereka saja...

Aryo Sanjaya
Selasa Kliwon, 7 Juni 2005

Kalau anda sempat, coba klik pada link pagehits di bagian kanan paling bawah halaman ini. Dari statistik itu, terlihat bahwa kebanyakan pengunjung cuma melihat halaman depan website ini, dan ketika melihat tidak ada perubahan, mereka langsung cabut.

Itu memang cuma sekedar contoh (dan memang datanya tidak 'realtime'), tapi seandainya kita melihat dari sisi pandang pengunjung, mungkin kita pernah berpikir, seandainya saja ada cara lebih mudah -dan murah- untuk melihat adanya berita yang baru, tentu lebih bagus.

Dan RSS muncul untuk menjembatani ini.

RSS merupakan dokumen XML yang dibangun sedemikian rupa, yang menampilkan daftar dari sekumpulan data, dan biasanya merupakan data terbaru, sehingga pengunjung lebih mudah untuk melihat perubahan data. RSS banyak digunakan di News, Blog, atau forum diskusi.

Ketika RSS dipanggil (direquest), maka akan mengembalikan dokumen XML berisi daftar data terbaru, yang nantinya di-parsing sama RSS client, dan ditampilkan pada client. Cara ini lebih mudah dan murah, karena user dapat memilih mana saja yang ingin dibaca lebih lanjut.

Dalam artikel ini akan dibahas cara membuat fitur RSS yang sederhana -banget- pada website kita. Pakai PHP tentu saja :)

Langkah pertama, yakinkan diri anda bahwa dokumen RSS adalah bertipe XML, jadi sedikit banyak anda mesti tau apa itu XML dan aturan mainnya.

Karena bertipe XML, output dari webserver ke client mesti menandakan hal tersebut. Banyak cara untuk itu, misalnya pake AddType pada konfigurasi Apache atau .htaccess, tapi dalam hal ini, kita gunakan fungsi Header.

Pada awal script, tuliskan seperti ini:

<?php
  Header("Content-Type: text/xml");
  echo '<rss version="2.0">
        <channel>
        <title>bengkelprogram.com Articles</title>
        <link>http://www.bengkelprogram.com/</link>
        <description>10 Berita dan Artikel terbaru</description>
        <language>en-us</language>
        <pubDate>'.Date("r").'</pubDate>
        <lastBuildDate>'.Date("r").'</lastBuildDate>
        <generator>bengkelprogram.com RSS Generator</generator>
        <managingEditor>aryo@bengkelprogram.com</managingEditor>
        <webMaster>webmaster@bengkelprogram.com</webMaster>
        ';

Itu merupakan awal RSS yang bagus :)

Yang perlu diperhatikan disini, field tanggal mesti pake format RFC-822. Apa itu, aku kurang tau, yang lebih mudah, script di atas menggunakan fungsi Date("r"), yang akan menghasilkan nilai tanggal dan jam dalam format RFC-822. Beres deh.

Selanjutnya, menampilkan data RSS:

$rc = mysql_query('select *,UNIX_TIMESTAMP(tanggal)
   AS pubDate from berita order by tanggal desc limit 0,10');

while ($r = mysql_fetch_array($rc))
{
  $id = $r['id'];
  $judul = htmlentities(strip_tags($r['judul']), ENT_QUOTES);
  $keterangan = htmlentities(strip_tags($r['keterangan']),
                ENT_QUOTES);
  $pubDate = strftime("%a, %d %b %Y %T %Z",$r['pubDate']);
  echo "<item>";
  echo "<title>$judul</title>";
  echo "<link>berita.php?id=$id</link>";
  echo "<description>$keterangan</description>";
  echo "<pubDate>$pubDate</pubDate>";
  echo "</item>";
}
echo "</channel></rss>";

?>

Sudah, gitu aja. Simpel banget kan? - masih bisa dipersimpel lagi tuh, ya kan weh? :) -

Tentang field-fieldnya, saya rasa gak perlu dibahas mendalam, soale udah jelas banget.
Ya cuma itu fieldnya, title adalah judul per-item, link adalah link data aslinya (di website kita), description ya keterangan singkat masing-masing record. Kalau mau lebih jelas tentang RSS, silakan baca ini.

Yang perlu diperhatikan, pubDate di sini juga mesti pake format RFC-822, tapi karena di MySQL-ku belum ada format itu (ada sih, tapi mesti nyusun satu persatu), maka kita pake fungsi strftime.
Ada juga fungsi strip_tags dan htmlentities, yang sangat penting untuk digunakan, mengingat XML sangat strict terhadap penggunakan karakter, jadi kita mesti ilangin semua karakter mencurigakan :)

Satu lagi, karena isi RSS cuma daftar dokumen terbaru, mestinya yang ditampilkan cuma record terbaru saja (biasanya per tanggal). Tapi karena perubahan dalam website ini lamban, di sini digunakan LIMIT 0, 10, yaitu 10 record terbaru (meski gak begitu baru).

Sekarang, website ini sudah memiliki fitur RSS. Silakan lihat alamat
http://www.bengkelprogram.com/halaman-rss-.html, pake Mozilla Thunderbird, atau RSS client yang lain. Kalo pake browser juga bisa, tapi cuma akan tampil dokumen XML

Untuk meyakinkan bahwa format RSS anda benar, silakan masukkan RSS anda ke Feed Validator.

Met coding :)

(Aryo Sanjaya)

Komentar


Belum ada komentar

Mengisi Komentar





untuk kode program, apit dengan tanda [code][/code].
contoh:

[code]
(kode program)
[/code]



Daftar Artikel PHP

» Menghitung Jarak Waktu (4)
Rabu Wage, 17 Mei 2006

Mengitung jarak waktu dan menampilkan sebagai Javascript

» Grabbing Kurs Dari BI (10)
Rabu Pahing, 5 April 2006

Grabbing data adalah tindakan tidak sopan. Tapi kali ini yang dibahas adalah teknik grabbing, masalah moral dan etika silakan cari sendiri (inspired by Iwan Fals)

» Autocomplete Pada Form (1)
Rabu Pahing, 5 April 2006

Contoh script berikut ini menampilkan cara mengisi value field suatu form, tanpa harus melakukan submit data

» Merubah Isi Combobox (1)
Selasa Legi, 4 April 2006

Pada artikel ini dibahas bagaimana cara merubah isi suatu combobox, sesuai dengan isi combobox lain yang dipilih oleh user

» Membuat Tampilan Perhalaman (11)
Jum'at Pon, 17 Maret 2006

Masih banyak yang menanyakan cara untuk menampilkan data perhalaman



Halaman:    1  2  3  >  

Artikel Rame
Aplikasi Handphone (250)
Senin Pon, 20 Februari 2006

Mengirim SMS dari PC (208)
Senin Wage, 28 November 2005

Membaca SMS dari PC (162)
Selasa Pahing, 14 Juni 2005

Source SMS Autorespond (66)
Senin Legi, 24 April 2006

Penyembunyian Password di Database (36)
Kamis Kliwon, 2 Juni 2005

Bukutamu
» Imam Izzatir Rizzan
Jum'at Kliwon
7 Juli 2006

» adindri
Selasa Pahing
4 Juli 2006

» Je Malakian
Selasa Pahing
4 Juli 2006

» A.Azis
Jum'at Pon
30 Juni 2006

» zorro
Kamis Pahing
29 Juni 2006


Halaman Bukutamu
Lain-lain
User online: 9
User login: 0

user/passwd: bpuser

Status Y!M
Saya sedang Offline. Silakan gunakan menu Kontak atau tinggalkan pesan di Yahoo! Messenger pada Id: aryo_sanjaya
© 2005-2024 BengkelProgram.com