Posted by : Unknown Rabu, 02 Januari 2013

RSS adalah kependekan dari Really Simple Syndication, digunakan agar memudahkan pengunjung untuk mengetahui berita atau artikel dari sebuah website atau blog. Jika kita berlangganan RSS feed dalam sebuah website maka secara otomatis RSS reader atau browser yang support dengan RSS feed akan secara otomatis memberikan tanda bahwa ada artikel yang terbaru dari website atau blog itu, tanpa harus mengunjung web tersebut terlebih dulu.

Jika kita memiliki Website atau Blog RSS sangat penting agar pengunjung setia kita tetap memiliki update terhadap informasi yang disampaikan di web atau blog kita. Berikut sedikit langkah untuk membuat RSS sesuai kebutuhan informasi yang akan disampaikan.

Sebelumnya harus dipahami struktur standar dari RSS feed dan dapat dilihat di "The Anatomy of an RSS Feed". Jika kita telah memiliki struktur database yang ada pada website kita maka kita dapat mengambil beberapa field dari database itu untuk digunakan dalam RSS feed yang dibuat, dalam kesempatan ini dibuat contoh struktur database sebagai berikut :
1. Tabel dari RSS item :
CREATE TABLE `webref_rss_items` (
  `id` int(11) NOT NULL auto_increment,
  `title` text NOT NULL,
  `description` mediumtext NOT NULL,
  `link` text,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
2. Tabel dari detail isi RSS item
 CREATE TABLE `webref_rss_details` (
  `id` int(11) NOT NULL auto_increment,
  `title` text NOT NULL,
  `description` mediumtext NOT NULL,
  `link` text,
  `language` text,
  `image_title` text,
  `image_url` text,
  `image_link` text,
  `image_width` text,
  `image_height` text,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
Setelah menambahkan dan mengisi beberapa dari kedua tabel di atas berikut adalah Buat konektor PHP ke mysql, simpan dengan nama "koneksi_mysql.php" :

<?php

DEFINE ('DB_USER', 'username_anda');
DEFINE ('DB_PASSWORD', 'password_anda');
DEFINE ('DB_HOST', 'localhost');
DEFINE ('DB_NAME', 'nama_database');

$dbc = @mysql_connect (DB_HOST, DB_USER, DB_PASSWORD) OR die ('Could not connect to MySQL: ' . mysql_error() );
mysql_select_db (DB_NAME) OR die ('tidak dapat terkoneksi ke database: ' . mysql_error() );

?>

Setelah itu maka dibuat sebuah PHP class untuk memindahkan data di MySQL ke RSS feed yang berbentuk XML, disimpan dengan nama rss.class.php :

<?php

class RSS
{
public function RSS()
{
require_once ('direktori dari.../koneksi_mysql.php');
}

public function GetFeed()
{
return $this->getDetails() . $this->getItems();
}

private function dbConnect()
{
DEFINE ('LINK', mysql_connect (DB_HOST, DB_USER, DB_PASSWORD));
}

private function getDetails()
{
$detailsTable = "webref_rss_details";
$this->dbConnect($detailsTable);
$query = "SELECT * FROM ". $detailsTable;
$result = mysql_db_query (DB_NAME, $query, LINK);

while($row = mysql_fetch_array($result))
{
$details = '<?xml version="1.0" encoding="ISO-8859-1" ?>
<rss version="2.0">
<channel>
<title>'. $row['title'] .'</title>
<link>'. $row['link'] .'</link>
<description>'. $row['description'] .'</description>
<language>'. $row['language'] .'</language>
<image>
<title>'. $row['image_title'] .'</title>
<url>'. $row['image_url'] .'</url>
<link>'. $row['image_link'] .'</link>
<width>'. $row['image_width'] .'</width>
<height>'. $row['image_height'] .'</height>
</image>';
}
return $details;
}

private function getItems()
{
$itemsTable = "webref_rss_items";
$this->dbConnect($itemsTable);
$query = "SELECT * FROM ". $itemsTable;
$result = mysql_db_query (DB_NAME, $query, LINK);
$items = '';
while($row = mysql_fetch_array($result))
{
$items .= '<item>
<title>'. $row["title"] .'</title>
<link>'. $row["link"] .'</link>
<description><![CDATA['. $row["description"] .']]></description>
</item>';
}
$items .= '</channel>
</rss>';
return $items;
}

}

?>

Yang terakhir adalah memanggil PHP class yang telah dibuat di atas kedalam XML agar dapat melihat RSS feed, simpan dengan nama feed.xml :

<?php
header("Content-Type: application/xml; charset=ISO-8859-1");
include("direktori file.../rss.class.php");
$rss = new RSS();
echo $rss->GetFeed();
?>

Catatan :

  1. Agar Apache Webserver dapat mengkompile script php yang berada dalam file feed.xml, dengan menambahkan baris "AddHandler application/x-httpd-php .xml". 
  2. Cek terlebih dahulu apakah RSS dapat dibaca atau tidak di website RSS validator seperti validator.w3.org.

Demikian sharing mengenai Membuat RSS feed dengan PHP dan MySQL, semoga dapat digunakan dengan baik

Description: Membuat RSS feed dengan PHP dan MySQL
Rating: 4.5
Reviewer: Unknown
ItemReviewed: Membuat RSS feed dengan PHP dan MySQL

Leave a Reply

Monggo Tinggalkan Jejak Kaks :)

Subscribe to Posts | Subscribe to Comments

Welcome to My Blog

Popular Post

Labels

Arsip Blog

Followers

- Copyright © 2013 shad0w-share | Designed by Johanes Djogan -