XML na serwerze

Pliki XML są plikami tekstowymi, podobnymi do plików HTML.

Można łatwo przechowywać i generować XML za pomocą standardowego serwera webowego.

Przechowywanie plików XML na serwerze

Sposób przechowywania plików XML na serwerze Internet jest zupełnie taki sam jak plików HTML.

Otwórz edytor notatek Windows i wprowadź poniższy kod:

<?xml version="1.0" encoding="UTF-8"?>
<note>
  <from>John</from>
  <to>George</to>
  <message>Remember me this weekend</message>
</note>

Następnie zapisz ten plik pod odpowiednią nazwą, na przykład "note.xml", na serwerze WWW.

Generowanie XML za pomocą PHP

Możesz generować XML na serwerze, bez konieczności instalacji żadnego oprogramowania XML.

Aby używać PHP do generowania odpowiedzi XML na serwerze, użyj poniższego kodu:

<?php
header("Content-type: text/xml");
echo "<?xml version='1.0' encoding='UTF-8'?>";
echo "<note>";
echo "<from>John</from>";
echo "<to>George</to>";
echo "<message>Remember me this weekend</message>";
echo "</note>";
?>

Proszę zauważyć, że zawartość nagłówka odpowiedzi musi być ustawiona na "text/xml".

Zobacz, jak ten plik PHP jest zwracany z serwera.

Jeśli chcesz nauczyć się PHP, przeczytaj naszą instrukcję PHP.

Generowanie XML za pomocą ASP

XML można generować na serwerze bez instalacji oprogramowania XML.

Aby generować odpowiedzi XML z serwera - wystarczy napisać poniższy kod i zapisz go jako plik ASP na serwerze:

<%
response.ContentType="text/xml"
response.Write("<?xml version='1.0' encoding='UTF-8'?>")
response.Write("<note>")
response.Write("<from>John</from>")
response.Write("<to>George</to>")
response.Write("<message>Remember me this weekend</message>")
response.Write("</note>")
%>

Proszę zauważyć, że zawartość odpowiedzi musi być ustawiona na "text/xml".

Zobacz, jak ten plik ASP jest zwracany z serwera

Jeśli chcesz się nauczyć ASP, możesz przeczytać nasz tutorial ASP.

Generowanie XML z bazy danych

XML można generować z bazy danych bez instalacji oprogramowania XML.

Aby generować odpowiedzi XML z serwera, wystarczy napisać poniższy kod i zapisz go jako plik ASP na serwerze:

<%
response.ContentType = "text/xml"
set conn=Server.CreateObject("ADODB.Connection")
conn.provider="Microsoft.Jet.OLEDB.4.0;"
conn.open server.mappath("/datafolder/database.mdb")
sql="select fname,lname from tblGuestBook"
set rs=Conn.Execute(sql)
response.write("<?xml version='1.0' encoding='UTF-8'?>")
response.write("<guestbook>")
while (not rs.EOF)
response.write("<guest>")
response.write("<fname>" & rs("fname") & "</fname>")
response.write("<lname>" & rs("lname") & "</lname>")
response.write("</guest>")
rs.MoveNext()
wend
rs.close()
conn.close()
response.write("</guestbook>")
%>

Zobacz rzeczywisty wynik bazy danych z powyższego kodu ASP

Powyższy przykład używa ASP z ADO.

Jeśli chcesz się nauczyć ADO, odwiedź naszą "Kurs ADO".

Użyj XSLT do konwersji XML na serwerze

Poniższy kod ASP konwertuje plik XML na HTML na serwerze:

<%
' Wczytaj XML
set xml = Server.CreateObject("Microsoft.XMLDOM")
xml.async = false
xml.load(Server.MapPath("simple.xml"))
' Wczytaj XSL
set xsl = Server.CreateObject("Microsoft.XMLDOM")
xsl.async = false
xsl.load(Server.MapPath("simple.xsl"))
' Przekształć plik
Response.Write(xml.transformNode(xsl))
%>

Przykład wyjaśnienia

  1. Pierwszy blok kodu tworzy instancję parsera Microsoft XML (XMLDOM) i wczytuje plik XML do pamięci
  2. Drugi blok kodu tworzy inną instancję parsera i wczytuje plik XSL do pamięci
  3. Ostatni wiersz kodu używa dokumentu XSL do przekształcenia dokumentu XML i wysłania wyniku jako HTML do przeglądarki. Zakończone!

Zobacz, jak działa powyższy kod

Zapisz XML jako plik za pomocą ASP

Ta instancja ASP utworzy prosty dokument XML i zapisze go na serwerze:

<%
"<note>"
text=text & "<to>George</to>"
text=text & "<from>John</from>"
text=text & "<heading>Przypomnienie</heading>"
text=text & "<body> Nie zapomnij o spotkaniu!</body>"
text=text & "</note>"
set xmlDoc=Server.CreateObject("Microsoft.XMLDOM")
xmlDoc.async="false"
xmlDoc.loadXML(text)
xmlDoc.Save("test.xml")
%>