hai provato a eliminare il record sul db, in caso fallisca l'invio dell'email?Ebbene, volevo evitare questo! Perché mi troverei dei record sul db inutili.
Puoi provare a fare una cosa del genere:
codice:<?php //Dopo la compilazione del form, tenti di inviare una conferma di registrazione via email $destinatario = "$email"; $oggetto = "Conferma di registrazione!"; $messaggio = "<p>Ciao, grazie per esserti registrato, questo è il codice per confermare la registrazione!</p>"; $mittente = "tu<tu@tu.com>"; $html = "MIME-Version: 1.0\r\n"; $html .= "Content-type: text/html; charset=iso-8859-1\r\n"; // SE L'EMAIL VIENE INVIATA, OK if(@mail($destinatario, $oggetto, $messaggio, $html . "From: $mittente")) { echo "Registrazione completata con successo!"; } else { // ALTRIMENTI, ELIMINI L'UTENTE DAL DB $connessione = mysql_connect($host,$user,$pass); //Apri la connessione al DB mysql_select_db('utenti'); DELETE FROM utenti WHERE email = '$email' ; // Elimini i dati dell'utente appena registrato echo "Email non valida!" mysql_close(); } ?>

Rispondi quotando

Un altra idea che potresti considerare, per tenere pulito il DB da registrazioni fasulle, è quella di creare uno script che periodicamente (per esempio, ogni 72 ore), cancella gli account registrati, ma non attivati da più di un intervallo di tempo (es. 48 ore). 
