Recuperar contraseña de un txt

Tengo un pequeño sistema de registro de usuarios en php, el cual usa un archivo de texto para guardar los datos, donde se guardan los nicks, las contraseñas, el correo, y otros campos como nombre, origen, aficiones, etc, etc, todo funciona muy bien, el registro, el inicio de sesión, cuando se loguean aparecen los datos que ingresaron cuando se regitraron a manera de perfil, hasta ahí todo bien, lo que yo quiero es tener un formulario para recuperar la contraseña, he buscado ejemplos y ninguno me sirve, se usar la función mail() de php, pero no se como hacer para que al ingresar su correo les envíe la contraseña al mismo, básicamente lo que quiero es saber o que me den una idea de como hacerlo.

1 respuesta

Respuesta
1
Lo primero es saber si en el fichero se guardan las contraseñas tal cual o se guardan encriptadas:
En texto plano, te aconsejo crearte una función que dando el usuario, te devuelva un array con todos los datos (por ejemplo $usuario[username], $usuario[password], $usuario[correo], etc.) y desde ese array, rescatas el correo y la clave.
Encriptado, create una página., que reciba dos argumentos (bien por post o por get) y que resetee la password, entonces al correo mandarías un trozo de la clave encriptada (no toda!) Y en el formulario pides, usuario y trozo de clave, si es correcto, lo rediriges a otra en la que introduce la password nueva. También te puede ser de utilidad la función que te he puesto en el caso anterior.
Hola gracias por contestar, los datos se guardan en texto plano por ahora, lo ke me interesa es saber la manera de recuperar la contraseña del correo ke ingresen los usuarios, puedo obtener los datos de los usuarios en una especie de perfil, y cada cual puede verlos una vez ke se logueo, esto es parte del codigo para obtener los datos
if ($login == TRUE) {
if (file_exists($users)) {
$lines = file($users);
foreach ($lines as $line_num => $line) {
$array = explode("||",str_replace("\n","",$line));
$c_id = $array[0];
$c_user = $array[1];
$c_email = $array[2];
$c_pass = $array[3];
$c_fecha = $array[4];
$c_lugar = $array[6];
$c_nombre = $array[7];
$c_aficiones = $array[8];
if ($c_user == $user && $c_pass == $pass) {
$_SESSION['ls_id'] = $c_id;
$_SESSION['ls_user'] = ($c_user);
$_SESSION['ls_email'] = ($c_email);
$_SESSION['ls_fecha'] = ($c_fecha);
$_SESSION['ls_lugar'] = ($c_lugar);
$_SESSION['ls_nombre'] = ($c_nombre);
$_SESSION['ls_aficiones'] = ($c_aficiones);
}
}
Con esto obtienen sus datos lo usuarios que se loguearon, pero una vez que ya se crearon las sesiones, y no se como hacer de la otra forma, espero no parecer muy tonto, tal vez la forma es sencilla pero yo no la se, saludos
Antes que nada un par de cosillas.
a) El fichero que dices, debe estar con permisos 700 (600) para que no pueda leerse desde internet ! (No vaya a ser que alguien descubra el nombre del fichero y vea todo todo. XDD
b) debes tener cuidado no vaya a ser que alguien meta || en alguno de los campos y entonces te fastidie ;)
Bueno, al lio.
puedes utilizar el mismo código, y en vez de ese if, poner "if ($c_email == $_POST[email]){
mail($c_email,......................); 
}"
Gracias por contestar, el archivo .txt esta protegido con .htaccess, bueno, con sus respuestas la idea ya la tengo, espero poder lograrlo, muchas gracias por su ayuda

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas