13 messaggi dal 17 maggio 2001
Ciao a tutti vi chiedo il favore di aiutarmi a risolvere questo problema:
Ho una pagina ASP che visualizza una lista di record di un Database.
Come si può vedere dal codice di seguito ho messo una checkbox su ogni record e lo scopo è di dare la possibilità, a chi ha l'autroizzazione di vedere la lista dei record di poter selezionare "n" record e, con un messaggio di conferma, poter cancellare i record selezionati.
Spero di essere stato chiaro!
Ecco il codice.
Grazie 1000!

-----------------------------------------


<html>
<head>
<title>Corpea</title>
<link rel="stylesheet" href="../css/style.css">
</head>
<body>

<br>
<br>
<table width="100%" border="0" cellspacing="0" cellpadding="0" bordercolor="#0033CC">
<tr>
<td bordercolor="#CCCCCC">
<table border="0" width="100%" cellspacing="1" cellpadding="0">
<tr>
<td height="28" class="background" colspan="20">
<p class="testoblu" align="center">ELENCO DEI RECORD</p>
</td>
</tr>
<tr align="center" bgcolor="#0033CC"><font color="#FFFFFF">
<td class="titolobianco">Cancella</td>

<td class="titolobianco" colspan="2">Cognome</td>
<td class="titolobianco">Nome</td>
<td class="titolobianco">Eta</td>
<td class="titolobianco">Indirizzo</td>
<td class="titolobianco">Residenza</td>
<td class="titolobianco">Email</td>
<td class="titolobianco">Telefono</td>
<td class="titolobianco">Professione</td>
<td class="titolobianco">Scoperto</td>
<td class="titolobianco">Programmi</td>
</font></tr>

<%
Dim cognome
cognome = request.form("cognome")
Dim nome
nome = request.form("nome")
Dim eta
eta = request.form("eta")
Dim indirizzo
indirizzo = request.form("indirizzo")
Dim residenza
residenza = request.form("residenza")
Dim email
email = request.form("email")
Dim telefono
telefono = request.form("telefono")
Dim professione
professione = request.form("professione")
Dim scoperto
scoperto = request.form("scoperto")
Dim programmi
programmi = request.form("programmi")


'imposto la connessione
Set OBJdbConnection = Server.CreateObject("ADODB.Connection")
OBJdbConnection.Open "DRIVER=Microsoft Access Driver (*.mdb); DBQ=" & Server.MapPath("/corpea/registrazione/archivio_corpea.mdb")

strQuery1 = "select * from archivio_corpea"
Set RS=OBJdbConnection.Execute(strQuery1)


'creo l'oggetto recordset
Set RS = Server.CreateObject("ADODB.Recordset")

RS.Open "archivio_corpea",OBJdbConnection,3,3


%>


<form name=Modulo action="precancella.php" method="post">
<%
Do while not RS.EOF
%>

<tr>
<td bgcolor="#666666" align="center">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>
<center>
<input type=checkbox name= <% response.write(id) %> >
</center>
</td>
</tr>
</table>

<td align="center" class="backtest1" height="30" colspan="2"> <span class="testonero">

<% response.write(rs("cognome")) %>
</span></td>
<td align="center" class="backtest1" height="30"> <span class="testonero">
<% response.write(rs("nome")) %>
</span></td>
<td align="center" class="backtest1" height="30"> <span class="testonero">
<% response.write(rs("eta")) %>
</span></td>
<td align="center" class="backtest1" height="30"> <span class="testonero">
<% response.write(rs("indirizzo"))%>
</span></td>
<td align="center" class="backtest1" height="30"> <span class="testonero">
<% response.write(rs("residenza")) %>
</span></td>
<td align="center" class="backtest1" height="30"> <span class="testonero">
<% response.write(rs("email")) %>
</span></td>
<td align="center" class="backtest1" height="30"> <span class="testonero">
<% response.write(rs("telefono")) %>
</span></td>
<td align="center" class="backtest1" height="30"> <span class="testonero">
<% response.write(rs("professione")) %>
</span></td>
<td align="center" class="backtest1" height="30"> <span class="testonero">
<% response.write(rs("scoperto")) %>
</span></td>
<td align="center" class="backtest1" height="30"> <span class="testonero">
<% response.write(rs("programmi")) %>
</span></td>
</tr>
<%
rs.moveNext
loop %>

<%

RS.Close
OBJdbConnection.Close
Set RS = Nothing

%>
<tr>
<td colspan="20" bgcolor="#0033CC" height="5">
<center>
<input type=submit value=CANCELLA>
</center>
</td>
</tr>

</form>

</table>
</td>
</tr>


</table>


</BODY>
</HTML>

----------------------------------------




42 messaggi dal 24 maggio 2001
Non t'arrabbiare ma mi sono limitato a leggere il tuo messaggio fino alla tua richiesta, lasciando da parte il codice visto che ho già fatto una cosa uguale.
Ti spiego in breve come.

Ogni record deve avere un ID non duplicabile così da poterlo identificare in ogni momento.

Ad ogni riga visualizzata realizza una check-box con le seguenti proprietà:

<input type=checkbox name=C<%=rs.fields("id")%> value="on">

Quando richiami la pagina per la cancellazione cerchi tutti i campi C con valore "on" e quindi attraverso una query SQL effettui la loro cancellazione.

Spero di esserti stato chiaro, altrimenti riscrivi.

Ciao, $aRtO



17 messaggi dal 06 maggio 2001
Ciao.
Anch'io come sarto non mi sono soffermato sul codice, ma ho avuto lo stesso tuo problema, ma l'ho risolto diversamente da sarto76.

per ogni riga visualizzi la stringa ed una checkbox.
Le checkbox le chiami tutte con lo stesso nome (per es "persona") e ognuna avrà come valore l'identificativo di quella persona (tipo il codice fiscale, ammesso che sia presente nel tuo db).
quando l'utente invia la form verrà passata una stringa "persona" costituita da una lista dei codici fiscali delle persone selezionate. Tu non devi fare altro che splittare questa riga in un array (il separatore usato è una virgola) e poi creare dinamicamente la stringa sql di cancellazione.
ATTENZIONE! quando splitti la stringa in ogni elemento dell'array (tranne che nel primo mi pare) troverai il codice fiscale preceduto da uno spazio. Il problema si risolve usando un trim quando crei la stringa sql.

esempio:
...
lista=split(request("persona"), ",")
...

strsql="delete from pippo where cf='" & lista(0) & "'"

for i = 1 to ubound(lista)
strsql=strsql & "or cf='" & trim(lista(i)) & "'"

Ciao

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.