kurs sederhana menggunakan PHP

19 Aug 2006 | Kel. PHP |

Sudah tentu semua pernah melihat situs yang menampilkan kurs mata uang. Sedikit trik kita bisa mengambil kurs mata uang secara realtime menggunakan PHP. Code ini sebenarnya banyak di internet, karena ini memang saya ambil dari sana, hanya saja sudah lupa dimana dulunya :D.
Dengan berpedoman pada contek, modif dan kembangkan sendiri jadilah seperti yang dibawah ini:

PHP code :

if (($fp = @fopen(”http://localhost/kurs.htm”, “r”)) === false)
die(”ERROR: gagal membuka URL”);

$content = “”;

while ($chunk = fread($fp, 8192)) $content .= $chunk;

if (!$content) die(”ERROR: doc kosong”);

if (preg_match(’/USD.+\n.+>([\d].*)<.+\n.+>([\d].*)</’, $content, $m))
$smarty->assign(’usd1′, $m[1]);
$smarty->assign(’usd2′, $m[2]);

if (preg_match(’/EUR.+\n.+>([\d].*)<.+\n.+>([\d].*)</’, $content, $m))
$smarty->assign(’eur1′, $m[1]);
$smarty->assign(’eur2′, $m[2]);

if (preg_match(’/AUD.+\n.+>([\d].*)<.+\n.+>([\d].*)</’, $content, $m))
$smarty->assign(’aud1′, $m[1]);
$smarty->assign(’aud2′, $m[2]);

if (preg_match(’/GBP.+\n.+>([\d].*)<.+\n.+>([\d].*)</’, $content, $m))
$smarty->assign(’gbp1′, $m[1]);
$smarty->assign(’gbp2′, $m[2]);

if (preg_match(’/JPY.+\n.+>([\d].*)<.+\n.+>([\d].*)</’, $content, $m))
$smarty->assign(’jpy1′, $m[1]);
$smarty->assign(’jpy2′, $m[2]);

fclose($fp);

Contoh template Smarty nya:

<table width=”95%” cellspacing=”0″ cellpadding=”5″ border=”0″ align=”center”>
<tr bgcolor=”#CC9966″>
<td class=”kurs-title”>KURS</td>
<td class=”kurs-title”>JUAL</td>
<td class=”kurs-title”>BELI</td>
</tr>
<tr>
<td class=”kurs-title2″>USD</td>
<td class=”kurs-content”>{$usd1}</td>
<td class=”kurs-content”>{$usd2}</td>
</tr>
<tr>
<td class=”kurs-title2″>EUR</td>
<td class=”kurs-content”>{$eur1}</td>
<td class=”kurs-content”>{$eur2}</td>
</tr>
<tr>
<td class=”kurs-title2″>AUD</td>
<td class=”kurs-content”>{$aud1}</td>
<td class=”kurs-content”>{$aud2}</td>
</tr>
<tr>
<td class=”kurs-title2″>GBP</td>
<td class=”kurs-content”>{$gbp1}</td>
<td class=”kurs-content”>{$gbp2}</td>
</tr>
<tr>
<td class=”kurs-title2″>JPY</td>
<td class=”kurs-content”>{$jpy1}</td>
<td class=”kurs-content”>{$jpy2}</td>
</tr>
</table>

Contoh file HTML sumber kurs nya:

<html><head><title>kurs</title>

<meta http-equiv=”Content-Type” content=”text/html; charset=iso-8859-1″>
<body>
<table border=”0″ cellpadding=”2″ cellspacing=”1″ width=”100%”>
<tr bgcolor=”#ff6600″>
<td class=”textheadkurs”>Kurs</td>
<td class=”textheadkurs”>Jual</td>
<td class=”textheadkurs”>Beli</td>
</tr>
<tr bgcolor=”#ffecda”>
<td class=”text-n”>USD</td>
<td class=”text-n”>9450</td>
<td class=”text-n”>9500</td>
</tr>
<tr bgcolor=”#ffecda”>
<td class=”text-n”>EUR</td>
<td class=”text-n”>11854</td>
<td class=”text-n”>15000</td>
</tr>
<tr bgcolor=”#ffecda”>
<td class=”text-n”>AUD</td>
<td class=”text-n”>7137</td>
<td class=”text-n”>7297</td>
</tr>
<tr bgcolor=”#ffecda”>
<td class=”text-n”>GBP</td>
<td class=”text-n”>17234</td>
<td class=”text-n”>17525</td>
</tr>
<tr bgcolor=”#ffecda”>
<td class=”text-n”>JPY</td>
<td class=”text-n”>86.18</td>
<td class=”text-n”>88.57</td>
</tr>
</table>

</body>
</html>

5 komentar

emol, 22.Aug.2006 7:22 am

aduh mas eko dari planet mana sih.. aku kok ra ngerti yo.. hihihih :D

Jauhari, 12.Jan.2007 7:17 am

Aku nek wis CODING ngene MUMET mas :(

mucill, 17.Mar.2007 3:07 am

wedew…sangar juga ni cicak….hehehe
sekedar saran, untuk fleksibilitas prosesnya, mungkin mata uang nya di masukan ke dalam array saja, toh proses dari masing-masing kurs tersebut sama..jadi menghemat syntax nya dan besar kapasitas file kecil.

kira-kira phpnya jadi gini :
var $setKurs = array(\’USD\’,\’EUR\’, \’AUD\’, \’BGP\’, \’JPY\’);
foreach($setKurs AS $key=$val){
if (preg_match(’/\’.$val[$key].\’.+\\n.+>([\\d].*)([\\d].*)assign(strtolower($val[$key]).\’1′, $m[1]);
$smarty->assign(strtolower($val[$key]).\’2\’, $m[2]);
}

kupu ungu, 19.Mar.2007 8:41 am

Mas Eko memang PHP bgt, *mode aku save ah halaman ini on*

oot: mas ko file2 di blog ini tipe halamannya ko nggilani cii?
*coba apa yang saya maksud ?*

albachtimi - information and online business media, 10.Oct.2008 10:56 pm

Ada gak yang bisa nampilin kurs di hostingan wordpress, karena kalau js engga jalan di http://albachtimi.wordpress.com

Komentar

"Saya adalah Saya" ya memang itu salah satu dari sekian semboyan saya. Sekarang banyak waktu dihabiskan di depan komputer sambil belajar ngetik tentunya. "Ngopi" dan "udud" merupakan kegemaran yang sampai sekarang belom bisa ditinggalkan. Terasa uuuenak tenan...