Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/08/2011, 09:35
Avatar de cuasatar
cuasatar
 
Fecha de Ingreso: junio-2011
Ubicación: Bogotá Rock City
Mensajes: 1.230
Antigüedad: 12 años, 10 meses
Puntos: 181
utilizar transacciones para recuperar contraseña

Hola a todos. Hasta hace poco aprendi la teoría sobre el uso de transacciones y quisiera utilizarlo en un ejemplo practico de recuperación de contraseña para asegurarme que se hacen todos los pasos necesarios para que el usuario recupere su clave o en caso negativo no se ejecute ningún paso.

Teoricamente los pasos a seguir serian los siguientes:

•En la sección de login colocar la opción de recuperar la contraseña
•Pedir su correo electrónico.
•Crear un código aleatorio y cifrado y guardarlo en la base de datos.
•Enviar un correo a la direccion con un enlace dentro de tipo:
http://www.mipagina.com/recuperar_co...odigo=ELCODIGO

Ya en la pagina tomar los GET que han llegado, conectarse a la base de datos, verificar que los datos existen y en caso positivo pedirle nuevamente que coloque su contraseña y la actualice y se use commit, si algo falla o la conexión no funciona o se cae que deshaga los pasos con rollback.

Mi pregunta es y es lo que aun no tengo claro porque en este tema de transacciones soy nuevo. ¿Que criterio o criterios debo tomar en cuenta para definir si los pasos se hicieron bien y colocar commit o rollback? Gracias de antemano por la colaboración y aunque supongo que la respuesta debe ser algo facil mi idea no es simplemente hacer el sistema sino que la transacción cumpla con requisitos de seguridad minimos.

p.s. Lei en una pagina que para usar transacciones se debe utilizar una tabla tipo InnoDB, ¿Existe algun criterio para hacer esto o se puede utilizar cualquier otra tabla? Yo por defecto uso la tabla por defecto MyISAM así que no se que diferencias tendra