ciao a tutti. sono qui per porvi un mio dubbio.
sto creando una pagina per la cancellazione dei dati da una tabella.
voglio fare in modo che l'utente vede tutti i valori presenti nel Db e affianco vi sia una checkbox e un pulsante cancella. se la checkbox è spuntata, cliccando su cancella l'intero record viene cancellato.
ho 2 pagine: la prima che genera una tabella contente i record presenti. il codice è questo:
<%@ Language=VBScript %>
<link href="style.css" rel="stylesheet" type="text/css">
<%
function submit1
MsgBox "da", vbOK, "er"
end function
%>
<HTML>
<FORM action="add.asp" method="get" id=form2 name=form2>
Nome: <INPUT type="text" id=text1 name=nome>
Cognome: <INPUT type="text" id=text2 name=cognome>
<INPUT type="submit" value="Aggiungi" id=submit1 name=submit1>
</FORM>
<FORM action="delete.asp" method="get" id=form1 name=form1>
<%
'<< FUNZIONE LETTURA RECORD NEL DB
Dim Con, rs, strSQL
Set Con = Server.CreateObject ("ADODB.Connection")
con.open "PROVIDER=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE=" & server.MapPath("/cancella3/database/verifichedisistema.mdb")
Set rs = server.CreateObject ("ADODB.Recordset")
strSql="Select * From ditte"
rs.Open strSql, con, 3, 3
'<< verifica se il recordset non è il primo
'<< vuol dire che ci sono altri recordset nel db
if Not rs.BOF then
'<< creazione tabella dinamica
Response.Write "<table width=""400"" border=""1"">"
'<< contatore records nel db
do while not rs.EOF
Response.Write "<tr>"
Response.Write "<td class=""normal""> "
Response.Write rs("Ditta") & " " & rs("consorzio")& " " & rs("ambito")
Response.Write "</td>"
Response.Write "<td width=""1*"">"
Response.Write "<INPUT type=""checkbox"" value="" "
Response.Write rs("ditta")
Response.Write " ""name=""cSelect"" > "
Response.Write "</td>"
Response.Write "<td width=""2*"">"
Response.Write "<input type=""submit"" value=""Cancella"" id=""submit1"" name=""submit1"">"
rs.MoveNext
loop
Response.Write "</table>"
Response.Write "Nel database ci sono: "
Response.Write rs.RecordCount
Response.Write " record"
else
Response.Write "Il database non contiene recordset"
end if
'<< chiusura rs
rs.Close
%>
</FORM>
</HTML>
e tutto questo funziona. tuttavia, se seleziono la checkbox e clicco su cancella..mi da l'errore:
suppongo che l'errore stia nella pagina delete.asp. vi metto il codice:codice:An error occurred on the server when processing the URL. Please contact the system administrator. If you are the system administrator please click here to find out more about this error.
<%
Dim Con, rs, sDelete
Set Con = Server.CreateObject ("ADODB.Connection")
con.open "PROVIDER=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE=" & server.MapPath("/cancella3/database/verifichedisistema.mdb")
sDelete = Request("cSelect")
'Response.Write sDelete
'Response.End
set rs = Server.CreateObject("ADODB.Command")
rs.ActiveConnection = con
rs.CommandText = "DELETE FROM Ditte WHERE Ditte.ditta IN (" & sDelete & ")"
rs.CommandType = 1
rs.CommandTimeout = 0
rs.Prepared = true
rs.Execute()
Response.Redirect("aggiungi_cancella_rec_checkbox. asp")
%>
qualcuno saprebbe dirmi perchè mi da l'errore e come dovrei correggere?
grazie mille

Rispondi quotando