23. oktober 2003 - 23:37
Der er
34 kommentarer og 1 løsning
Opdatering af celler + posting af '-tegnet
Jeg har en følgende fil, som skal opdaterer data i min DB. Det ser således ud: <% if session.contents("login") <> 1 then response.redirect "../admin.asp?login=nej" end if Dim IP IP = Request.Servervariables("REMOTE_ADDR") Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath(".../db/content.mdb") Conn.Open DSN strSQL = "Select * from indhold where id = " & Request.Querystring("id") Set rs = Conn.Execute(strSQL) strSQL = "Update indhold set" strSQL = strSQL & "tekst= '" & Request.Form("1") & "', " strSQL = strSQL & "tid= '" & Response.Write(now()) & "'" strSQL = strSQL & "ip= '" & (IP) & "'" strSQL = strSQL & " Where id = '" & Response.Write("id") conn.execute(strSQL) Conn.Close Set Conn = Nothing response.redirect "oversigt.asp" %> Nogle der kan se problemet? Ellers om kan komme med et alternativ? - Endnu et spørgsmål!! Hvad skal jeg gøre hvis jeg gerne vil skrive '-tegn når jeg poster? Jeg ønsker ikke at få en replace metode hvor jeg skal skrive 2 x ' for et der skal stå ét '
Annonceindlæg fra Barco
23. oktober 2003 - 23:40
#1
Replace(Request.Form("feltnavn"), "'", "''") //>Rune
23. oktober 2003 - 23:40
#2
Fx. strSQL = "Update indhold set" strSQL = strSQL & "tekst= '" & Replace(Request.Form("1"), "'", "''") & "', " strSQL = strSQL & "tid= '" & Response.Write(now()) & "'" strSQL = strSQL & "ip= '" & (IP) & "'" strSQL = strSQL & " Where id = '" & Response.Write("id") conn.execute(strSQL) //>Rune
24. oktober 2003 - 00:21
#3
strSQL = strSQL & "tekst= '" & Request.Form("1") & "', " skal være: strSQL = strSQL & "tekst= '" & Replace(Request.Form("1"),"'","'") & "', " for så vil ' tegnet også optræde korrekt, når man skriver dataene ud...
24. oktober 2003 - 00:25
#4
therealyoda> Øhh, det vil det oxo ellers! //>Rune
24. oktober 2003 - 01:00
#5
for mig at se erstatter du et ' med to ' mig bekendt vil det så ikke blive vist ?
24. oktober 2003 - 01:01
#6
Tror vidst lige du skla prøve det af, Access konvetere selv om! //>Rune
24. oktober 2003 - 01:02
#7
hmm havde ikke lige set det var access.. er selv vandt til mysql .. men nok om det..
24. oktober 2003 - 13:37
#8
Det lyder altsammen vældig fint, men jeg tror der er en fejl i min kode, da den viser fejl. I får lige sourcecode på mine 2 filer. fil1.asp : <% Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath(".../db/content.mdb") Conn.Open DSN strSQL = "Select * from indhold where id = " & Request.Querystring("id") Set rs = Conn.Execute(strSQL) Response.Write "<form method=post action='fil2.asp?id=" & rs("id") & "'>" Response.Write "" & rs("ip") & "<br><br>" Response.write "<br> <textarea name='1' cols='60' rows='10'>""" & rs("text") & """</textarea><br>" Response.write "<input type=submit size='19' value=opdater></form>" Conn.Close Set Conn = Nothing %> fil2.asp : Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath(".../db/content.mdb") Conn.Open DSN strSQL = "Select * from indhold where id = " & Request.Querystring("id") Set rs = Conn.Execute(strSQL) strSQL = "Update indhold set" strSQL = strSQL & "tekst= '" & Replace(Request.Form("1"), "'", "''") & "', " strSQL = strSQL & "tid= '" & Response.Write(now()) & "'" strSQL = strSQL & "ip= '" & (IP) & "'" strSQL = strSQL & " Where id = '" & Response.Write("id") conn.execute(strSQL) conn.execute(strSQL) Conn.Close Set Conn = Nothing response.redirect "oversigt.asp" Umiddelbart kan jeg ikke se hvad der er galt.
24. oktober 2003 - 13:40
#9
hvilken fejl viser den ?
24. oktober 2003 - 13:41
#10
evt link til send
24. oktober 2003 - 13:49
#11
24. oktober 2003 - 13:51
#12
strSQL = strSQL & " Where id = '" & Response.Write("id") skal rettes til : strSQL = strSQL & " Where id = '" & id
24. oktober 2003 - 13:53
#13
har lige rettet med lader ikke til at virke
24. oktober 2003 - 14:05
#14
prøv at skriv en response.write(strSQL) før conn.execute(strSQL)
24. oktober 2003 - 14:06
#15
Hvad mener du? (jeg er har ikke programmeret i over et halvt år.. så jeg er ikke helt frisk endnu ;) )
24. oktober 2003 - 14:07
#16
strSQL = strSQL & " Where id = '" & Response.Write("id") response.write (strSQL) conn.execute(strSQL)
24. oktober 2003 - 14:09
#17
virker stadig ikke. Nogen der har et helt andet alternativ for mig? Altså en anden måde at gøre det på? Lader vist til at min måde er ret så skod :/
25. oktober 2003 - 01:50
#18
Det der var planen med response.write var at se dit sql kald.. Update indhold settekst= '""', tid= ''ip= '80.160.191.62' Where id = ' og der er jo bestemt noget galt.. ret din kode til : strSQL = "Update indhold set" strSQL = strSQL & " tekst= '" & Replace(Request.Form("1"), "'", "'") & "', " strSQL = strSQL & " tid= '" & now() & "', " strSQL = strSQL & " ip= '" & IP & "', " strSQL = strSQL & " Where id = '" & id så skulle det meget gerne virke..
25. oktober 2003 - 15:39
#19
skidtet virker stadig ikke - tjek evt. link
25. oktober 2003 - 18:28
#20
ok, her får I lige hvordan fil2.asp ser ud. Måske er det noget lort jeg selv har lavet? Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath(".../db/content.mdb") Conn.Open DSN strSQL = "Select * from indhold where id = " & Request.Querystring("id") Set rs = Conn.Execute(strSQL) strSQL = "Update indhold set" strSQL = strSQL & " tekst= '" & Replace(Request.Form("1"), "'", "'") & "', " strSQL = strSQL & " tid= '" & now() & "', " strSQL = strSQL & " ip= '" & IP & "', " strSQL = strSQL & " Where id = '" & id conn.execute(strSQL) Conn.Close Set Conn = Nothing response.redirect "oversigt.asp"
26. oktober 2003 - 13:56
#21
strSQL = strSQL & " Where id = '" & id du mangler lige at trykke enter efter denne linje.. den tror denne og næste linje er den samme linje.. det skal detjo ik være
26. oktober 2003 - 14:25
#22
dvs der bare skal stå: ok, her får I lige hvordan fil2.asp ser ud. Måske er det noget lort jeg selv har lavet? Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath(".../db/content.mdb") Conn.Open DSN strSQL = "Select * from indhold where id = " & Request.Querystring("id") Set rs = Conn.Execute(strSQL) strSQL = "Update indhold set" strSQL = strSQL & " tekst= '" & Replace(Request.Form("1"), "'", "'") & "', " strSQL = strSQL & " tid= '" & now() & "', " strSQL = strSQL & " ip= '" & IP & "', " strSQL = strSQL & " Where id = '" & id conn.execute(strSQL) Conn.Close Set Conn = Nothing response.redirect "oversigt.asp" ?? For det virker nemlig stadig ikke.. fuck hvor er det her asp pis forvirrende
26. oktober 2003 - 20:44
#23
Har også lige tjekket jeres svar angående '-tegnet. Det virker skam heller ikke :/
26. oktober 2003 - 20:52
#24
hov, det virker sq alligevel, sry
27. oktober 2003 - 20:31
#25
Jeg har lige ændret lidt på fil2.asp. Ændringen er at fil1.asp har fået sig en tekstboks med id nr i. fil2.asp kommer så til at hente den, men det virker stadig ikke. Den siger der er problemer med "conn.execute(strSQL)" således ser den ud(fil2.asp): if session.contents("login") <> 1 then response.redirect "../admin.asp?login=nej" end if Dim IP IP = Request.Servervariables("REMOTE_ADDR") Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath(".../db/content.mdb") Conn.Open DSN strSQL = "Update indhold set " strSQL = strSQL & "navn= '" & Replace(Request.Form("navn"), "'", "''") & "', " strSQL = strSQL & "text= '" & Replace(Request.Form("tekst"), "'", "''") & "', " strSQL = strSQL & "ip= '" & (IP) & "'" strSQL = strSQL & " Where id = " & Request.Form("postid") conn.execute(strSQL) Conn.Close Set Conn = Nothing response.redirect "oversigt.asp"
27. oktober 2003 - 20:31
#26
hov.. jeg har selvføleglig lavet den ændren som "therealyoda" forslog med enter før conn.execute osv.
27. oktober 2003 - 23:02
#27
du har dog stadig ikke accepteret mit svar.
27. oktober 2003 - 23:05
#28
tjaeh.. mit lort virker dog stadig ikke, men jeg opgir sq.
27. oktober 2003 - 23:07
#29
hjælper gerne.. du har da lige haft det til at virke ?
27. oktober 2003 - 23:08
#30
nej.. jeg fik kun delen med at tilføje '-tegnet til at virke. Den gider dog stadig ikke opdaterer efter jeg har gjort som du har sagt. I øjeblikket ser min sourcecode således ud ^ ^
27. oktober 2003 - 23:17
#31
er du sikker på at: strSQL = strSQL & " Where id = " & Request.Form("postid") ikke skal være : strSQL = strSQL & " Where id = " & Request.querystring("id")
27. oktober 2003 - 23:18
#32
ellers skriv lige til mig på icq:17571515 eller msn: therealyoda666@hotmail.com
27. oktober 2003 - 23:19
#33
nej, fordi jeg har gjort det så smart at den i fil1.asp tager id'et som er printet ud på et felt.. den hedder så postid. Men det var åbenbart ikke så smart som regnet, da skidtet rent faktisk viste sig ikke at virke alligevel
27. oktober 2003 - 23:21
#34
du har glemt at lave feltet på din edit.asp eller også har du glemt at uploade filen.. men lad os tage den over msn eller icq..
27. oktober 2003 - 23:22
#35
hmm... ja, skal vist lige uploade nye filer.. det sker nu
Kurser inden for grundlæggende programmering