[Buscando Script] Código para recuperar contraseña

  • Autor Autor Pcx89
  • Fecha de inicio Fecha de inicio
P

Pcx89

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Betas!, estoy necesitando de su gran ayuda 😀
Estoy haciendo la sección de registro de usuarios de un Sitio. Lo que se me ocurrió hacer es que cuando un usuario solicita "Recuperar contraseña" se le envía un código (Ej: 24655) a su Email, junto con un Link a una página en la cual pueda ingresar dicho código y cambiar la contraseña del usuario al que le corresponda el código.

A cada usuario le corresponderá un único código que se generará aleatoriamente al registrarse.

La pregunta es si si alguien tendrá un Script que me pueda facilitar, o si conocen algun sistema mas sencillo para poder hacer esto.
Es lo que me está quedando para terminar la Web y me está complicando mucho 🙁

Gracias por su atención Betas! :welcoming:
 
1- cuando el usuario solicita recuperar la cuenta completas el campo del usuario (osea en la tabla donde estan los datos de los usuarios, tendras una columna para este fin) con un hash aleatorio, ejemplo md5(time())...
2- mandas un email al usuario con el link de recuperar + hash (ejemplo: site.com/recuperame.php?hash=qwert76543213tyhn)...
3- cuando el user accede al link, verificas que el hash exista, si existe vacias el hash en la base de datos (asi no puede ser usado mas) y mostras un formulario para que coloque un nuevo pass... Pero si el hash no existe mostras un mensaje de error...

En solo 3 pasos solucionas tu problema!
 
1- cuando el usuario solicita recuperar la cuenta completas el campo del usuario (osea en la tabla donde estan los datos de los usuarios, tendras una columna para este fin) con un hash aleatorio, ejemplo md5(time())...
2- mandas un email al usuario con el link de recuperar + hash (ejemplo: site.com/recuperame.php?hash=qwert76543213tyhn)...
3- cuando el user accede al link, verificas que el hash exista, si existe vacias el hash en la base de datos (asi no puede ser usado mas) y mostras un formulario para que coloque un nuevo pass... Pero si el hash no existe mostras un mensaje de error...

En solo 3 pasos solucionas tu problema!

Gracias por responder 😀
Entiendo que tiene sentido lo que dices, pero no se como hacerlo (es mi primer sitio para ir consiguiendo práctica en PHP XD), ¿de que manera podría Googlearlo para meterme mas en el asunto y aprender a hacerlo?
 
Gracias por responder 😀
Entiendo que tiene sentido lo que dices, pero no se como hacerlo (es mi primer sitio para ir consiguiendo práctica en PHP XD), ¿de que manera podría Googlearlo para meterme mas en el asunto y aprender a hacerlo?

el tema de recuperar el pass... osea buscar un script es que la mayoria ya vienen con el sistema de registro y manejo de usuario... podrias buscar en ingles: recuperate pass script + php

How to create forget password recovery procedure in PHP
 
el tema de recuperar el pass... osea buscar un script es que la mayoria ya vienen con el sistema de registro y manejo de usuario... podrias buscar en ingles: recuperate pass script + php

How to create forget password recovery procedure in PHP

Ya estoy buscando, va apareciendo buen material 😉
Mientras tanto me pregunto si podría hacer lo siguiente:Tener 2 columnas, una con la contraseña encriptada con MD5 y la otra sin encriptar. De esta manera cuando pongan que olvidaron la contraseña se las podré enviar sin problemas. Por que ya creo que este Script me va a resultar algo dificil de hacerlo 🙁
 
Ya estoy buscando, va apareciendo buen material 😉
Mientras tanto me pregunto si podría hacer lo siguiente:Tener 2 columnas, una con la contraseña encriptada con MD5 y la otra sin encriptar. De esta manera cuando pongan que olvidaron la contraseña se las podré enviar sin problemas. Por que ya creo que este Script me va a resultar algo dificil de hacerlo 🙁

y para que vas a tener el pass encriptado?... osea o uno u otro... pero si entran a tu BD tienen los pass de todos los users... es suicida tenerlos sin encriptar ni nada... es mas hasta los usuarios podrian darte problemas si les entran a sus cuentas
 
y para que vas a tener el pass encriptado?... osea o uno u otro... pero si entran a tu BD tienen los pass de todos los users... es suicida tenerlos sin encriptar ni nada... es mas hasta los usuarios podrian darte problemas si les entran a sus cuentas

Entiendo, y creeme que opino igual que tu, pero no encuentro panera de hacer el Script de "Olvidó su contraseña" 🙁
Por favor ¿¿alguien que tenga algo pre-programado??
 
Entiendo, y creeme que opino igual que tu, pero no encuentro panera de hacer el Script de "Olvidó su contraseña" 🙁
Por favor ¿¿alguien que tenga algo pre-programado??

te pase un sitio donde tenes el code... o como buscar para encontrar los codes... sino a programar, todo se puede aprender
 
ya [MENTION=9679]cicklow[/MENTION] te lo a dicho todo y muy bien explicado la verdad esto lo tenia pensado hacer para mi web pero como es algo que no le veo mucha importancia x los momentos es algo que dejaria de ultimo

como dijo [MENTION=9679]cicklow[/MENTION] solo crea una columna a la tabla de users donde x ejemplo vallas a almacenar un time(), te creas un formulario donde coloquen el correo o su usuario y luego x $_POST recojes el email o usuario y haces una consulta a la DB y buscas el usuario a quien le pertenesca ese email o usuario y asi recojes la id del usuario para despues hacer un INSERT INTO con el id o bien te saltas la parte de hacer la consulta y haces la insercion de datos a la tabla de usuarios usando WHERE con el email o usuario que allas recogido con el $_POST.

luego usando time() le das una variable y lo insertas a la tabla del usuario con el WHERE que acabas de hacer seria algo mas o menos asi

"INSERT INTO users ('recuperarpass') VALUES ('$time') WHERE email = $email" ese es un ejemplo de la sentencia sql para insertar el tiempo al cual se iso la recuperacion de contraseña luego usando mail() mandas un correo al email con el que se esta intentando hacer la recuperacion de la pass con un link mas o menos asi (site.com/recuperame.php?hash="$time") si ves la variable $time que estoi mostrando en los ejemplos tiene que tener como valor el time() asi $time = time();.

aja luego en el archivo de recuperame.php con un $_GET recuperas el time que lo representa hash en el link a $_GET['hash'] con ese valor que aaba de recoger el GET ases una consulta aver si el usuario tiene ese time en la tabla se users y si lo tiene lo eliminas con la sentencia DELETE y luego lo envias a un formulario nuevo donde pongas nuevo pass y repite pass o lo que sea y haces un UPDATE a la tabla del usuario y ya eso es todo.
[MENTION=9679]cicklow[/MENTION] te lo explico perfectamente ( bueno yo lo entendi asi y gracias [MENTION=9679]cicklow[/MENTION] x que esto me servira ami igual ^^)
 
Atrás
Arriba