


Detaillierte Erläuterung von Codebeispielen zum Erstellen eines Adressbuchs über XML Data Island und Dom
Wenn Sie ein Adressbuchprogramm für eine Website bereitstellen möchten, müssen Sie CGI in Kombination mit einer Hintergrunddatenbanktechnologie verwenden. Dies stellt relativ hohe Anforderungen an den WEB-Server und kann nicht einmal auf vielen virtuellen Hosts implementiert werden, die dies nicht tun Bereitstellung von Datenbankfunktionen. Natürlich können wir auch TXT-Text verwenden, um die Datenbank zu ersetzen, aber TXT-Text ist schwieriger zu bedienen. Wir müssen Zeile für Zeile lesen und beurteilen und auch getrennte Zeichenfolgen verwenden, um Felder zu trennen, und komplexe Vorgänge können nicht ausgeführt werden.
Jetzt können wir „Extensible Markup Language (xml)“ zum Speichern von Adressbuchdaten verwenden und so die Vorteile von XML widerspiegeln: eine strukturierte Methode zur Darstellung von Daten, die zum Speichern von Dateien mit vielen relationalen Datenstrukturen sehr nützlich ist .
1. Grundprinzipien:
In Microsoft Internet Explorer 5.0 und späteren Versionen können wir XML-Elemente verwenden, um XML-Daten zu erstellen, die in HTML-Seiten referenziert oder darin enthalten sind können in eine HTML-Datei oder in eine externe Datei eingebunden werden. Die Verwendung von XML-Dateninseln kann uns die Mühe ersparen, komplexe Skripte zu schreiben. DOM kann XML-Dokumente analysieren. Alle Elemente, Entitäten, Attribute usw. im Dokument können durch ein Objektmodell dargestellt werden. Die logische Struktur des gesamten Dokuments ähnelt einem Baum. Jedes Objekt enthält neben Methoden und Attributen auch viele Methoden zum Suchen von Knoten. Mit DOM können Entwickler dynamisch XML erstellen, Dokumente durchlaufen und Dokumentinhalte hinzufügen (löschen/ändern). Die von DOM bereitgestellte API hat nichts mit Programmiersprachen zu tun, daher gibt es in einigen DOM-Standards und der Implementierung keine klar definierten Schnittstellen Methoden verschiedener Parser können variieren.
2. Der spezifische Prozess ist:
1. Definieren Sie die XML-Datei wie folgt:
<?xml version="1.0" encoding="gb2312"?> <中国计算机世界出版服务公司通信录> <计算机世界 contactID="2"> <部门名称>计算机室</部门名称> <电话号码>139</电话号码> <电子邮件>fsdos@163.net</电子邮件> </计算机世界> </中国计算机世界出版服务公司通信录>
Speichern Sie das obige XML-Dokument als tele.xml-Datei und gleichzeitig Speichern Sie zu diesem Zeitpunkt das obige XML-Dokument. Lassen Sie den Feldinhalt als Initialisierungsrahmendaten leer und speichern Sie ihn als Datei newid.xml.
2. Der Client lädt das XML-Dokument und bindet die XML-Datei über DATASRC='#xmldso' in die Tabelle, in der das Adressbuch platziert ist. Das DATASRC-Attribut wird tatsächlich über das ID-Attribut des XML-Elements übergeben Dies wird durch das Hinzufügen von # vor dem TD-Element erreicht, sodass wir die spezifischen Felder angeben können, die in der Mitte des TD-Elements angezeigt werden müssen.
3 ;
4. Stellen Sie über den xmlhttp-Protokollserver eine Verbindung zum Adressbuch her und speichern Sie XML-Dokumente.
3. Kurze Beschreibung der XML-DOM-Programmierung:
1. Das serverseitige dns2.asp-Programm ist relativ einfach XML Erstellen Sie nach dem Sammeln der Daten ein Dateiobjekt und speichern Sie es in tele.xml:
<HTML><BODY bgColor=#a1bae6> <XML id=xmldso src="tele.xml"></XML> <XML id=newid></XML> <!--加载xml数据--> <SCRipT Language=javaScript> newid.async = false; newid.load("newid.xml"); //增加记录; function addID(){ var doc=xmldso.XMLDocument var rootnode=doc.documentElement var sortNode = rootnode.selectNodes("//部门名称") var currentid = sortNode.length-1 var cc=sortNode.item(currentid).text; if ((cc=="尚未输入")||(cc=="")) { alert("请将最后一行数据填写完毕后再增加新的记录!"); } else { var node= newid.documentElement.childNodes(0).cloneNode(true); var contactID=parseInt(sortNode.item(currentid).parentNode.getAttribute("contactID"))+1; node.setAttribute("contactID",contactID); xmldso.documentElement.appendChild(node); } } //删除记录 function delID(whichFld){ var sortNode = xmldso.selectSingleNode("//计算机世界[@contactID='"+whichFld+"']"); if (sortNode.parentNode.childNodes.length>1) sortNode.parentNode.removeChild(sortNode); } </SCRIPT> <script language="vbscript"> Sub cc_onmouseup '保存记录; Dim objXML, objXSL, objfso,strFile, strFileName, strXSL,strURL,TheForm set SaveXMLDoc=xmldso.XMLDocument strURL="dns2.asp" Set objXML = CreateObject("Microsoft.XMLHTTP") '创建MS的XMLHTTP组件; objXML.Open "post",strURL,false '采用Post提交方式; objXML.setrequestheader "content-type","application/x-www-form-urlencoded" objXML.send SaveXMLDoc ' 发送信息,保存XML数据; 'xmlGet = objXML.responsebody '稍等片刻后,得到服务器端传回来的结果; msgbox "保存成功!" Set objXML = Nothing end sub </SCRIPT> <center><b>计算机世界----通信录</b><br><br> <TABLE id="table" DATASRC='#xmldso' BORDER CELLPADDING=3> <!--进行数据绑定--> <THEAD><TH>编号</TH><TH>部门名称</TH><TH>电话号码</TH><TH>电子邮件</TH></THEAD> <TR> <TD><acronym title='点击即可删除该记录'><INPUT TYPE=button size=4 DATAFLD="contactID" onclick="delID(this.value)"></acronym></TD> <TD><INPUT TYPE=TEXT DATAFLD="部门名称"></TD> <TD><INPUT TYPE=TEXT DATAFLD="电话号码"></TD> <TD><INPUT TYPE=TEXT DATAFLD="电子邮件"></TD> </TR> </TABLE> <INPUT TYPE=BUTTON name=dd id=dd VALUE="增加记录" onmouSEOver="this.focus()" onmousedown="addID();"> <INPUT TYPE=BUTTON name=cc id=cc VALUE="保存"></center></BODY></HTML>
3 Während der tatsächlichen Verwendung müssen Sie auch eine Webseite index.htm hinzufügen, die das Adressbuch anzeigt. Das ist eigentlich das obige dom.htm Eine vereinfachte Version, die alle Funktionen zum Hinzufügen, Löschen, Ändern und Speichern entfernt und nur LABEEL zum Anzeigen von Daten in Tabellenzellen verwendet:
< Set ReceivedDoc = CreateObject("Microsoft.XMLDOM") '创建 XML DOM实例; ReceivedDoc.async=False ReceivedDoc.load Request '接收XML数据; Set files=Server.CreateObject("Scripting.FileSystemObject") Set numtxt=files.CreateTextFile(Server.MapPath("tele.xml"),True) numtxt.WriteLine(replace(ReceivedDoc.xml,"?>"," encoding=""gb2312""?>")) '将XML数据写入文件 numtxt.Close response.write ReceivedDoc.xml >
4. Vorteile der Verwendung von XML Dateninseln kombiniert mit Dom-Technologie:
1. Erstens natürlich die Vorteile, die XML selbst mit sich bringt. XML bricht das Monopol der Tag-Definitionen. In der in diesem Artikel verwendeten XML-Datei können sogar die Feldnamen auf Chinesisch sein, da es sich bei den darin enthaltenen Informationen nicht um eine Beschreibung handelt die Anzeige, sondern eine Beschreibung auf der Anzeige. Es ist die semantische Bedeutung der Informationen, die die Lesbarkeit des Dokuments erheblich verbessert. Die Verwendung von XML erleichtert auch die Übertragung von Informationen zwischen verschiedenen Systemen.<HTML><BODY bgColor=#a1bae6> <XML id=xmldso src="tele.xml"></XML> <center><b>计算机世界----通信录</b><br><br> <TABLE id="table" DATASRC='#xmldso' BORDER CELLPADDING=3> <THEAD><TH>编号</TH><TH>部门名称</TH><TH>电话号码</TH><TH>电子邮件</TH> </THEAD> <TR> <TD><label DATAFLD="contactID"></label></TD> <TD><label DATAFLD="部门名称"></label></TD> <TD><label DATAFLD="电话号码"></label></TD> <TD><label DATAFLD="电子邮件"></label></TD> </TR> </TABLE> </center></BODY></HTML>
3. DOM erzwingt die Verwendung eines Baummodells für den Zugriff auf Informationen in XML-Dokumenten. Da XML im Wesentlichen eine hierarchische Struktur ist, ist diese Beschreibungsmethode sehr effektiv. Über die DOM-Schnittstelle kann die Anwendung jederzeit auf jeden Teil der Daten im XML-Dokument zugreifen und die Steuerung ist recht flexibel.
4. Verwenden Sie das xmlhttp-Objekt, um XML-Daten an den Server zu übertragen, und die Clientseite wird ohne Flackern aktualisiert.
Dieses Programm läuft erfolgreich auf IIS5.0 und IE5.0 basierend auf der Windows 2000-Plattform. Im eigentlichen Bewerbungsprozess können Sie DOM auch in Kombination mit der XSL-Technologie verwenden, um dem Adressbuch Funktionen wie Sortierung, Formatkonvertierung und Datensuche hinzuzufügen. Verwenden Sie zum Hinzufügen das datapagesize-Attribut der XML-Dateninsel und die Funktionen PReviousPage und nextPage Paging-Funktionen zum Adressbuch. Mithilfe von DTD und XML-Schema werden Adressbuchdaten dynamisch validiert.
****************************** **********************************************
一, index.htm (Adressbuch anzeigen):
*********************************** ***** *********************************************
<HTML><BODY bgColor=#a1bae6> <XML id=xmldso src="tele.xml"></XML> <center><b>计算机世界----通迅录</b><br><br> <TABLE id="table" DATASRC='#xmldso' BORDER CELLPADDING=3> <THEAD><TH>编号</TH><TH>部门名称</TH><TH>电话号码</TH><TH>电子邮件</TH> </THEAD> <TR> <TD><label DATAFLD="contactID"></label></TD> <TD><label DATAFLD="部门名称"></label></TD> <TD><label DATAFLD="电话号码"></label></TD> <TD><label DATAFLD="电子邮件"></label></TD> </TR> </TABLE> </center></BODY></HTML>
*********************** ***** ********************************************* *
<HTML><BODY bgColor=#a1bae6> <XML id=xmldso src="tele.xml"></XML> <XML id=newid></XML> <SCRIPT Language=Javascript> newid.async = false; newid.load("newid.xml"); function addID(){ var doc=xmldso.XMLDocument var rootnode=doc.documentElement var sortNode = rootnode.selectNodes("//部门名称") var currentid = sortNode.length-1 var cc=sortNode.item(currentid).text; if ((cc=="尚未输入")||(cc=="")) { alert("请将最后一行数据填写完毕后再增加新的记录!"); } else { var node= newid.documentElement.childNodes(0).cloneNode(true); var contactID=parseInt(sortNode.item(currentid).parentNode.getAttribute("contactID"))+1; node.setAttribute("contactID",contactID); xmldso.documentElement.appendChild(node); } } function delID(whichFld){ var sortNode = xmldso.selectSingleNode("//计算机世界[@contactID='"+whichFld+"']"); if (sortNode.parentNode.childNodes.length>1) sortNode.parentNode.removeChild(sortNode); } </SCRIPT> <script language="vbscript"> Sub cc_onmouseup '当点击“保存”按钮时触发; Dim objXML, objXSL, objFSO,strFile, strFileName, strXSL,strURL,TheForm set SaveXMLDoc=xmldso.XMLDocument strURL="dns2.asp" Set objXML = CreateObject("Microsoft.XMLHTTP") '创建MS的XMLHTTP组件; objXML.Open "post",strURL,false '采用Post提交方式; objXML.setrequestheader "content-type","application/x-www-form-urlencoded" objXML.send SaveXMLDoc ' 发送信息 'xmlGet = objXML.responsebody '稍等片刻后,得到服务器端传回来的结果; msgbox "保存成功!" Set objXML = Nothing end sub </SCRIPT> <center><b>计算机世界----通信录</b><br><br> <TABLE id="table" DATASRC='#xmldso' BORDER CELLPADDING=3> <THEAD> <TH>编号</TH> <TH>部门名称</TH> <TH>电话号码</TH> <TH>电子邮件</TH> </THEAD> <TR> <TD><acronym title='点击即可删除该记录'><INPUT TYPE=button size=4 DATAFLD="contactID" onclick="delID(this.value)"></acronym></TD> <TD><INPUT TYPE=TEXT DATAFLD="部门名称"></TD> <TD><INPUT TYPE=TEXT DATAFLD="电话号码"></TD> <TD><INPUT TYPE=TEXT DATAFLD="电子邮件"></TD> </TR> </TABLE> <INPUT TYPE=BUTTON name=dd id=dd VALUE="增加记录" onmouseover="this.focus()" onmousedown="addID();"> <INPUT TYPE=BUTTON name=cc id=cc VALUE="保存"></center></BODY></HTML>
******************** ********** **************************************** *********** *
<% Set ReceivedDoc = CreateObject("Microsoft.XMLDOM") ReceivedDoc.async=False ReceivedDoc.load Request Set files=Server.CreateObject("Scripting.FileSystemObject") Set numtxt=files.CreateTextFile(Server.MapPath("tele.xml"),True) numtxt.WriteLine(replace(ReceivedDoc.xml,"?>"," encoding=""gb2312""?>")) numtxt.Close response.write ReceivedDoc.xml %>
<?xml version="1.0" encoding="gb2312"?> <中国计算机世界出版服务公司通信录> <计算机世界 contactID="1"> <部门名称>电话总机</部门名称> <电话号码>010-68130909</电话号码> <电子邮件>webmaster@ccw.com.cn</电子邮件> </计算机世界> </中国计算机世界出版服务公司通信录>
****************************************************************************
五、newid.xml(通讯录XML初始化文档):
<?xml version="1.0" encoding="gb2312"?> <中国计算机世界出版服务公司通信录> <计算机世界 contactID="1"> <部门名称>尚未输入</部门名称> <电话号码>保密</电话号码> <电子邮件>保密</电子邮件> </计算机世界> </中国计算机世界出版服务公司通信录>
以上就是用XML数据岛结合Dom制作通讯录的代码实例详解的内容,更多相关内容请关注PHP中文网(www.php.cn)!
相关文章:

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Können XML-Dateien mit PPT geöffnet werden? XML, Extensible Markup Language (Extensible Markup Language), ist eine universelle Auszeichnungssprache, die häufig im Datenaustausch und in der Datenspeicherung verwendet wird. Im Vergleich zu HTML ist XML flexibler und kann eigene Tags und Datenstrukturen definieren, wodurch die Speicherung und der Austausch von Daten komfortabler und einheitlicher werden. PPT oder PowerPoint ist eine von Microsoft entwickelte Software zum Erstellen von Präsentationen. Es bietet eine umfassende Möglichkeit

