>> 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

La nostra newsletter si basa sull'utilizzo del programma Emailing List Pro (http://www.ppprogs.demon.co.uk/) che potete scaricare dall'indirizzo http://www.amicopc.org/sw/emlpro.exe (463 kb)
La versione non registrata pone pesanti limiti all'utilizzo, rendendolo praticamente inutilizzabile. Per un corretto funzionamento occorre registrarlo (15$).

Il funzionamento della newsletter è semplice: l'utente, dal nostro sito, inserisce il proprio indirizzo email in un modulo che, dopo opportuni controlli, viene aggiunto al database. Viene poi inviata un'email, avente come mittente quello stesso indirizzo, alla nostra casella di posta elettronica.
Se l'utente si sta iscrivendo il messaggio inivato dal server avrà come oggetto le parole iscrizione_newsletter. Se l'utente invece si sta cancellando dalla newsletter, il messaggio avrà come oggetto le parole rimozione_newsletter.
Il programma Emailing List Pro si collega alla nostra casella e controlla i messaggi presenti: se trova messaggi aventi come oggetto le parole iscrizione_newsletter, aggiungerà l'indirizzo del mittente all'elenco degli iscritti. Se invece trova messaggi con oggetto rimozione_newsletter, eliminerà il relativo indirizzo dal proprio elenco.

L'aggiornamento degli utenti registrati avviene quindi tramite email: l'utilizzo del database è dovuto essenzialmente a motivi di controllo, per evitare che un utente si iscriva più volte o che cerchi di cancellare un indirizzo email inesistente. Inoltre utilizzando pagine asp per l'aggiunta e la cancellazione consente di inviare all'utente un'email di conferma per ogni operazione svolta.

Vediamo i file che ci interessano.
Innanzitutto creiamo due cartella:

  • la prima si chiama mdb-database e dovrà avere i permessi di scrittura; in questa cartella posizioniamo il nostro database che si chiamerà newsletter.mdb. Al suo interno creiamo una tabella chiamata email nella quale creiamo un unico campo di testo chiamato indirizzo
  • la seconda cartella possiamo chiamarla newsletter: in questa posizioniamo i file asp e html che andremo a creare.

INDEX.HTM
Si tratta di una normale pagine html con un modulo con un unico campo di testo (chiamato indirizzo) nel quale inserire l'indirizzo email da iscrivere alla newsletter.
Una volta premuto il bottone 'Iscrivi' viene richiamata la pagina iscrivi.asp

ISCRIVI.ASP
Per prima cosa dobbiamo prelevare dal modulo il valore presente nel campo indirizzo.
La stringa che utilizziamo è la seguente:

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

Questa stringa per prima cosa mi preleva dal modulo l'indirizzo email inserito (request.form...); sostituisce poi eventuali apici con le virgolette doppie in modo da evitare problemi con l'esecuzione della pagina stessa (replace(...), "'","''"); infine converte eventuali caratteri maiuscoli in lettere minuscole (lcase...)

I comandi utilizzati hanno la seguente struttura:

request.form("nome_del_campo")

replace("dove", "che_cosa", "con_che_cosa")

lcase("testo o variabile")
per convertire il testo o la variabile in lettere minuscole. Per averlo in lettere maiuscole utilizzeremo il comando ucase. Se si tratta di testo dovremo delimitarlo mediante le virgolette doppie (es. lcase("Testo Da Convertire")), mentre se si tratta di una variabile ne inseriamo semplicemente il nome (es. lcase(nome_variabile"))

A questo punto dobbiamo controllare che l'indirizzo email inserito sia corretto:

if (InStr(indirizzo,"@") = 0) or (InStr(indirizzo,".") = 0) then response.redirect "errore.asp?errore=sbagliato"

ovvero: se (if) la variabile indirizzo non contiene il simbolo @ (InStr(indirizzo,"@") = 0) o (or) se non contiene il punto (InStr(indirizzo,".") = 0) l'utente viene indirizzato verso la pagina di errore passandole il parametro 'errore=sbagliato' (response.redirect "errore.asp?errore=sbagliato")

Il comando InStr conta il numero delle volte che un determinato carattere è contenuto in una stringa o variabile specificata. Nel nostro caso controlliamo se nella variabile indirizzo è presente il simbolo @ o il punto. Se non trova il simbolo specificato il risultato sarà uguale a zero.

Se è tutto corretto creiamo la connessione con il database newsletter.mdb posizionato nella cartella mdb-database

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

Controlliamo che l'indirizzo email non sia già presente

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

Se giungiamo alla fine del database (rs.eof) significa che l'indirizzo non è ancora inserito; quindi mediante il comando rs.addnew creiamo un nuovo record

if rs.EOF then
rs.addnew

Nel campo indirizzo inseriamo quindi l'email dell'utente che desidera iscriversi

rs.fields("indirizzo")= indirizzo

Aggiorniamo il database e chiudiamo la connessione

rs.update
rs.close
set rs=nothing
conn.close
set conn=nothing

Prepariamo ora il testo dell'email di conferma da inviare all'utente stesso.

confermaCorpo="ISCRIZIONE ALLA NEWSLETTER DEL MIO SITO" & VbCrLf & "******************************************" & VbCrLf & VbCrLf &"Salve!" & VbCrLf & VbCrLf &"Le confermiamo che l'indirizzo email "& indirizzo &" e' stato correttamente iscritto alla newsletter del mio sito." & VbCrLf & VbCrLf & VbCrLf &"MODIFICA DI UN INDIRIZZO EMAIL" & VbCrLf &"=============================" & VbCrLf &"Per modificare l'indirizzo email a cui ricevere la newsletter e' sufficiente eseguire la procedura di cancellazione relativa al vecchio indirizzo e ripetere l'iscrizione per quello nuovo." & VbCrLf & VbCrLf & VbCrLf &"CANCELLAZIONE" & VbCrLf &"===============" & VbCrLf &"Nel caso in cui non volesse piu' ricevere la newsletter dovra' semplicemente collegarsi all'indirizzo" & VbCrLf & "http://www.tuosito.com/newsletter/rimuovi.asp?email="& indirizzo & VbCrLf &"e seguire le istruzioni riportate." & VbCrLf &"In questo modo l'indirizzo email in oggetto verra' definitivamente rimosso dal nostro database." & VbCrLf & VbCrLf &"Rimaniamo a sua disposizione per ogni eventuale chiarimento."& VbCrLf & VbCrLf &"I piu' cordiali saluti!"& VbCrLf & VbCrLf &"Lo staff del mio sito"& VbCrLf & VbCrLf

Creiamo ora la nuova email

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

 

<< indietro

Utenti connessi: 128

Invia questa pagina ad un amico

 

 

 

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