Newsgroup: it.comp.www.asp
Titolo: Help: cancellazione record

Salve a tutti,
vi scivo perchè ho un piccolo problema.
stavo leggendo il codice ASP di una pagina che visualizza i messaggi
lasciati in un GuestBook.
Mi è così venuto in mente di inserire una riga che mi desse la possibilità
di cancellare il messaggio indesiderato am non ci sono riuscito. Potreste
aiutarmi?
Quì di sotto c'è il codice ASP della pagina che vorrei modificare.
Vi ringrazio Tanto
<html>
<head>
 <title>Leggi il Guestbook</title>
</head>
<body bgcolor=#ffffff>
<%
StrConn="driver={SQL Server};server=(local);uid=*;pwd=*;database=*"
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open StrConn
SQLQuery = "SELECT count(*) as tot FROM GuestBook "
Set RS = Conn.Execute(SQLQuery)
vNumeroVisitatori=Rs.Fields("Tot")
SQLQuery = "SELECT * FROM GuestBook order by data DESC"
Set RS = Conn.Execute(SQLQuery)
%>
<table width=80%>
<tr>
 <td align=left width=30>
  <img src="images/guestbook.jpg" alt="" border="0">
 </td>
 <td>
  <table cellpadding=10 width=100%>
  <tr>
   <td background="images/sf1.gif" align=right>
    <a href=guestbook.asp>
    <font face="belwe bd bt" color=#ffff00>...lascia la tua firma!<br>
    ...leave your message!</font></a>
   </td>
  </tr>
  </table>
 </td>
</tr>
</table>
<script language="javascript">
<!--
vSito = escape("*");
vPaginaRichiesta = "vediguest.asp";
vBrowser=escape(navigator.appName);
vReferrer = escape(document.referrer);
document.write("<img src=\"*=" + vSito + "&Browser=" + vBrowser +
"&paginarichiesta=" + vPaginaRichiesta + "&Referrer=" + vReferrer + "\"
height=1, width=1>");
//-->
</script>
<table>
<tr>
 <td>
  <font face="arial" size=-1 color=#000080>Numero dei messaggi / Messages
number:</font>
 </td>
 <td background=images/sf1.gif width=20 align=right>
  <font face="arial" size=-1 color=#ffff00><%=vNumeroVisitatori%>
 </td>
</tr>
</table>
<!-- Elenco dei Visitatori: -->
<br><br><br><center>
<%do while RS.EOF=False%>
  <table border="0" width="500" cellspacing="4">
 <tr>
  <td align=left colspan=2>
   <img src="images/comm.jpg" alt="Message..." border="0">
   <font color=#ff0000 face=arial size=-1><%=RS.Fields("Nome")%> </font><a
href="mailto:<%=RS.Fields("Email")%>"><font color=#000080 face=arial
size=-1>(<%=RS.Fields("Email")%>)</a></font>
  </td>
 </tr>
 <tr>
      <td colspan=2><font size=-1 face=arial
color=#000080><%=RS.Fields("Commento")%></font></td>
    </tr>
<!--RIGA DA ME  AGGIUNTA-->
 <tr>
        <td colspan=2><font size=-1 face=arial
color=#000080>Elimina</font></td>
    </tr>
<!--FINE RIGA DA ME AGGIUNTA -->
 <%
 cIP=Request.ServerVariables ("REMOTE_ADDR")
 cIP12 = Left(cIP, 12)
 If cIP12 = "195.103.131." Then
     cIPValoreUltimeCifre = Mid(cIP, 13)
 Else
     cIPValoreUltimeCifre = 0
 End If
 IF cIP12 = "195.103.131." And (cIPValoreUltimeCifre >= 128 Or
cIPValoreUltimeCifre <= 192)  Then
 %>
  <td bgcolor=#000080 align=right><font color=#ffffff face=arial
size=-1><%=FormatDateTime(RS.Fields("Data"),"1")%> ore
<%=FormatDateTime(RS.Fields("Data"),"4")%></font></td>
 <%else%>
  <td bgcolor=#000080 align=right><font color=#ffffff face=arial
size=-1><%=FormatDateTime(RS.Fields("Data"),"1")%></font></td>
 <%end if%>
   <td></td>
 </tr>
  </table>
<br><br>
<%
RS.MoveNext
Loop
%>
<%
RS.Close
Conn.Close
%>
<p align="center"><br>
<big><big><u><font face="Verdana" color="#FF0000">Grazie /
Thanks</font></u></big></big></p>
<img src="images/barra.jpg" alt="Guestbook..." border="0">
<p align="center"><A HREF="JavaScript:history.go(-1)" target="_self"><img
src="images/back.gif"
alt="Torna alla pagina precedente / back" border="0"></a></p>
</body>
</html>

 aiutarmi?
Aggiungi un link che 'punta' ad una pagina che fa' la cancellazione
del record. Il tuo link dovra' contenere anche l'ID del record che
vuoi cancellare.
Assumendo che rs sia il recordset e che ID sia il campo contenente
l'ID del record dovresti aggiungere qualche cosa del tipo
Response.Write "<a href='cancella.asp?id=" & rs.Fields("ID") &"'>"
Response.Write "Clicca qui' per cancellare</a>"
Nella pagina 'cancella.asp' poi fai un bellissimo (si fa' per dire)
Sql = "delete from <tabellamessaggi> where ID="
Sql = Sql & Request("ID")
connection.Execute Sql
(ovviamente io assumo che tu abbia gia' aperto la connessione).
Come integrare sta' roba nel tuo codice e' un esercizio che ti 
lascio volentieri.
Davide
P.S. non ho guardato il tuo codice (alle 8 del mattino non ho voglia
di guardare 150 righe di codice).

Solo un consiglio, il post di Davide va bene già così!
Includi anche qualche altro elemento per la cancellazione del record, perchè
qualche buon intenzionato, potrebbe divertirsi a provare a cancellare tutti
i record del tuo DB provando a cancellare da cancella.asp?ID=1... fino a
9999. Non penso che la cosa possa  farti piacere.
Saluti
--
Lino Mari
Intermedia srl
http://www.intermedia2000.com