Si possono fare entrambe le cose.
Per la prima ipotesi (un link per ogni campo) la traccia può essere:
codice:
sql = "select ...tutti i campi... from tabella"
recordset.open sql, conn, 3, 3
%>
<table>
<%
do until recordset.eof
%>
<tr>
<td><%=recordset("ID")%></td>
<td><%=recordset("campo1")%></td>
<td><%=recordset("campo2")%></td>
............................
<td><a href="pagina2.asp?ID=<%=recordset("ID")%>">Passa i dati a pagina 2</td>
</tr>
<%
recordset.movenext
loop
ecc. ecc.
e, a pagina2.asp, avrai una istruzione che recupera l'ID:
codice:
ID = request.querystring("ID")
e lo elabora a dovere.
Per la seconda ipotesi (elenco dei records con un campo da checkare) ti posto qui di seguito un po' di codice di una vecchia applicazione su cui avevo lavorato, e che tra le altre cose aveva un form composto da una tabella con un record preso dal database, e un campo (anzi, 5 campi, in quel caso) che, se checkati, dovevano essere recuperati dalla pagina update_privilegi.asp.
E' un po' la stessa solfa, vedi se riesci a capirci qualche cosa. Il form veniva creato in questo modo:
codice:
<form BOTID="0" METHOD="post" ACTION="update_privilegi.asp?userCode=<%=codice%>">
<table border="1" cellpadding="0" cellspacing="1" style="border-collapse: collapse" width="100%">
<tr>
<th width="30%" bgcolor="#FFFF99">Username</th>
<th width="10%" bgcolor="#FFFF99">Tipo</th>
<th width="5%" bgcolor="#FFFF99">Serv1</th>
<th width="5%" bgcolor="#FFFF99">Serv2</th>
<th width="5%" bgcolor="#FFFF99">Serv3</th>
<th width="5%" bgcolor="#FFFF99">Serv4</th>
<th width="5%" bgcolor="#FFFF99">Serv5</th>
<th width="35%" bgcolor="#FFFF99">Opzioni</th>
</tr>
<tr>
<td width="30%"><%=rs_priv("name")%></td>
<td width="10%">
<%=rs_priv("authority") %>
</td>
<% If rs_priv("authority") <> "admin" Then %>
<td width="5%" bgcolor="#FFFF99" align="center">
<input TYPE="checkbox" NAME="New_Servizio1" value="true" <%if rs_priv("servizio1")=true then response.write("checked") end if%> >
</td>
<td width="5%" bgcolor="#FFFF99" align="center">
<input TYPE="checkbox" NAME="New_Servizio2" value="true" <%if rs_priv("servizio2")=true then response.write("checked") end if%>>
</td>
<td width="5%" bgcolor="#FFFF99" align="center">
<input TYPE="checkbox" NAME="New_Servizio3" value="true" <%if rs_priv("servizio3")=true then response.write("checked") end if%>>
</td>
<td width="5%" bgcolor="#FFFF99" align="center">
<input TYPE="checkbox" NAME="New_Servizio4" value="true" <%if rs_priv("servizio4")=true then response.write("checked") end if%>>
</td>
<td width="5%" bgcolor="#FFFF99" align="center">
<input TYPE="checkbox" NAME="New_Servizio5" value="true" <%if rs_priv("servizio5")=true then response.write("checked") end if%>>
</td>
<%end if%>
<td width="35%"> <p align="center"><a href="aggiorna_profilo.asp?userCode=<%=rs_priv("code")%>">
Modifica Profilo</a>
| <a onclick="return confirmDelete()" href="cancella_utente.asp?userCode=<%=rs_priv("code")%>">Cancella
Utente</a>
</td>
</tr>
</table>
<input TYPE="submit"><input TYPE="Reset"></p>
</p>
</form>
Nella tabella che ne usciva si potevano checkare (o de-checkare) uno o più campi tra i 5 con la checkbox, e i loro valori venivano recuperati nella pagina update_privilegi.asp in questo modo:
codice:
codice=request.querystring("userCode")
servizio1=request.form("new_servizio1")
if not servizio1="true" then
servizio1="false"
end if
servizio2=request.form("new_servizio2")
if not servizio2="true" then
servizio2="false"
end if
servizio3=request.form("new_servizio3")
if not servizio3="true" then
servizio3="false"
end if
servizio4=request.form("new_servizio4")
if not servizio4="true" then
servizio4="false"
end if
servizio5=request.form("new_servizio5")
if not servizio5="true" then
servizio5="false"
end if
Ora, questa procedura veniva eseguita per un singolo record, ma niente impedisce che il form possa contenere una serie di records (recuperati ciclando un recordset popolato con una query di select) e che premendo il pulsante submit tu abbia una serie di request.form("nome_campo_con_la_checkbox") con la condizione
codice:
if nome_campo_con_la_checkbox.checked then
ID = request.form("ID")
end if
e poi elabori i record i cui campi ID sono quelli recuperati..........