国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

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://miracleart.cn</link>
        <description>學(xué)的不僅技術(shù),更新夢想??!</description>
        <item>
            <title>RSS 教程</title>
            <link>http://miracleart.cn/rss/rss-tutorial.html</link>
            <description>通過使用 RSS,您可以瀏覽與您的工作相關(guān)的新聞</description>
        </item>
        <item>
            <title>XML 教程</title>
            <link>http://miracleart.cn/xml/xml-tutorial.html</link>
            <description>XML 指可擴展標記語言(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