亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

PHP AJAX RSS

RSS Reader is used to read RSS feeds.

RSS allows for quick browsing of news and updates.


AJAX RSS Reader

In the following example, we will demonstrate a RSS reader, through which content from RSS is loaded without refreshing the web page:

0.png

##Example

When the user selects an RSS-feed in the drop-down list above, a function named "showRSS()" will be executed. This function is triggered by the "onchange" event:

<!DOCTYPE html>
 <html lang="en">
 <head>
     <meta charset="UTF-8">
     <title>PHP中文網(wǎng)(php.cn)</title>
     <script>
         function showRSS(str)
         {
             if (str.length==0)
             {
                 document.getElementById("rssOutput").innerHTML="";
                 return;
             }
             if (window.XMLHttpRequest)
             {
                 // IE7+, Firefox, Chrome, Opera, Safari 瀏覽器執(zhí)行代碼
                 xmlhttp=new XMLHttpRequest();
             }
             else
             {
                 // IE6, IE5 瀏覽器執(zhí)行代碼
                 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
             }
             xmlhttp.onreadystatechange=function()
             {
                 if (xmlhttp.readyState==4 && xmlhttp.status==200)
                 {
                     document.getElementById("rssOutput").innerHTML=xmlhttp.responseText;
                 }
             }
             xmlhttp.open("GET","getrss.php?q="+str,true);
             xmlhttp.send();
         }
     </script>
 </head>
 <body>
 
 <form>
     <select onchange="showRSS(this.value)">
         <option value="">選擇一個 RSS-feed:</option>
         <option value="rss">讀取 RSS 數(shù)據(jù)</option>
     </select>
 </form>
 <br>
 <div id="rssOutput">RSS-feed 數(shù)據(jù)列表...</div>
 </body>
 </html>

showRSS() function will perform the following steps:

· Check whether an RSS-feed is selected

· Create an XMLHttpRequest object

· Create a function that executes when the server response is ready

· Send a request to a file on the server

· Please note the parameter (q) added to the end of the URL (including Contents of the drop-down list)


XML file

<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
    <channel>
        <title>php教程</title>
        <link>http://ipnx.cn</link>
        <description>學(xué)的不僅技術(shù),更新夢想??!</description>
        <item>
            <title>RSS 教程</title>
            <link>http://ipnx.cn/rss/rss-tutorial.html</link>
            <description>通過使用 RSS,您可以瀏覽與您的工作相關(guān)的新聞</description>
        </item>
        <item>
            <title>XML 教程</title>
            <link>http://ipnx.cn/xml/xml-tutorial.html</link>
            <description>XML 指可擴(kuò)展標(biāo)記語言(eXtensible Markup Language)</description>
        </item>
    </channel>
</rss>


PHP file

The server page called by the above JavaScript is a PHP file named "getrss.php":

<?php
 header("Content-type:text/html;charset=utf-8");    //設(shè)置編碼
 // rss 文件
 $xml="rss_demo.xml";
 $xmlDoc = new DOMDocument();
 $xmlDoc->load($xml);
 
 // 從 "<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;
 
 // 輸出 "<channel>" 中的元素
 echo("<p><a href='" . $channel_link
     . "'>" . $channel_title . "</a>");
 echo("<br>");
 echo($channel_desc . "</p>");
 
 // 輸出 "<item>" 中的元素
 $x=$xmlDoc->getElementsByTagName('item');
 for ($i=0; $i<=1; $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>");
 }
 ?>

When the request for the RSS feed is sent from JavaScript to the PHP file, what will happen is:

· Check which RSS feed is selected

· Create a new XML DOM object

· Load the RSS document in the xml variable

· From channel Extract and output the element

from the element Extract and output the element

from the item element The program execution result:

50.png



Continuing Learning
||
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>PHP中文網(wǎng)(php.cn)</title> <script> function showRSS(str) { if (str.length==0) { document.getElementById("rssOutput").innerHTML=""; return; } if (window.XMLHttpRequest) { // IE7+, Firefox, Chrome, Opera, Safari 瀏覽器執(zhí)行代碼 xmlhttp=new XMLHttpRequest(); } else { // IE6, IE5 瀏覽器執(zhí)行代碼 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("rssOutput").innerHTML=xmlhttp.responseText; } } xmlhttp.open("GET","getrss.php?q="+str,true); xmlhttp.send(); } </script> </head> <body> <form> <select onchange="showRSS(this.value)"> <option value="">選擇一個 RSS-feed:</option> <option value="rss">讀取 RSS 數(shù)據(jù)</option> </select> </form> <br> <div id="rssOutput">RSS-feed 數(shù)據(jù)列表...</div> </body> </html>
submitReset Code