En tu e-mail el link que debees generar debe ser como comenta
maralbust un dato aleatorio y único .. que no sea sencillo encontrar una "secuencia" para reproducirlo.
Tu e-mail lo compones en HTML y generas ese link en el cuerpo del mensaje HTML. El "código de activación" o ese "ID" aleatorio lo puedes generar con ayuda de:
http://www.forosdelweb.com/showthrea...483#post411483
El dato o código generado lo almacenas en tu BBDD junto con el e-mail. Sería recomendable también registrar otro dato más que el usuario usó para su registro ... una contraseña, su "nick/nombre de usuario" .. algo más para que no llegue cualquiera que reciba ese e-mail y lo pueda activar (recuerda cuanta gente vé su e-mail en PC's que no son sullos por webmail por ejemplo ... o podrían ser "caputurados" esos datos o e-mail por administradores de red sin escrupulos).
En definitiva generas un link hacia tu sitio tipo:
http://www.tupagina.com/valida.php?c...h4h6h674jj2445
Tu script valida.php recibe el "cod_activación" en GET:
$_GET['cod_activacion'] y ese dato más los otros que quieras pedir compones un formulario HTML. Para esto .. en un campo hidden recojo y propago el "cod_activación" que recibí.
Código PHP:
<form action="procesa_valida.php" method="post">
resto de datos que quieras pedir ...
<input type="hidden" name="cod_activacion" value="<? echo $_GET['cod_activacion'] ?>">
botón enviar ...
</form>
Luego es cosa que hagas tu consulta SQL condicional tipo:
Código PHP:
$sql="SELECT * FROM tabla WHERE cod_activacion='".$_POST['cod_activacion']."' AND email='".$_POST['email']."' AND password='".$_POST['pass']."'";
Un saludo,