webForumDet fria alternativet

db och " '

3 svar · 157 visningar · startad av aleborg

aleborgMedlem sedan jan. 20013 341 inlägg
#1

Jag har ett fält i db:n som är till för htmlkod, jag använder PM som datatyp. Men hur får jag db:n att ta emot " ' < > mm?
Nu får jag felmeddelandet:

Microsoft JET Database Engine fel '80040e14'

Syntaxfel (operator saknas) i frågeuttrycket ''<script language="javascript"> <!-- //tmtC_cssOnBrowser tmt_css_NN = "ns.css"; tmt_css_IE = "ie.css"; if(document.layers){ document.write("<link rel='stylesheet' href='" + tmt_css_NN + "' type='text/css'>"); } if(document.all){ document.wr'.

/admin/layoutsucc.asp, line 93

Att använda text som datatyp är ju uteslutet, behövs lite mer plats!

Hjälp hur gör jag?

@ndersMedlem sedan juni 200032 969 inlägg
#2

du använder funktionen replace() för att escape:a dina apostrofer i sql-frågan.

strText = replace(strText, "'", "''")

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

aleborgMedlem sedan jan. 20013 341 inlägg
#3

Tack, var ska jag placera det i koden du hjälpte mig med innan??

@ndersMedlem sedan juni 200032 969 inlägg
#4

så här till exempel:

<%
dim Conn
dim strTitle, strKeywords, strDescription, strHeadtag, strHtmlhead, strHtmlfoot
strTitle = Replace (Request.Form("title"), "'", "''")
strKeywords = Replace (Request.Form("keywords"), "'", "''")
strDescription = Replace (Request.Form("description"), "'", "''")
strHeadtag = Replace (Request.Form("headtag"), "'", "''")
strHtmlhead = Replace (Request.Form("htmlhead"), "'", "''")
strHtmlfoot = Replace (Request.Form("htmlfoot"), "'", "''")

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("../../../data/news.mdb")
Conn.Execute("UPDATE Admin SET Title = '" & strTitle & "', Keywords = '" & strKeywords & "', Description = '" 
& strDescription & "', Headtag = '" & strHeadtag & "', Htmlhead = '" & strHtmlhead & "', Htmlfoot = '" & strHtmlfoot & "'")
Conn.Close
%>

själva replaceandet passar ju bra att göra en funktion av, speciellt om det är flera specialtecken som bråkar med dig.

mvh,

------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>

129 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)