Artikel
Web Programming
JavaScript
AJAX RSS Reader | AJAX RSS Reader |
|
|
|
| Ditulis Oleh oscorp | |
| Saturday, 31 January 2009 | |
|
RSS Reader yang digunakan untuk membaca RSS feed. RSS memungkinkan kita membaca berita update tanpa browsing terlebih dahulu. HTML FORM Ini adalah halaman HTML. Berisi formulir sederhana HTML dan link ke JavaScript:
<html> <head> <script type="text/javascript" src="getrss.js"></script> </head> <body> <form> Select an RSS-Feed: <select onchange="showRSS(this.value)"> <option value="Google">Google News</option> <option value="MSNBC">MSNBC News</option> </select> </form> <p><div id="rssOutput">
<b>RSS Feed will be listed here.</b></div></p>
</body>
</html><span>Penjelasan Contoh - HTML Form</span> Seperti yang dapat Anda lihat, HTML di atas berisi halaman HTML yang sederhana dengan bentuk drop-down box. Bentuk pekerjaan seperti ini:
JAVASCRIPT Kode JavaScript akan disimpan di "getrss.js" dan link ke dokumen HTML: var xmlHttp function showRSS(str) { xmlHttp=GetXmlHttpObject() if (xmlHttp==null) { alert ("Browser does not support HTTP Request") return } var url="getrss.php" url=url+"?q="+str url=url+"&sid="+Math.random() xmlHttp.onreadystatechange=stateChanged xmlHttp.open("GET",url,true) xmlHttp.send(null) } function stateChanged() { if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") { document.getElementById("rssOutput") .innerHTML=xmlHttp.responseText } } function GetXmlHttpObject() { var xmlHttp=null; try { // Firefox, Opera 8.0+, Safari xmlHttp=new XMLHttpRequest(); } catch (e) { // Internet Explorer try { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); } } return xmlHttp; } Penjelasan contohstateChanged () dan GetXmlHttpObject fungsi yang sama seperti di PHP AJAX Suggest Function showRSS () Setiap kali salah satu pilihan dipilih dalam bidang masukan ini melaksanakan fungsi sebagai berikut:
Halaman dengan PHPServer halaman dipanggil oleh kode JavaScript PHP adalah file bernama "getrss.php": <?php //get the q parameter from URL $q=$_GET["q"]; //find out which feed was selected if($q=="Google") { $xml=("http://news.google.com/news?ned=us&topic=h&output=rss"); } elseif($q=="MSNBC") { $xml=("http://rss.msnbc.msn.com/id/3032091/device/rss/rss.xml"); } $xmlDoc = new DOMDocument(); $xmlDoc->load($xml); //get elements from "<channel>" $channel=$xmlDoc->getElementsByTagName('channel')->item(0); $channel_title = $channel->getElementsByTagName('title') ->item(0)->childNodes->item(0)->nodeValue; $channel_link = $channel->getElementsByTagName('link') ->item(0)->childNodes->item(0)->nodeValue; $channel_desc = $channel->getElementsByTagName('description') ->item(0)->childNodes->item(0)->nodeValue; //output elements from "<channel>" echo("<p><a href='" . $channel_link . "'>" . $channel_title . "</a>"); echo("<br />"); echo($channel_desc . "</p>"); //get and output "<item>" elements $x=$xmlDoc->getElementsByTagName('item'); for ($i=0; $i<=2; $i++) { $item_title=$x->item($i)->getElementsByTagName('title') ->item(0)->childNodes->item(0)->nodeValue; $item_link=$x->item($i)->getElementsByTagName('link') ->item(0)->childNodes->item(0)->nodeValue; $item_desc=$x->item($i)->getElementsByTagName('description') ->item(0)->childNodes->item(0)->nodeValue; echo ("<p><a href='" . $item_link . "'>" . $item_title . "</a>"); echo ("<br />"); echo ($item_desc . "</p>"); } ?> Penjelasan Halaman PHP Ketika sebuah pilihan akan dikirim dari JavaScript berikut terjadi:
»
2 Comments
2"Terimaksih komentar nya" by oscorp at Sunday, 01 March 2009 19:17 terima kasih banyak buat mas rifai...atas komentar2 nya
1"Pas banget.." by Rifai at Monday, 16 February 2009 00:39 Pas banget ama kebutuhan saya..hehehhee, thx for post bro !
» Post Comment
|
|
| Pemutakhiran Terakhir ( Saturday, 31 January 2009 ) |
| < Sebelumnya | Berikutnya > |
|---|