Avatar billede danscape Nybegynder
04. februar 2002 - 22:44 Der er 5 kommentarer og
1 løsning

Afvikler HTML i en gæstebog??!

Hej!


Jeg har et problem, og det er at folk kan skrive HTML koder i min gæstebog, hvilke er ret provokerende, hvis I forstå... ;)

Her ser I koden til den form hvor man skriver beskederne i min gæstebog... hvor skal jeg rette henne, så den ikke kan afvikle HTML!?


På forhånd rigtig mange tak ;-)



<%
' Databaseforbindelse - husk at angive sti til din database
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath ("guestbook.mdb")
Conn.Open DSN

strSQL = "Select * from jwgbog"

set rscount = conn.execute("select count(id) as antal from jwgbog")
antal = rscount("antal")
set rscount = nothing
%>
<html>
<head>
<title>GFO Tjørnegård</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" href="styles.css" type="text/css">
</head>
<body bgcolor="#FFFFFF" text="#000000" link="#006699" vlink="#006699" alink="#006699">
<table border="0" width="501" bgcolor="#000000" cellspacing="1" cellpadding="0" align="center">
  <tr>
    <td bgcolor="#FFFFFF" valign="top" colspan="2" width="524">
      <div align="center">
        <p>&nbsp;                  <% mode = request("mode") %>
                  <%
Const adOpenKeyset = 1
Const adLockOptimistic = 3
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("guestbook.mdb") & ";UID=admin;PWD=;"

    Set rs = Server.CreateObject("ADODB.RecordSet")
    strSQL = "Select * From jwgbog"
    rs.Open strSQL, Conn, adOpenKeyset, adLockOptimistic
%>
                  <% if mode ="" then %>
                <form action="add.asp?mode=tilfojet" method="post">
                  <center>
                    <font face=tahoma size=2>
                    <div align="center">
              <table width="400" border="0" cellspacing="1" cellpadding="3" class="bottom" align="center" bgcolor="#f7f7f7">
                <tr>
                  <td width="134"><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Dit
                    Navn <span class="rot"> <font color="#FF0000">*</font></span></font><br>
                    <input type="text" name="navn" maxlength="100" class="bottom">
                  </td>
                  <td width="251"><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Alder</font><span class="rot"><br>
                    <input type="text" name="alder" maxlength="100" class="bottom">
                    </span></td>
                </tr>
                <tr>
                  <td width="134"><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Land</font><br>
                    <input type="text" name="land" maxlength="100" class="bottom">
                  </td>
                  <td width="251"><font size="1" face="Verdana, Arial, Helvetica, sans-serif">
                    Icq</font><span class="rot"><br>
                    <input type="text" name="icq" maxlength="100" class="bottom">
                    </span></td>
                </tr>
                <tr>
                  <td colspan="2" height="2"><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Billder:</font>
                    <input type="radio" value="1" checked name="pic">
                    <img src="1.gif" align="middle">
                    <input type="radio" name="pic" value="2">
                    <img src="2.gif" align="middle">
                    <input type="radio" name="pic" value="3">
                    <img src="3.gif" align="middle">
                    <input type="radio" name="pic" value="4">
                    <img src="4.gif" align="middle">
                    <input type="radio" name="pic" value="5">
                    <img src="5.gif" align="middle"></td>
                </tr>
                <tr>
                  <td colspan="2" height="167"><font size="1" face="Verdana, Arial, Helvetica, sans-serif">
                    Kommetare<span class="rot"><font color="#FFFFFF"> <font color="#FF0000">*</font></font></span><font color="#FF0000">
                    </font></font><font color="#FF0000"><br>
                    </font>
                    <textarea name="kommetare" cols="50" rows="8" class="bottom"></textarea>
                  </td>
                </tr>
                <tr>
                  <td width="134"><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Email<span class="rot">
                    </span></font><span class="rot"><br>
                    <input type="text" name="email" maxlength="100" class="bottom" size="15">
                    </span></td>
                  <td width="251"><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Hjemmeside</font><span class="rot"><font face="Verdana, Arial, Helvetica, sans-serif"><br>
                    <input type="text" name="url" value="http://" maxlength="100"  class="bottom" size="15">
                    </font></span></td>
                </tr>
                <tr>
                  <td colspan="2"><font size="1" face="Verdana, Arial, Helvetica, sans-serif"><span class="rot">
                    </span></font>
                    <table border="0" cellspacing="0" cellpadding="0" width="200">
                      <tr>
                        <td align="left">
                          <div align="left"><font size="1" face="Verdana, Arial, Helvetica, sans-serif"><span class="rot">
                            <font color="#FF0000">*</font></span><font color="#666666">
                            = Skal indtastes</font></font></div>
                        </td>
                      </tr>
                    </table>
                  </td>
                </tr>
              </table>
              <br>
              <b><font size="2" face="Verdana, Arial, Helvetica, sans-serif" class="mehr_platz">
              </font></b> <br>
              <table border="0" cellspacing="0" cellpadding="0" width="400">
                <tr>
                  <td>
                    <div align="center"><font face="Verdana, Arial, Helvetica, sans-serif"><b>
                      <input type="Submit" value="Tilf&oslash;j" name="Submit">
                      <input type="Reset" value="Slet Alt" name="Reset">
                      </b></font></div>
                  </td>
                </tr>
              </table>
              <br>
                    </div>
                    </font>
                  </center>
                  <br>
                </form>
                <% end if %>
                <% if mode ="tilfojet" then

      rs.AddNew
      rs("navn") = Request.form("navn")
      rs("alder") = Server.HTMLEncode(Request.form("alder"))
      rs("email") = Server.HTMLEncode(Request.form("email"))
      rs("icq") = Server.HTMLEncode(Request.form("icq"))
      rs("pic") = Request.form("pic")
      rs("url") = Request.form("url")
      rs("kommetare") = Server.HTMLEncode(Request.form("kommetare"))
      rs("land") = Server.HTMLEncode(Request.form("land"))
      rs("dato") = date()
      rs("kl") = time()
      rs("Ip") = Request.ServerVariables("REMOTE_ADDR")
      rs.Update
