Pero, .. tu en tu web cómo registras a tus usuarios actualmente .. ? .. Los guardas en alguna BD .. o donde? ..
Bueno, la técnica es simple:
1) En el momento de guardarte tus datos en tu BD o donde los almacenes ... generas un "código" aleatorio .. Ejemplo tienes en esta FAQ:
http://www.forosdelweb.com/showthrea...483#post411483
2) .. Te guardas ese código en tu BD .. en un campo extra a ese e-mail y demás datos que guardes de tu usuario que se está registrando ..
3) envias el mail() con ese dato de activación ..
www.php.net/mail para más info.
4) te haces un formulario donde pidas el e-mail y el código de activación que le has enviado por e-mail
5) contrastas esos datos con los campos e-mail y "codigo" de tu BD .. si es correcto ya tendrás validado tu cuenta .. (contrastar = consulta a tu BD .. SELECT .. WHERE email='$email' AND codigo='$codigo' .... )
(puedes usar un campo tipo "flag" de estado "validado o no validado" (on/off) el cual actualizaras (UPDATE si trabajas con BD) cuando valides en punto 5. ...)
Como usuarios "validos" serán los que tengan ese campo "estado" a ON (validado) .. el resto .. estaran a la espera de ser validados..
Si te guardas la fecha en la que se "pre-registran" .. podrás hacerte rutinas de "limpieza" para eliminar los registros de usuarios con e-mail no validado y que pase cierto tiempo (dias/horas .. etc) y tener una BD limipia ...
Ahora, manos a la obra y consulta las dudas que tengas por el camino . .pero, la base es la que te he mencionado ...
Un saludo,