Rette en fejl i gæstebog
Hej eksperter!Jeg ahr lavet en gæstebog efter en guide på www.udvikleren.dk !
www.cortx.dk/tagwall/teagwall.asp <- der er den.. JEg har rettet mange fejl, men den der kan jeg lige godt ikke finde!!
Hele tagwall.asp ser sådan her ud:
<% set conn = server.createobject("ADODB.connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath("tagwall.mdb")
conn.open DSN
%>
strMode = Request.QueryString("mode")
<html>
<head>
</head>
<body>
<font face="Verdana, Arial, Helvetica, sans-serif">
<font size="1">
<% ' Bruges til at vise de forskellige sider, ved "add" vises form-tingen,
' ved "ingen ting" vises tagwall/gæstebogen
strMode = request.QueryString("mode")
if request.form("send") <> "" then
strError = ""
' Her "trimmes" de forskellige felter, dvs. blanke fjernes
' hvis de f.eks. står foran et navn: " jimmi"
strOverskrift = trim(request.form("overskrift")) ' Overskriften på beskeden
strNavn = trim(request.form("navn")) ' Navnet som personen har skrevet.
strEmail = trim(request.form("email")) ' Personens e-mail
strBesked = trim(request.form("besked")) ' Beskeden som personens har skrevet
' Her tjekkes der om brugeren har skrevet noget i felterne
' Og hvis der ikke er skrevet noget, skrives fejlen til strError variablen
if len(strOverskrift) = 0 then
strError = "<li>Du har ikke skrevet noget i feltet Overskrift</li>"
elseif len(strNavn) = 0 then
strError = "<li>Du har ikke skrevet noget i feltet navn</li>"
elseif len(strEmail) = 0 then ' kun hvis en email kræves, ellers fjen den
strError = "<li>Du har ikke skrevet noget i feltet e-mail</li>"
elseif len(strBesked) = 0 then
strError = "<li>Du har ikke skrevet noget i feltet besked</li>"
end if
' Hvis længden af strError er nul, dvs. hvis der ikke er nogen fejl
' skal det indsættes i databasen
if len(strError) = 0 then
strNavn = Server.HTMLEncode(strNavn) ' Så der ikke kan skrives html-tags
strEmail = Server.HTMLEncode(strEmail) ' Så der ikke kan skrives html-tags
strBesked = Server.HTMLEncode(strBesked) ' Så der ikke kan skrives html-tags
' Her er sql-sætningen som indsætter beskeden i databasen
strSQL = "insert into tbl_tagwall(tag_overskrift,tag_navn,tag_email,tag_besked,tag_dato)"
strSQL = strSQL & " Values('"& strOverskrift &"','"& strNavn &"','"& strEmail &"','"& strBesked &"',Now())"
' Her eksekveres SQL-sætningen
conn.execute(strSQL)
' Her kastes vi tilbage til visningen af tagwall/gæstebog
response.redirect "tagwall.asp"
else
strError = "<center><p><ul>"& strError &"</ul></p></center>"
strMode = "add"
end if
end if
%>
<div align="left"><br>
<br>
<%' sætter SELECT CASE lig strMode, så der kan vælges sidens indhold, ved at
' bruge "add" til form scriptet. dvs. tagwall.asp?mode=add
select CASE strMode
' her laves en CASE som har værdien add.
CASE "add" ' Viser en form hvor man kan indtaste beskeden i.
%>
</div>
</font></font><table width=400>
<form action=tagwall.asp method=post>
<tr><td><font size="1" face="Verdana, Arial, Helvetica, sans-serif">
<% response.write strError %>
</font></td></tr>
<tr><td><font size="1" face="Verdana, Arial, Helvetica, sans-serif">overskrift:</font></td></tr>
<tr><td><font size="1" face="Verdana, Arial, Helvetica, sans-serif">
<input type=tekst name=overskrift>
</font></td></tr>
<tr><td><font size="1" face="Verdana, Arial, Helvetica, sans-serif">navn:</font></td></tr>
<tr><td><font size="1" face="Verdana, Arial, Helvetica, sans-serif">
<input type=tekst name=navn>
</font></td></tr>
<tr><td><font size="1" face="Verdana, Arial, Helvetica, sans-serif">e-mail:</font></td></tr>
<tr><td><font size="1" face="Verdana, Arial, Helvetica, sans-serif">
<input type=tekst name=email>
</font></td></tr>
<tr><td><font size="1" face="Verdana, Arial, Helvetica, sans-serif">besked:</font></td></tr>
<tr><td><font size="1" face="Verdana, Arial, Helvetica, sans-serif">
<textarea name=besked rows=5 cols=30></textarea>
</font></td></tr>
<tr><td><font size="1" face="Verdana, Arial, Helvetica, sans-serif">
<input type=submit value=send name=send>
</font></td></tr>
</form>
</table>
<font size="1" face="Verdana, Arial, Helvetica, sans-serif"><br>
<% CASE ELSE ' Denne case viser tagwallen, dette gøres som standard
' Her vælges alt fra tagwallen, og det sorteres med den nyeste besked først
strSQL = "SELECT * FROM tbl_tagwall ORDER BY tag_id DESC"
set rs = conn.execute(strSQL)
response.write "<table width=500 align=center>"
' link til at tilføje en besked
response.write "<tr><td><a href=tagwall.asp?mode=add>tilføj besked</a></td></tr>"
do while NOT rs.EOF ' Denne løkke køre indtil der ikke er flere beskeder i tagwall/gæstebogen
strOverskrift = rs("tag_overskrift") ' her hentes overskriften
strNavn = rs("tag_navn") ' her hentes navnet
strEmail = rs("tag_email") ' her hentes emailen
strBesked = rs("tag_besked") ' her hentes beskeden
strDato = rs("tag_dato") ' her hentes datoen
%>
</font><font face="Verdana, Arial, Helvetica, sans-serif"><tr><td><font size="1" face="Verdana, Arial, Helvetica, sans-serif">
<% =strOverskrift %>
</font></td>
</tr>
</font>
<tr>
<td><font size="1" face="Verdana, Arial, Helvetica, sans-serif">
Skrevet af <a href="mailto:<% =strEmail %>">
<% =strNavn %>
</a> d.
<% =strDato %>
</font></td>
</tr>
<tr><td><font size="1" face="Verdana, Arial, Helvetica, sans-serif">
<% =strBesked %>
</font></td></tr>
<font size="1"><font face="Verdana, Arial, Helvetica, sans-serif">
<%
rs.movenext ' her tages det næste element i databasen
loop ' "looper" while løkken
response.write "</table>"
END SELECT ' hele select casen sluttes her
conn.close ' database forbindelsen lukkes
set conn = nothing
%>
%>
</font></font>
</body>
</html>
Så må du gerne skrive hvad fejlen er, og så skrive det hele igen!! Hvis du sådan umidelbart kan finde flere fejl, så er du velkommen til at rette dem, samtidig.
venlig hilsen
Rasmus Henriksen
http://cortx.dk