webForumDet fria alternativet

Checkbox problem

3 svar · 362 visningar · startad av freddssite

freddssiteMedlem sedan maj 2001123 inlägg
#1

Det är endast en post som uppdateras även att flera är i kryssade... vad kan de va för fel?

<% If Request.Querystring("uppdatera") = "kalle" Then

Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("/db/dolme.mdb") & ";pwd=kalleknut;"
Set RecSet = Server.CreateObject("ADODB.Recordset")

Uppdatera = "SELECT * FROM sommar06 where ID IN (" & Request.Form("actionbox1") & ")"
RecSet.Open Uppdatera, Connect, adOpenDynamic, adLockOptimistic	

For Each ID In Request.Form("actionbox1")

RecSet("adresslista") = "ja"
RecSet.Update
Next

RecSet.Close
					
Set RecSet = Nothing
Connect.Close
Set Connect = Nothing

Response.Redirect("default.asp?meny=epost_lista&status=E-post lista uppdaterad")

end if %>
J.N.Medlem sedan apr. 20031 660 inlägg
#2

HEJ!

Utskrift av Uppdatera ger?

Fast, egentligen ska jag inte råda om detta, då jag inte använder .Update-metoden.

Jag hade gjort såhär:

"UPDATE sommar06 SET adresslista=-1 WHERE ID IN " & Request.Form("actionbox1")
emissionMedlem sedan dec. 19996 721 inlägg
#3

Felet är att du loopar igenom checkboxarna, men inte recordsetet. Dock är J.N.s lösning mycket bättre (du får förstås byta ut så att den uppdaterar rätt kolumn ("adresslista")).

Erik JuhlinMedlem sedan maj 200010 687 inlägg
#4

Kan också vara bra att kontrollera indatat så inte SQL-injection är möjlig.

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