se il recordset come credo contiene una chiave contatore aggiungi la chiave al posto del CStr(i)
qualcosa del tipo:
codice:
<%
k = 0
while not Rs.eof
MImporto = "MImporto" & Rs("CHIAVERECORD")
'Dove CHIAVERECORD E' IL CONTATORE e quindi un numero univoco
MData = "MData" & Rs("CHIAVERECORD")
MTipologia = "MTipologia" & Rs("CHIAVERECORD")
MCommento = "MCommento" & Rs("CHIAVERECORD")
'Accodi le chiavi in una variabile che ti metterai in un campo hidden
if k = 0 then
stringTotaleChiavi = Rs("CHIAVERECORD")
else
stringTotaleChiavi = "," & stringTotaleChiavi & Rs("CHIAVERECORD")
end if
'
' Implementi la tua parte di output
'
k = k + 1
Rs.Movenext
Wend
%>
Alla fine dello script ti trovi la variabile stringTotaleChiavi che contiene
tutti gli id
e la piazzi in un
codice:
<input type="hidden" name="TOTALECHIAVI" value="<%=StringTotaleChiavi%>">
Al submit splitti le chiavi in un array
codice:
<%
arrChiavi = Split(Replace(Request("TOTALECHIAVI")&""," ","")
'ti scorri l'array e mano mano aggiorni o fai le operazioni che ti interessano
for k=0 to UBound(arrChiavi)
'ti costruisci il nome dinamico della variabile querystring
tempMImporto = Request("MImporto" & ArrChiavi(k))
tempMData = Request("MData" & ArrChiavi(k))
tempMTipologia = Request("MTipologia" & ArrChiavi(k))
tempMCommento = Request("MCommento" & ArrChiavi(k))
'A questo punto hai tutti i valori del record che ha chiave nell'array e
'puoi fare un update di questo tipo
SQLTmp = "Update [TUATABELLA] set Importo = '" & tempMImporto & "',"
"Data = #" & tempMData & "#, Tipologia = " & tempMTipologia & "," &_
"Commento = '" & & "' where CHIAVERECORD = " & arrChiavi(k)
'i campi sono logicamente esemplificativi e pure il loro cast
Connection.execute SQLTmp
'Pulisci i valori
tempMImporto = "":tempMData = "":tempMTipologia = "":tempMCommento = ""
next
%>