Newsgroup: it.comp.www.php
Titolo: controllo email per newsletter

Ciao a tutti, sto realizzando la newsletter per il mio sito e volevo 
capire che controlli sono necessari sull'indirizzo inserito per evitare 
che qualche malintenzionato rompa le scatole.
Ho basato su preg_replace l'accettazione solo di alcuni caratteri, ho 
inserito una funzione che controlla la presenza di @ e che questo sia 
inserito una sola volta. Altre funzioni controllano la lunghezza minima 
e massima dell'indirizzo email digitato. Basta cosi?
Avevo pensato di controllare che @ e . non siano il primo e ultimo 
carattere dell'indirizzo email inserito. Che ne dite? Troppo precisino?
Grazie per le eventuali dritte.
TP

 TP
-- 
Ciao!
Andrew McBlues
msn: mcblues78 at 
people.it

 mettiti l'anima in pace!
grazie per avermi risposto, il timore è che qualcuno per puro cazzeggio 
si metta a inserire indirizzi tipo @
ciao.ciao.it
 o pippo.it@ na rottura 
poi a rimuoverli manualmente o a vedere che in fase di inoltro della 
newsletter mi danno errore.
Altra cosa: ho letto che molti spam robot si riesce a bloccarli solo con 
immagini create al volo miste a caratteri contenenti un codice di verifica.
Mi chiedevo ma se io richiedo necessariamente un segno di spunta ad es 
per accettare l'informativa sul trattamento dei dati possibile che uno 
spam robot sia cosi' intelligente da vedere che occorre anche la spunta?
Attendo lumi.
Grazie ancora.

 Attendo lumi.
Semplicemente: al momento del completamento del form, salvi
l'indirizzo in una tabella temporanea. Invii un'email di conferma a
quell'indirizzo, con tanto di click da cliccare per abilitare
l'iscrizione.
Dopo di ché, ogni volta che qualcuno compila il form, vai a svuotare
la tabella temporanea, lasciando solo i dati più recenti...

 la tabella temporanea, lasciando solo i dati piů recenti...
chiarissimo. Ti ringrazio per la dritta.
E, ripeto la domanda, per quanto riguarda l'uso di immagini che si 
creano al volo con incluso un codice di verifica le ritenete 
indispensabili o il richiedere un segno di spunta extra per un 
informativa basterebbe a tener lontano lo spam?

 informativa basterebbe a tener lontano lo spam?
Niente "basta" a tenere lontano lo spam.
E' ovvio che ogni più "trucchetti" aggiungi, più aumenti la difficoltà
per i bot. Ma allo stesso tempo, potresti anche scocciare l'utente...


capisco, il punto è che implemetare il CAPTCHA è una rottura di palle 
non da poco...
vediamo un po' che suggeriscono anche gli altri utenti cosi' mi regolo.
Ancora thanx.

vediamo un po' che suggeriscono anche gli altri utenti cosi' mi regolo.
Benche' potrebbero senz'altro farlo, i vari robot (almeno, quelli che ho
visto finora) non hanno l'intelligenza o le risorse di CPU per "leggere"
veramente il form. Quindi si basano su determinati "hint".
Per esempio, se il NOME di un campo contiene la parola "mail", presumono
che li' ci vada un indirizzo email.
Un trucco che puoi provare, poi mi saprai dire, e' quello di cambiare il
nome ai campi:
Nome : <input type="text" name="address" />
Indirizzo di posta elettronica: <input type="text" name="telephone" />
Verifica indirizzo: <input type="text" name="email2" />
Telefono: <input type="text" name="email" />
Quando ti arriva $email == $email2 (anziche' $telephone == $email2), sai
che chi ti ha mandato la form si basava sul sorgente HTML, e non su quel
che compariva a video. Idem se $email contiene dei "@" anziche' [0-9]+.
C'e' il problema che alcuni "auto-riempitori di campi" usano il medesimo
trucco dei bot... e chi avesse installato RocketForm si trovera' i campi
precompilati con il contenuto sbagliato; e se e' un ghiozzo, manco se ne
accorgera', e tu lo considererai un bot. TANSTAAFL.
Leonardo
-- 
While ordinarily valid that being widespread does not make a statement
true, I feel that the diffusion of anti-evolutionary beliefs does pose
a strong argument for Darwin having been, indeed, sorely mistaken.

 
Grazie mille Leo.
Sempre esauriente. ;-)

 
Se utilizzi php > 5.1 (vado a memoria), guarda 
http://it.php.net/filter
 
FILTER_VALIDATE_EMAIL e  FILTER_SANITIZE_EMAIL
	Francesco