Najprostszym sposobem jest w ogóle nie rejestrować niezweryfikowanych użytkowników.
Poproś ich o adres e-mail i wyślij e-mail z linkiem, który zawiera ten adres zapieczętowany hashem. Po otrzymaniu tego linku możesz rozpocząć proces rejestracji.
Coś takiego
$secret = "35onoi2=-7#%g03kl";
$email = urlencode($_POST['email']);
$hash = MD5($_POST['email'].$secret);
$link = "http://example.com/register.php?email=$email&hash=$hash";
I w twoim register.php
dodaj 2 ukryte pola do formularza rejestracyjnego - e-mail i hash, przechowując otrzymane wartości z GET.
Na koniec przeprowadź rejestrację i sprawdź,
if (md5($_POST['email'].$secret) == $_POST['hash']) {
//Continue registration.
}