Normalmente eso se hace creando una tabla temporal, o bien un campo extra en la base de datos, por ejemplo campo activo (si|no)
Al momento de registrar guardás la info en la bd seteando el valor de activo en
no, en el email envias un link a una página de activación que contiene como parámetros, por ejemplo
[email protected] (podés poner otros valores, pero es de suponer que ese valor es único ya que no podría haber usuarios repetidos.)
Cuando activar.php recibe el link, pasa el estado de activo a
si
Posteriormente tu sistema de loguin deberá comprobar usuario contraseña y que activo este en
si
Hay muchas variantes a este sistema pero la idea es esa
Saludos