>> Torna all'Homepage <<
Contattaci Entra nei forum Cerca nel sito
News della settimana ASP: esempi di pagine dinamiche Trucchi e suggerimenti per il PC Manuali e guide I dossier e gli approfondimenti di AmicoPc Il sito della settimana I racconti di Armando Staffa Chi siamo
     
 

 

Scarica i file
Scarica i file
citati in questa pagina

 


GESTIONE NEWSLETTER
1/2

RIMUOVI.ASP
Per cancellare il proprio indirizzo dalla newsletter è sufficiente collegarsi alla pagina rimuovi.asp e inserire l'email nell'apposito campo.
Volendo si può richiamare questa pagina passandole il parametro email=tua_email@tuo_server.com
In questo modo l'indirizzo email compare già nel campo di testo. Questo sistema può essere utilizzato quando, inviando la newsletter, si aggiunge alla fine del messaggio stesso un avvertimento del tipo

"Per rimuoverti dalla newsletter vai all'indirizzo http://www.miosito.com/rimuovi.asp?email=XXX"

In questo modo l'utente che vuole cancellarsi dovrà semplicemente seguire il link e confermare.

Il programma Emailing List Pro non dispone di questa funzionalità che però è compresa nel programma che vedremo nella prossima settimana.

Come prima cosa quindi dobbiamo prelevare il valore del parametro email dalla stringa di collegamento.

<%
email = lcase(request.querystring("email"))
%>

Creiamo poi un modulo che mi invii i dati inseriti alla pagina cancella.asp
Il valore contenuto nella variabile email sarà visualizzato come valore iniziale dal campo di testo; se la variabile è vuota lo sarà anche il campo di testo


<html>
<head>
<title>Newsletter</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="javascript">
<!--//
function Controlla(){
if (document.mio_form.indirizzo.value==""){
alert("E' necessario inserire il proprio indirizzo email");
return false;
}
return true;
}
//-->
</script>
</head>

<body bgcolor="#FFFFFF" text="#666666" link="#808080" vlink="#808080" alink="#808080">
<div align="center">
<p>&nbsp;</p>
<p><font face="Verdana, Arial, Helvetica, sans-serif" size="2"><b><font color="#c60000">Cancellazione
dalla newsletter:</font></b></font></p>
<form name="mio_form" method="POST" action="cancella.asp" language="javascript" onSubmit="return Controlla()">
<table width="200" border="0" cellspacing="0" cellpadding="4">
<tr>
<td>
<div align="center"><font face="Verdana, Arial, Helvetica, sans-serif" size="2">Inserisci
l'indirizzo email da rimuovere:</font></div>
</td>
</tr>
<tr>
<td>
<div align="center"><font face="Verdana, Arial, Helvetica, sans-serif" size="2">
<input type="text" name="indirizzo" value="<% response.write email %>">
</font></div>
</td>
</tr>
<tr>
<td>
<div align="center"><font face="Verdana, Arial, Helvetica, sans-serif" size="2">
<input type="submit" name="Submit" value="Rimuovi">
</font></div>
</td>
</tr>
</table>
</form>
<p>&nbsp;</p>
</div>
</body>
</html>

CANCELLA.ASP
Questa pagina si occupa di eliminare l'indirizzo dal database e di inviare l'email di conferma all'utente e al programma di gestione della newsletter.
Per prima cosa preleviamo l'indirizzo inserito nel modulo appena inviato. Anche in questo caso sostituiamo eventulai apici con le virgolette doppie, trasformando eventuali caratteri maiuscoli in lettere minuscole.

<%
indirizzo=lcase(replace(request.form("indirizzo"),"'","''"))

Nel caso in cui il modulo appena inviato fosse vuoto, reindirizziamo l'utente verso la pagina di errore, passandole il parametro errore=vuoto

if indirizzo = "" then response.redirect "errore.asp?errore=vuoto"

Creiamo la connessione al database e controlliamo che l'indirizzo specificato sia presente nel database.

Dim Conn
Set Conn = Server.CreateObject("ADODB.Connection")
conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & server.mappath("../
mdb-database/newsletter.mdb")

Dim rs
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open "select * from email where indirizzo = '"& indirizzo &"'", conn, 3, 3

Se si giunge alla fine del database senza trovare nessun record corrispondente, significa che l'email inserita non è iscritta alla newsletter. Pertanto chiudiamo la connessione e carichiamo la pagina di errore.

if rs.EOF then
set rs=nothing
conn.close
set conn=nothing
response.redirect "errore.asp?errore=manca"

In caso contrario eliminiamo il record corrispondente e chiudiamo la connessione

else
Set rs = Server.CreateObject("ADODB.Recordset") rs.Open "delete * from email where indirizzo = '"& indirizzo &"'", conn, 3, 3
set rs=nothing
conn.close
set conn=nothing

Inviamo poi l'email di conferma all'utente con le stesse modalità viste in precedenza

Dim confermaMail
Set confermaMail = CreateObject("CDONTS.NewMail")

rimuoviCorpo="RIMOZIONE DALLA NEWSLETTER DEL MIO SITO" & VbCrLf & "******************************************" & VbCrLf & VbCrLf &"Salve!" & VbCrLf & VbCrLf &"Le confermiamo che l'indirizzo email "& indirizzo &" e' stato correttamente rimosso dalla newsletter del mio sito." & VbCrLf & VbCrLf &"Grazie per essere stato con noi!"& VbCrLf & VbCrLf &"I piu' cordiali saluti!"& VbCrLf & VbCrLf &"Lo staff del mio sito"& VbCrLf & VbCrLf

confermaMail.From = indirizzo
confermaMail.To = "tua_email@tuo_sito.com"
confermaMail.Subject = "Cancellazione dalla newsletter"
confermaMail.BodyFormat = 1
confermaMail.MailFormat = 1
confermaMail.Body = rimuoviCorpo
confermaMail.Send
set confermaMail = Nothing

Infine inviamo l'email al programma di gestione della newsletter.

Dim rimuoviMail
Set rimuoviMail = CreateObject("CDONTS.NewMail")
rimuoviMail.From = indirizzo
rimuoviMail.To = "tuo_indirizzo@tuo_sito.com"
rimuoviMail.Subject = "rimozione_newsletter"
rimuoviMail.BodyFormat = 1
rimuoviMail.MailFormat = 1
rimuoviMail.Body = "-"
rimuoviMail.Send
set rimuoviMail = Nothing
response.redirect "ok.htm"
end if
%>

In questo caso l'oggetto del messaggio sarà rimozione_newsletter, in modo da far capire al programma che si tratta di un utente che desidera cancellare la proprio iscrizione.

<< indietro

Utenti connessi: 48

Invia questa pagina ad un amico

 

 

 

Chi siamo | Pubblicità | Note sulla privacy | Dicono di noi
Grafica cura di Paolo Omero
- Stefania Migliorucci