Wednesday, July 28, 2010

Kurs Mata Uang Dengan RSS


Wiget kurs mata uang biasa ditambilkan pada situs-situs berita seperti detik, kompas dan lain sebagainya. banyak tehnik yang digunakan untuk mendapatkan data kurs yang bisa update dari sumbernya. yang sering digunakan biasanya tehnik grabbing, yaitu mengambil beberapa bagian dari sebuah situs. tehnik ini sangat beresiko, karena kita mengambil source dari situs lain tanpa permisi, disamping itu juga akan membuat situs kita dan situs yang digrabbing semakin lama untuk dibuka.disamping itu juga ketika situs yang digrabbing berubah tampilan maka coding kita juga harus menyesuaikan.

Situs yang sering dijadikan acuan untuk grabbing biasanya situs BI, BCA dan Mandiri. nah saya mencoba berbagi dengan menggunakan teknik 2 yaitu dengan menggunakan RSS atau XML, dengan cara ini lebih aman dan pastinya mudah dalam coding. kenapa lebih mudah?

  1. RSS formatnya sudah seragam dan dipakai standard dalam situs-situs yang menyedian berita.
  2. Formatnya XML, lebih mudah dalam hal parsing data
Sayangnya situs-situs yang dijadikan sumber kurs mata uang di indonesia masih sangat jarang :-(

Berikut saya sertakan contoh penggunaan dan pemakaiannya menggunakan PHP

<html>
<head>
<title>Kurs Mata Uang dengan RSS </title>
</head>
<body>
<style type="text/css">
.currency table { border-collapse: collapse; margin: 5px 0; padding: 0; }
.currency table tbody { border-bottom: 1px solid #eee; }
.currency table th { padding: 5px 10px; font: .9em Arial, Helvetica, sans-serif; background: #0991D1; border: 1px solid #17AFF5; border-bottom: 2px solid #054D71; color: #fff; text-shadow: 1px 1px 0 #666; }
.currency table td { padding: 5px 10px; font: .8em Arial, Helvetica, sans-serif; border-bottom: 1px solid #ccc; }
.currency span { display: blockl; padding: 4px; font: .7em Arial, Helvetica, sans-serif; font-style: italic; }
.currency table tr.odd { background: #fff; }
.currency table tr.even { background: #F2F2F1;}
</style>

<div class="currency">
<table>
<tr>
<th>Mata Uang</th>
<th>Jual</th>
<th>Beli</th>
</tr>
<?php
// URL Sumber RSS
$url = "http://feeds.feedburner.com/Kurs";

$rss = simplexml_load_file($url);
if($rss)
{
echo '<h1>'.$rss->channel->title.'</h1>';
echo 'Update Terakhir '.$rss->channel->lastBuildDate.'';
$items = $rss->channel->item;

//Perulangan untuk item
foreach($items as $item)
{
$title = $item->title;
$link = $item->link;

// Memecah array menjadi 3 bagian
// mata uang, kurs jual, kurs beli
$kurs = explode(" ",$title);

echo '<tr>';
echo '<td><a href="'.$link.'">'.$kurs[0].'</a></td>
<td align="right"><a href="'.$link.'">'.number_format($kurs[1],2).'</a></td>
<td align="right"><a href="'.$link.'">'.number_format($kurs[2],2).'</a></td>';
echo '</tr>';


}// end or foreach

}
?>
</table>
</div>
</body>
</html>

2 comments:

Anonymous said...

Great posting. Tidak sabar untuk membaca yang berikutnya:)

Anonymous said...

Great posting. Tidak sabar untuk membaca yang berikutnya:)