Validación por mail

Iniciado por ma__tt, 24 Diciembre 2009, 13:46 PM

0 Miembros y 1 Visitante están viendo este tema.

ma__tt

Hola, como puedo implementar en mi página una validación de estas. Lo que quiero hacer es como cuando te registras en un foro y para que realmente te validen, enviar un mail y esperar la activación. Algún script que haga esto de ejmplo?

muchas gracias

Erik#

Creas un script que verifique que el usuario ha entrado en el link: blablabla.com/script/verificacion.php?ver=8819411369erik

y para enviarselo, usando mail.

ma__tt

Cita de: Erik# en 24 Diciembre 2009, 16:09 PM
Creas un script que verifique que el usuario ha entrado en el link: blablabla.com/script/verificacion.php?ver=8819411369erik

y para enviarselo, usando mail.

Soy bastante neófito en esto, de hecho lo único que he usado hasta ahora, es con dreamweaver los comportamientos del servidor y las consultas jeje. Tienes por ahí algún código o trozo de código que me pueda servir de ejemplo para orientarme.

Gracias tio ;)

[u]nsigned

Yo lo haria asi:

En la tabla donde guardas los usuarios registrados, supongamos que se llama users pones un campo extra llamado validado. Este campo podria ser de tipo boolean, y tener false por default, es decir que cada nuevo user se creara en la bb.dd como no validado.

Bien, ahora necesitarias crear otra tabla, por ejemplo codigos_de_validacion. Esta tabla podria tenes 2 campos: uno llamado ID, que seria donde guardas el ID del usuario en la tabla users. Y el otro campo seria el codigo de validacion, que seria generado aleatoriamente en el momento en que el usuario se registra.

El proceso seria asi:

1. Cuando el usarior termina de completar el formulario de registro y le da al boton, debes guardar todos sus datos en la tabla users, ademas del campo validado como FALSE. Y tambien cargar en la tabla codigos_de_validacion el id de dicho user y el codigo generado de activacion.

2. una vez hecho esto, le mandas un mail con la funcion mail() de php (o usando la clase phpmailer o lo que quieras). Dicho mail podria ser un link a un script en php que sea el que se encargue de validar el user. Lo que haria dicho script seria buscar en la tabla codigos_de_validacion el registro cuyo campo codigo sea igual al proporcionado en el mail. Y recuperar el id de dicho user, luego con ese id se pasa a cambiar el campo validado de la tabla users a true, y fianlmente borrar el registro en la tabla de validaciones, asi no tenes problemas en el futuro.

Saludos.

PD: No soy bueno explicandome  :xD

No hay atajo ante la duda, el misterio se hace aquí...
Se hace carne en cada uno, el misterio es existir!

luiggy2

#4
¿Y para qué dos tablas?

Directamente pones el campo "validado" con el código. Le envias el mensaje, y al leerlo que ese campo se modifique a 0 (por ejemplo).


De esa forma, cada vez que tenga que loguear, tendrás que hacer un if para ver si el campo es 0 (o True), lo que haría un poco más lento el proceso.


Mi idea consiste en una tabla usr_sin_validar con los datos del usuario, y una vez que lo valide a través del email, que se copien los datos a la tabla de usr_real. Así te ahorras el if cada vez que se loguee alguien.

Saludos!

Posdata: Si no me entienden, diganlo y me intento explicar mejor.
" Las grandes ideas suelen salir la mayoría de veces de grandes estupideces "

[u]nsigned

Podria ser, pero considerando que el usuario solo debera validarse una vez, yo prefiero no cargar tanto la tabla users...en fin son puntos de vista.. ;D

Saludos

No hay atajo ante la duda, el misterio se hace aquí...
Se hace carne en cada uno, el misterio es existir!