Heim  >  Artikel  >  Backend-Entwicklung  >  Verwandte Wissenspunkte zum AJAX RSS-Reader

Verwandte Wissenspunkte zum AJAX RSS-Reader

jacklove
jackloveOriginal
2018-05-07 15:08:151275Durchsuche

RSS-Reader wird zum Lesen von RSS-Feeds verwendet. Dieser Artikel gibt eine grundlegende Erklärung dazu.

Erläuterung der Beispiele – HTML-Seite

Wenn der Benutzer einen RSS-Feed in der obigen Dropdown-Liste auswählt, wird eine Funktion namens „showRSS()“ angezeigt hingerichtet. Diese Funktion wird durch das Ereignis „onchange“ ausgelöst:

<html><head><meta charset="utf-8"><title>菜鸟教程(runoob.com)</title><script>function showRSS(str){    if (str.length==0)    {         document.getElementById("rssOutput").innerHTML="";        return;        }    if (window.XMLHttpRequest)    {        // IE7+, Firefox, Chrome, Opera, Safari 浏览器执行代码        xmlhttp=new XMLHttpRequest();    }    else    {        // IE6, IE5 浏览器执行代码        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 数据</option></select></form><br><div id="rssOutput">RSS-feed 数据列表...</div></body></html>

showRSS()-Funktion führt die folgenden Schritte aus:

Überprüfen Sie, ob ein RSS-Feed ausgewählt ist

Erstellen Sie ein XMLHttpRequest-Objekt

Erstellen Sie eine Funktion, die ausgeführt wird, wenn die Serverantwort bereit ist

Senden Sie eine Anfrage an eine Datei auf dem Server

Beachten Sie den Parameter ( q) am Ende der URL hinzugefügt (Enthält den Inhalt der Dropdown-Liste)

PHP-Datei

Datei rss_demo.xml.

Die von JavaScript oben aufgerufene Serverseite ist eine PHP-Datei mit dem Namen „getrss.php“:

<?php// rss 文件$xml="rss_demo.xml";$xmlDoc = new DOMDocument();$xmlDoc->load($xml);// 从 "<channel>" 中读取元素$channel=$xmlDoc->getElementsByTagName(&#39;channel&#39;)->item(0);$channel_title = $channel->getElementsByTagName(&#39;title&#39;)->item(0)->childNodes->item(0)->nodeValue;$channel_link = $channel->getElementsByTagName(&#39;link&#39;)->item(0)->childNodes->item(0)->nodeValue;$channel_desc = $channel->getElementsByTagName(&#39;description&#39;)->item(0)->childNodes->item(0)->nodeValue;// 输出 "<channel>" 中的元素echo("<p><a href=&#39;" . $channel_link  . "&#39;>" . $channel_title . "</a>");echo("<br>");echo($channel_desc . "</p>");// 输出 "<item>" 中的元素$x=$xmlDoc->getElementsByTagName(&#39;item&#39;);for ($i=0; $i<=1; $i++) {    $item_title=$x->item($i)->getElementsByTagName(&#39;title&#39;)    ->item(0)->childNodes->item(0)->nodeValue;    $item_link=$x->item($i)->getElementsByTagName(&#39;link&#39;)    ->item(0)->childNodes->item(0)->nodeValue;    $item_desc=$x->item($i)->getElementsByTagName(&#39;description&#39;)    ->item(0)->childNodes->item(0)->nodeValue;    echo ("<p><a href=&#39;" . $item_link
    . "&#39;>" . $item_title . "</a>");    echo ("<br>");    echo ($item_desc . "</p>");}?>

Wenn die RSS-Feed-Anfrage von JavaScript an die PHP-Datei gesendet wird, Dies geschieht:

Überprüfen Sie, welcher RSS-Feed ausgewählt ist

Erstellen Sie ein neues XML-DOM-Objekt

Laden Sie das RSS-Dokument in die XML-Variable

Extrahieren und Ausgabeelemente aus dem Kanalelement

Elemente aus dem Elementelement extrahieren und ausgeben

In diesem Artikel werden die relevanten Wissenspunkte des AJAX-RSS-Readers erläutert. Weitere Lernmaterialien können Sie sich ansehen es auf einer chinesischen PHP-Website.

Verwandte Empfehlungen:

PHP-Beispiele – Wissen über AJAX-Echtzeitsuche

Über PHP-Beispiele – AJAX und XML Interaktion

Über PHP – Interaktion zwischen AJAX und MySQL

Das obige ist der detaillierte Inhalt vonVerwandte Wissenspunkte zum AJAX RSS-Reader. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn