03. april 2002 - 16:42
Der er
4 kommentarer og 1 løsning
Fra form til XML
Hej! Input skal komme fra en form i html, og vha ASP konverteres til XML. Hvordan gør jeg det? Det ser ud til at DOMDocument kan loade selve request objektet i ASP, men det dur altså ikke. Jeg har prøvet at laven en side med 2 frames, hvor den ene indeholder en form, som i sin action parameter skal kalde en ASP (som køres i den anden frame). I denne ASP gør jeg således: Dim doc set doc=server.createobject("MSXML.DomDocument") doc.async=false doc.load(Request) doc.save("test.xml") test.xml bliver skrevet, men den er tom.
Annonceindlæg fra Partnertekst
08. april 2002 - 16:30
#1
Dette kan vidst hjælpe dig en hel del...: <% @ Language = "VBScript" %> <% Option Explicit Response.Expires = 0 If Request.ServerVariables("CONTENT_LENGTH") = 0 Then %> <HTML> <HEAD> <TITLE>Gæstebogen - Opret Besked.</TITLE> <LINK REL="STYLESHEET" HREF="./stil.css" TYPE="text/css" /> </HEAD> <BODY BGCOLOR="Wheat"> <DIV ALIGN="Center"> <FONT FACE="Verdana" COLOR="DarkGreen" SIZE="3"> <B>Opret Besked</B> </FONT> <FORM ACTION="<%= Request.ServerVariables("SCRIPT_NAME") %>" METHOD="POST"> <TABLE BORDER="1" WIDTH="500"> <TR> <TD WIDTH="100" ALIGN="Right">Navn:</TD> <TD><INPUT TYPE="TEXT" NAME="Navnet" SIZE="35"></INPUT></TD> </TR> <TR> <TD WIDTH="100" ALIGN="Right">E-mail:</TD> <TD><INPUT TYPE="TEXT" NAME="Mailen" SIZE="35"></INPUT></TD> </TR> <TR> <TD WIDTH="100" ALIGN="Right">Homepage:</TD> <TD><INPUT TYPE="TEXT" NAME="Webpage" SIZE="35"></INPUT></TD> </TR> <TR> <TD WIDTH="100" ALIGN="Right">Besked:</TD> <TD><TEXTAREA NAME="Besked" COLS="45" ROWS="10" WRAP></TEXTAREA></TD> </TR> <TR> <TD COLSPAN="2" ALIGN="Center"><INPUT TYPE="SUBMIT" VALUE="Send"><INPUT TYPE="RESET" VALUE="Slet Alt"></TD> </TR> </TABLE> <A HREF="../index.asp">Startside</A>|<A HREF="./guestbook.xml">Gæstebogen</A> <P/> <FONT FACE="Verdana" SIZE="2"> Der kan ikke bruges HTML-tags i beskeden. </FONT> </DIV> </BODY> <HTML> <% ElseIf Request.Form("Navnet") = "" Then %> <HTML> <HEAD> <TITLE>Fejl i indtastning.</TITLE> <LINK REL="STYLESHEET" HREF="./stil.css" TYPE="text/css" /> </HEAD> <BODY BGCOLOR="Wheat"> <DIV ALIGN="Center"> <FONT FACE="Verdana" COLOR="DarkGreen" SIZE="4"> Du skal minimum skrive dit navn. </FONT> <P/> <A HREF="./OpretBesked.asp">Prøv igen</A> | <A HREF="./Guestbook.xml">Gå til Gæstebogen</A> </DIV> </BODY> </HTML> <%Else Dim XMLNode, objXML, objTemp, objBesked, objRoot, StrSti Dim TempArray, Tekst, L, Linjer, AntalLinjer,Nylinje, TimeNow TimeNow = Now Nylinje = chr(13) & chr(10) Tekst = Replace(Request.Form("Besked"),NyLinje,"##Y") AntalLinjer = 1 For L = 1 to Len(Tekst) If Mid(Tekst, L, 3) = "##Y" Then AntalLinjer = AntalLinjer +1 Next TempArray = Split(Tekst,"##Y") Linjer ="" L=0 For L = 0 to AntalLinjer - 1 if AntalLinjer = 0 Then Exit For Linjer = Linjer & "<LINJE>" & TempArray(L) & "</LINJE>" & chr(13) & chr (10) Next XMLNode = "<VISITOR>" & Chr(13) & Chr(10) & Chr(9) & _ "<NAME>" & Request.Form("Navnet") & "</NAME>" & Chr(13) & Chr(10) & Chr(9) & _ "<DATO>" & TimeNow & "</DATO>" & Chr(13) & Chr(10) & Chr(9) & _ "<EMAIL>" & Request.Form("Mailen") & "</EMAIL>" & Chr(13) & Chr(10) & Chr(9) & _ "<HOMEPAGE>"& Request.Form("Webpage") & "</HOMEPAGE>" & Chr(13) & Chr(10) & Chr(9) & _ "<MESSAGE>" & Chr(13) & Chr(10) & Chr(9) & Linjer & Chr(13) & Chr(10) & Chr(9) & "</MESSAGE>" & Chr(13) & Chr(10) & _ "</VISITOR>" strSti = Server.MapPath("Guestbook.xml") set objXML = Server.CreateObject("Microsoft.XMLDOM") set objTemp = Server.CreateObject("Microsoft.XMLDOM") objXML.load(strSti) set objRoot = objXML.selectSingleNode("BOOK") objTemp.loadXML(XMLNode) set objBesked = objTemp.documentElement objRoot.insertBefore objBesked, objRoot.childNodes(0) objXML.save(strSti) %> <HTML> <HEAD> <TITLE>Besked er oprettet.</TITLE> <LINK REL="STYLESHEET" HREF="./stil.css" TYPE="text/css" /> </HEAD> <BODY BGCOLOR="Wheat"> <DIV ALIGN="Center"> <FONT FACE="Verdana" COLOR="DarkGreen" SIZE="4"> Din besked er blevet oprettet! </FONT> <FONT FACE="Verdana"> <P/> <A HREF="../index.asp">Gå til startsiden</A> | <A HREF="./Guestbook.xml">Gå til Gæstebogen</A> </FONT> </DIV> </BODY> </HTML> <%End If %> //>Rune
14. april 2002 - 11:11
#2
Ups.. var et svar...! //>Rune
15. april 2002 - 08:19
#3
medions: din løsning er OK. Havde dog håbet på noget mere simplet.
15. april 2002 - 11:30
#4
olhansen> :-) Fair nok, well, det bliver jo meget mere simpelt hvis du fjerner alle tabels'ne ;-) Thx 4 Poinz //>Rune
17. april 2002 - 12:01
#5
En lille fodnote: Jeg ville ændre de store bogstaver i dine tags, til små... // Nikolaj Stenberg
Kurser inden for grundlæggende programmering