24. januar 2006 - 21:55
Der er
12 kommentarer
Apostrof - formatet
Jeg har nu læst en hel masse om apostrofproblemer i ASP og SQL. Jeg har en asp kode: <% 'Oprettelse af connection '------------------------ strConnect = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\test.mdb" set Conn = server.createobject ("ADODB.connection") Conn.Open strConnect function fixSQL(strS) fixSQL = replace(strS, "'", "''") end function SQL = "INSERT into ordrer (" SQL = SQL + "navn," SQL = SQL + "adresse," SQL = SQL + "bem" SQL = SQL + ") VALUES ('" SQL = SQL + Request.Form("navn") + "','" SQL = SQL + Request.Form("adresse") + "','" SQL = SQL + Request.Form("bem") + "')" Conn.Execute(SQL) Conn.Close Set Conn = Nothing 'Response.Write (SQL) Response.Redirect "test.asp" %> Jeg har lavet en function som skal indsætte en ekstra apostrof, men hvordan får jeg sat funktionen ind på : SQL + Request.Form("navn") + "','" så jeg kan indsætte f eks navnet M'Arthur i min accesdatabase. Håber der er en som lige kan den korrekte kode og vil hjælpe mig.
Annonceindlæg fra Cognizant
24. januar 2006 - 22:02
#1
SQL = SQL + fixSQL(Request.Form("navn")) + "','"
24. januar 2006 - 22:03
#2
Og så plejer man at bruge & i VBScript SQL = SQL & fixSQL(Request.Form("navn")) & "','"
24. januar 2006 - 22:15
#3
Jeg tester lige. Men det der "+" virker ellers helt OK.
24. januar 2006 - 22:27
#4
Det virker ikke hos mig. Der må være en kommafejl eller parantes som sidder forkert. Har du en ide ?
24. januar 2006 - 22:29
#5
Nej, jeg er ikke synsk. Jeg er rimelig sikker på at det jeg foreslår virker.
24. januar 2006 - 22:40
#6
Ok. Jeg prøver i morgen. Tak for hjælpen anyway.
24. januar 2006 - 22:43
#7
Du kunne evt bare fortælle hvad din fejl er, og vise din kode. Det er sådan set det jeg mener med, at jeg ikke er synsk.
24. januar 2006 - 22:47
#8
Ok. Men hele koden vises. Jf ovst. Fejlen består i at sql-ellen ikke bliver kørt
24. januar 2006 - 22:51
#9
Undskyld her er koden som jeg forsøger at køre: <% 'Oprettelse af connection '------------------------ strConnect = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\test.mdb" set Conn = server.createobject ("ADODB.connection") Conn.Open strConnect function fixSQL(strS) fixSQL = replace(strS, "'", "''") end function SQL = "INSERT into ordrer (" SQL = SQL + "navn," SQL = SQL + "adresse," SQL = SQL + "bem" SQL = SQL + ") VALUES ('" SQL = SQL + fixSQL(Request.Form("navn")) + "','" SQL = SQL + Request.Form("adresse") + "','" SQL = SQL + Request.Form("bem") + "')" 'sql=sql & "Tidsstempel='" & now() & "' WHERE ordrer.[no]=" & no 'sql=sql & "Bruger='" & email & "' WHERE ordrer.[no]=" & no Conn.Execute(SQL) Conn.Close Set Conn = Nothing 'Response.Write (SQL) Response.Redirect "test.asp" %>
24. januar 2006 - 22:57
#10
"Men hele koden vises" ?? Den fik jeg ikke. Men start med at udskifte + med & for ellers er der ingen grund til at lede efter fejl.
24. januar 2006 - 23:25
#11
Du har ret i at SQL kører ok. Der er noget andet galt og det er ikke de der "+". Jeg må se på det i morgen. Tak for hjælpen. Læg et svar og du får point min ven.
24. januar 2006 - 23:29
#12
Jeg samler slet ikke på point, tak.
Kurser inden for grundlæggende programmering