国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

PHP和AJAX的RSS閱讀器

2024-05-04 21:58:41
字體:
來源:轉載
供稿:網友

PHP和AJAX的RSS閱讀器,RSS閱讀器是用來讀取RSS信息,允許快速的RSS瀏覽新聞和更新.

AJAX的RSS閱讀器:在AJAX以下例子,我們將展示一個RSS閱讀器的內容從RSS是載入網頁無需刷新.

在HTML表單:這是HTML網頁,它包含一個簡單的HTML表格,并鏈接到一個JavaScript:

  1. <html> 
  2. <head> 
  3. <script type="text/javascript" src="getrss.js"></script> 
  4. </head> 
  5. <body><form>  
  6. Select an RSS-Feed: 
  7. <select onchange="showRSS(this.value)"> 
  8. <option value="Google">Google News</option> 
  9. <option value="MSNBC">MSNBC News</option> 
  10. </select> 
  11. </form><p><div id="rssOutput"> 
  12. <b>RSS Feed will be listed here.</b></div></p> 
  13. </body> 
  14. </html> 

例如解釋-的H TML表單正如你可以看到,HTML網頁上面載有一個簡單的HTML表單的下拉框,作品的形式像這樣,事件觸發時,用戶選擇一個選項在下拉框中當事件觸發的功能要求showRSS ( )被處決,下面的形式是一個<div>所謂的“ rssOutput ”,這是作為一個占位符返回的數據showRSS ( )函數的JavaScript,JavaScript代碼是儲存在“ getrss.js ”和相關的HTML文件:var xmlHttp

  1. function showRSS(str) 
  2.  {  
  3.  xmlHttp=GetXmlHttpObject() 
  4.  if (xmlHttp==null
  5.   { 
  6.   alert ("Browser does not support HTTP Request"
  7.   return 
  8.   } 
  9.  var url="getrss.php" 
  10.  url=url+"?q="+str 
  11.  url=url+"&sid="+Math.random() 
  12.  xmlHttp.onreadystatechange=stateChanged  
  13.  xmlHttp.open("GET",url,true
  14.  xmlHttp.send(null
  15.  } 
  16.  
  17. function stateChanged()  
  18.  {  
  19.  if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete"
  20.   {  
  21.   document.getElementById("rssOutput"
  22.   .innerHTML=xmlHttp.responseText  
  23.   }  
  24.  } 
  25. function GetXmlHttpObject() 
  26. var xmlHttp=null
  27. try 
  28.  { 
  29.  // Firefox, Opera 8.0+, Safari 
  30.  xmlHttp=new XMLHttpRequest(); 
  31.  } 
  32. catch (e) 
  33.  { 
  34.  // Internet Explorer 
  35.  try 
  36.   { 
  37.   xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); 
  38.   } 
  39.  catch (e) 
  40.   { 
  41.   xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); 
  42.   } 
  43.  } 
  44. return xmlHttp; 

例如解釋 該stateChanged ( )和GetXmlHttpObject職能是一樣的PHP的AJAX推薦的篇章,該showRSS ( )函數每一次的選擇是選擇在輸入外地執行這一職能如下:界定了網址(檔)傳送給服務器 添加一個參數( Q )的網址與選定的選項從下拉框中 添加一個隨機數字,以防止服務器使用快取檔案,吁請GetXmlHttpObject函數創建一個XMLHTTP物件,并講述了對象執行的功能要求時stateChanged變化是觸發 開幕XMLHTTP物件與特定網址,發送一個HTTP請求到服務器,PHP頁面網頁服務器要求的JavaScript代碼是一個PHP文件名為“ getrss.php ” :

  1. ?<?php 
  2.  
  3. //get the q parameter from URL 
  4. $q=$_GET["q"]; 
  5. //find out which feed was selected 
  6. if($q=="Google"
  7.  { 
  8.  $xml=("http://news.Vevb.com/news?ned=us&topic=h&output=rss"); 
  9.  } 
  10. elseif($q=="MSNBC"
  11.  { 
  12.  $xml=("http://rss.msnbc.msn.com/id/3032091/device/rss/rss.xml"); 
  13.  } 
  14. $xmlDoc = new DOMDocument(); 
  15. $xmlDoc->load($xml); 
  16. //get elements from "<channel>" 
  17. $channel=$xmlDoc->getElementsByTagName('channel')->item(0); 
  18. $channel_title = $channel->getElementsByTagName('title'
  19. ->item(0)->childNodes->item(0)->nodeValue; 
  20. $channel_link = $channel->getElementsByTagName('link'
  21. ->item(0)->childNodes->item(0)->nodeValue; 
  22. $channel_desc = $channel->getElementsByTagName('description'
  23. ->item(0)->childNodes->item(0)->nodeValue; 
  24. //output elements from "<channel>" 
  25. echo("<p><a href='" . $channel_link 
  26.  . "'>" . $channel_title . "</a>"); 
  27. echo("<br />"); 
  28. echo($channel_desc . "</p>"); 
  29. //get and output "<item>" elements 
  30. $x=$xmlDoc->getElementsByTagName('item'); 
  31. for ($i=0; $i<=2; $i++) 
  32.  { 
  33.  $item_title=$x->item($i)->getElementsByTagName('title'
  34.  ->item(0)->childNodes->item(0)->nodeValue; 
  35.  $item_link=$x->item($i)->getElementsByTagName('link'
  36.  ->item(0)->childNodes->item(0)->nodeValue; 
  37.  $item_desc=$x->item($i)->getElementsByTagName('description'
  38.  ->item(0)->childNodes->item(0)->nodeValue; 
  39. echo ("<p><a href='" . $item_link 
  40.  . "'>" . $item_title . "</a>"); 
  41.  echo ("<br />"); 
  42.  echo ($item_desc . "</p>"); 
  43.  } 
  44. ?> 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 淳化县| 湘西| 安图县| 竹溪县| 柳河县| 东明县| 长丰县| 东安县| 红安县| 牡丹江市| 广宁县| 江达县| 赫章县| 遂宁市| 九寨沟县| 乌兰察布市| 临湘市| 星子县| 固安县| 栾城县| 于田县| 乐都县| 仪征市| 封开县| 化州市| 旺苍县| 永州市| 新巴尔虎左旗| 息烽县| 临安市| 武川县| 宕昌县| 股票| 白河县| 北安市| 麻栗坡县| 金乡县| 贡嘎县| 深圳市| 团风县| 海安县|