et exempel på at opdatere flere records på een gang ?
Har nogen et exempel på hvordan man opdaterer flere records på een gang ?jeg har et exempel selv, men det virker ikke, når jeg sætter mere end eet kryds i afstemningen (se fejlen nederst) :
' kør en løkke 87 gange, sæt c=1, hvis u_input er tom sæt c=0, sql = indsæt i tabellen ballot, i felterne ip og s + u_input
' (feks. s3, s4 eller s87), værdierne "brugerens ipnr" og 1eller nul (som c er = med baseret på u_inputs værdi)
' "formen" er en stemmeseddel med Checkbox´s, dvs. man kan vælge flere end een. Hver checkbox hedder u_input og
' værdien af checkbox´n er sat = 1 til 87, efter gennemløb af en løkke som henter indhold af en database (med 87 emner)
u_input=request.form("u_input")
u_ip=request.servervariables("remote_addr")
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)};"
DSN = DSN & "DBQ=" & Server.MapPath ("votes_db.mdb")
Conn.Open DSN
set rs = server.createobject("ADODB.Recordset")
SQL = "SELECT * FROM maps"
rs.open SQL, Conn
%>
<p>Næste mapcycle..Top 20 vinder !<br>
<form method="post" action="<%= request.servervariables("script_name") %>">
<%
i = 1
DO WHILE NOT rs.EOF
%>
<%response.write i%> <input type="checkbox" value="<%=i%>" name="u_input"><%=rs("maptitel")%><br>
<%
i = i + 1
rs.movenext
loop
rs.close
Conn.close
set Conn = nothing
%>
<input type="submit" value="Submit" ></p>
</form>
' her i mellem er noget kontrol på om man har stemt før, baseret på ens ip-adresse..det virker så jeg skriver det ikke med
' her kommer mit "problembarn" :
for x = 1 to 87
c=1
if u_input = "" then c=0
sql = "insert into ballot (ip, s" & u_input &") "
sql = sql & "values ('" & u_ip & "',c)"
rs.Open sql, cn
next
end if
Fejlen jeg får er denne :
Error Type:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC Microsoft Access-driver] Antallet af forespørgselsværdier og destinationsfelter er ikke det samme.
/vote_dbdenne.asp, line 68
Browser Type:
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)
Page:
POST 29 bytes to /vote_dbdenne.asp
POST Data:
u_input=3&u_input=4&u_input=6