Ver Mensaje Individual
  #16 (permalink)  
Antiguo 21/10/2010, 15:41
Avatar de emprear
emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: Para que un email sea verdadero y no falso

saraivaruas:
es de suponer que tras el post en el form de registro, vos estas almacenando los valores (supongamos, nombre y email) en una base de datos, para hacer la verificación, tenes que crear un paso intermedio,

en lugar de guardar en la BD, guardas los datos en un archivo en una carpeta temporal /tmp, para el nombre del archivo, debes tener un nombre único, podes usar md5($email); (quedaría un archivo del tipo 29e65556224146b056d1f215f83d7b6e.txt ) en ese archivo guardas en cada linea los valores ingresados
A continuación envias un email a la dirección que te ingresaron pidiendo que complete el proceso de registro usando el siguiente link...e incluis en el texto del mensaje un link a, por ejemplo

confirmar.php?usuario=29e65556224146b056d1f215f83d 7b6e
(el valor usuario es el mismo valor del $md5($email); )

tras el envio mostras un mensaje:
se ha enviado un email a $email, para que complete el proceso de registro

ahora en confirmar.php haces que la script verifique la existencia del archivo
"/tmp/". $_GET['usuario'] . ".txt";
lo abra, lea cada linea y guarde, ahora si en forma definitiva, lo valores en la base de datos.

finalmente haces unlink(); del archivo temporal

Hay otras formas de hacer esto, y seguramente alguna otra más optimizada, pero al menos con este sistema no tenés que modificar tu BD.

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.