Avatar billede totalpc Seniormester
04. januar 2010 - 20:35 Der er 6 kommentarer og
1 løsning

Fjerne ' fra mine indlæg

Hej
Jeg har lige opdaget at jeg ikke har taget højde for at man indtaster fx ' i mit kommentarfelt på min side. hvis der indtastes et ' brager det ned med et drøn :)
Hvordan er det at jeg undgår de specieltegn når jeg gemmer? Jeg bruger fckeditor, men går ikke ud fra at det betyder noget!

Side 1:
<form action="gem_fangst.asp" method="post">
<div class="style1">
<!-- #INCLUDE file="FCKeditor/fckeditor.asp" -->
<table style="width: 80%" align="center">
    <tr>
        <td class="style3">Overskrift</td>
    </tr>
    <tr>
        <td class="style2"><input name="overskrift" type="text" size="40"></td>
    </tr>
</table>
<table style="width: 80%" align="center">
    <tr>
        <td class="style3">Tekst</td>
    </tr>
    <tr>
        <td>
<%
Dim oFCKeditor
Set oFCKeditor = New FCKeditor
oFCKeditor.BasePath = "/FCKeditor/"
oFCKeditor.Create "FCKeditor1"
%>
</td>
    </tr>
</table>
<br>
<INPUT TYPE="image" SRC="grafik/send.jpg" VALUE="Submit" ALT="Login" NAME="login">
    </div>
    </form>

Side 2:
<!--#include file="db.inc"-->
<%
strSQL = "Insert into fangster (overskrift,beskrivelse) values('" & Request.Form("overskrift") & "','" & Request.Form("FCKeditor1") & "')"
response.write strsql
Conn.Execute(strSQL)
Conn.Close
Set Conn = Nothing
Response.Redirect "default.asp?sitepage=fangster"
%>
Avatar billede Slettet bruger
04. januar 2010 - 20:46 #1
Replace(Request.Form("overskrift"), "'", "''")


  // Steeven
Avatar billede erikjacobsen Ekspert
04. januar 2010 - 20:47 #2
Du skal ikke fjerne '-erne, men du skal sørge for at din SQL-sætning bliver bygget korrekt op.

Den "rigtige" løsning hedder "parameters", men du kan sikkert nøjes med at lave en replace på strengen, så eet ' udskriftes med to af slagsen: ''

Når det står i en '....'-streng i SQL-sætningen, bliver det til en enkelt '
Avatar billede Slettet bruger
04. januar 2010 - 20:52 #3
Jeg sætter lige nogle mellemrum ind, så det bliver tydeligere, hvad der gøres:

Replace(Request.Form("overskrift"), " ' ", " ' ' ")

Indsæt et ' foran en apostrof for at ophæve dens virkning i SQL m.m.


  // Steeven
Avatar billede totalpc Seniormester
04. januar 2010 - 21:07 #5
Tak det var lige hvad der skulle til.
Steeven smid et svar, Erik vil jo ikke have point ved jeg :)

Er der andre tegn man lige skal være opmærksom på eller er det kun ' ?
Avatar billede Slettet bruger
04. januar 2010 - 21:27 #6
Tegn som " kan også give nogle uforudsete hændelser.
Læs artiklen fra Keysersoze; den er god.

  // Steeven
Avatar billede totalpc Seniormester
04. januar 2010 - 21:29 #7
Fin artikel. Mange tak
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