Konvertieren Sie XML-Daten in Python in das CSV-Format. XML (ExtensibleMarkupLanguage) ist eine erweiterbare Auszeichnungssprache, die häufig zur Datenspeicherung und -übertragung verwendet wird. CSV (CommaSeparatedValues) ist ein durch Kommas getrenntes Textdateiformat, das häufig für den Datenimport und -export verwendet wird. Bei der Datenverarbeitung ist es manchmal erforderlich, XML-Daten zur einfachen Analyse und Verarbeitung in das CSV-Format zu konvertieren. Python ist mächtig

Für den Umgang mit XML- und JSON-Datenformaten in der C#-Entwicklung sind spezifische Codebeispiele erforderlich. In der modernen Softwareentwicklung sind XML und JSON zwei weit verbreitete Datenformate. XML (Extensible Markup Language) ist eine Auszeichnungssprache zum Speichern und Übertragen von Daten, während JSON (JavaScript Object Notation) ein leichtes Datenaustauschformat ist. Bei der C#-Entwicklung müssen wir häufig XML- und JSON-Daten verarbeiten und verarbeiten. Dieser Artikel konzentriert sich auf die Verwendung von C# zum Verarbeiten und Anhängen dieser beiden Datenformate

Verwendung von Python zur Implementierung der Datenüberprüfung in XML Einführung: Im wirklichen Leben haben wir es oft mit einer Vielzahl von Daten zu tun, wobei XML (Extensible Markup Language) ein häufig verwendetes Datenformat ist. XML weist eine gute Lesbarkeit und Skalierbarkeit auf und wird häufig in verschiedenen Bereichen wie Datenaustausch, Konfigurationsdateien usw. verwendet. Bei der Verarbeitung von XML-Daten müssen wir die Daten häufig überprüfen, um die Integrität und Richtigkeit der Daten sicherzustellen. In diesem Artikel wird erläutert, wie Sie mit Python die Datenüberprüfung in XML implementieren und die entsprechenden Informationen bereitstellen

Wenn es darum geht, welches Mobiltelefon in letzter Zeit am beliebtesten ist, werden viele wahrscheinlich an das gerade erschienene Xiaomi 14 denken. Die Leistungsausstattung dieses Mobiltelefons ist ebenfalls sehr gut Um die tägliche Nutzung für alle zu erleichtern, wird der Herausgeber es Ihnen vorstellen. Schauen wir uns an, wie Sie die Adressbuch-Blacklist auf dem Xiaomi Mi 14 einrichten. Schauen wir uns gemeinsam die zugehörigen Inhalte an! Wie richte ich eine Adressbuch-Blacklist auf dem Xiaomi Mi 14 ein? Öffnen Sie die „Telefon“-App auf dem Startbildschirm Ihres Telefons, suchen Sie dann in der unteren Navigationsleiste nach der Option „Kontakte“ und klicken Sie zur Eingabe. Durchsuchen Sie die Kontaktliste, suchen Sie den Kontakt, den Sie zur Blacklist hinzufügen möchten, und halten Sie dann den Avatar oder Namen des Kontakts gedrückt. Nach einer Weile erscheint ein Menü, in dem Sie einen Vorgang auswählen können. Wählen Sie im Popup-Menü „Diesen Kontakt auf die schwarze Liste setzen“ oder eine ähnliche Option. Das System zeigt das Richtige an

Wie Python XML-Dateien analysiert XML (eXtensibleMarkupLanguage) ist eine Auszeichnungssprache, die zur Darstellung strukturierter Daten verwendet wird. Bei der Verarbeitung von XML-Daten müssen wir häufig die XML-Datei analysieren, um die erforderlichen Informationen zu extrahieren. Python bietet viele Bibliotheken und Module zum Parsen von XML-Dateien, wie z. B. ElementTree, lxml usw. In diesem Artikel wird anhand von Codebeispielen erläutert, wie Sie mit Python XML-Dateien analysieren. In Python,

Jackson ist eine Java-basierte Bibliothek, die zum Konvertieren von Java-Objekten in JSON und JSON in Java-Objekte nützlich ist. JacksonAPI ist schneller als andere APIs, benötigt weniger Speicherbereich und eignet sich für große Objekte. Wir verwenden die Methode writeValueAsString() der Klasse XmlMapper, um das POJO in das XML-Format zu konvertieren. Die entsprechende POJO-Instanz muss als Parameter an diese Methode übergeben werden. Syntax publicStringwriteValueAsString(Objectvalue)throwsJsonProcessingExceptionExampleimp

Verwenden Sie PHPXML-Funktionen, um XML-Daten zu verarbeiten: XML-Daten analysieren: simplexml_load_file() und simplexml_load_string() laden XML-Dateien oder Strings. Auf XML-Daten zugreifen: Verwenden Sie die Eigenschaften und Methoden des SimpleXML-Objekts, um Elementnamen, Attributwerte und Unterelemente abzurufen. XML-Daten ändern: Fügen Sie neue Elemente und Attribute mit den Methoden addChild() und addAttribute() hinzu. Serialisierte XML-Daten: Die Methode asXML() konvertiert ein SimpleXML-Objekt in einen XML-String. Praxisbeispiel: Produkt-Feed-XML analysieren, Produktinformationen extrahieren, umwandeln und in einer Datenbank speichern.