%>
                <p class="menuoverskrift2">Tak for din besked ;O)<br>
                <br>
                <a href="guestbook.asp">Tilbage til gæstebogen......</a></p>
                <p><span class="skriftype"></span><br>
                  <br>
                  <% end if %></p></div>
    </td>
  </tr>
</table>
</body>
</html>
Avatar billede cool_casper Nybegynder
04. februar 2002 - 22:53 #1
kommetare = Replace(Server.HTMLEncode(Request.form("kommetare")),"<","&lt;")
  kommetare = Replace(Server.HTMLEncode(Request.form("kommetare")),">","&gt;")

<% if mode ="tilfojet" then

  kommetare = Replace(Server.HTMLEncode(Request.form("kommetare")),"<","&lt;")
  kommetare = Replace(Server.HTMLEncode(Request.form("kommetare")),">","&gt;")
      rs.AddNew
      rs("navn") = Request.form("navn")
      rs("alder") = Server.HTMLEncode(Request.form("alder"))
      rs("email") = Server.HTMLEncode(Request.form("email"))
      rs("icq") = Server.HTMLEncode(Request.form("icq"))
      rs("pic") = Request.form("pic")
      rs("url") = Request.form("url")
      rs("kommetare") = kommetare
      rs("land") = Server.HTMLEncode(Request.form("land"))
      rs("dato") = date()
      rs("kl") = time()
      rs("Ip") = Request.ServerVariables("REMOTE_ADDR")
      rs.Update
Avatar billede cool_casper Nybegynder
04. februar 2002 - 22:56 #2
Hov, de to øverste linier kan du godt fjerne....! :-)
Avatar billede askhoej Praktikant
04. februar 2002 - 22:56 #3
Nedenstående funktion kan bruges til at fjerne HTML:


Function FjernHTML(strHTML)

Set objReg = New ReqExp

With objReg
.Pattern = "<[^>]+>"
.IgnoreCase = True
.Global = True
End With

FjernHTML = objReg.Replace(strHTML,"")

Set objReg = Nothing

End Function
Avatar billede grunken Nybegynder
04. februar 2002 - 22:57 #4
kan du ikke bruge replace ???

f.eks.

check1 = replace(Request.form("kommetare"), "<", "&lt;")
check2 = replace(check1, ">", "&gt;")

rs("kommetare") = Server.HTMLEncode(Check2)
-grunken
Avatar billede askhoej Praktikant
04. februar 2002 - 23:01 #5
Og den bruges sådan her:

rs.AddNew
      rs("navn") = Request.form("navn")
      rs("alder") = Server.HTMLEncode(Request.form("alder"))
      rs("email") = Server.HTMLEncode(Request.form("email"))
      rs("icq") = Server.HTMLEncode(Request.form("icq"))
      rs("pic") = Request.form("pic")
      rs("url") = Request.form("url")
      rs("kommetare") = Server.HTMLEncode(FjernHTML(Request.form("kommetare")))
      rs("land") = Server.HTMLEncode(Request.form("land"))
      rs("dato") = date()
      rs("kl") = time()
      rs("Ip") = Request.ServerVariables("REMOTE_ADDR")
      rs.Update
Avatar billede danscape Nybegynder
10. februar 2002 - 00:44 #6
Blev vi ikke klogere af, så har derfor fået det rettet et andesteds!

Takker for hjælpen aligevel =)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester