Il modo più semplice è non registrare affatto gli utenti non verificati.
Chiedi loro un indirizzo e-mail e invia un'e-mail con un collegamento che contenga questo indirizzo sigillato con un hash. Dopo aver ricevuto questo link puoi iniziare il processo di registrazione.
Qualcosa del genere
$secret = "35onoi2=-7#%g03kl";
$email = urlencode($_POST['email']);
$hash = MD5($_POST['email'].$secret);
$link = "http://example.com/register.php?email=$email&hash=$hash";
E nel tuo register.php
aggiungi 2 campi nascosti al modulo di registrazione:email e hash, memorizzando i valori ricevuti da GET.
Infine, procedi alla registrazione e verifica,
if (md5($_POST['email'].$secret) == $_POST['hash']) {
//Continue registration.
}