entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

1voto

Construir URL para actualizar contraseña después de registrar un usuario

Hola Cracks! Contexto, Tengo una web donde solo los administradores pueden agregar un nuevo usuario y al hacerlo se genera una contraseña automática, después se envía un correo al nuevo usuario para actualizar su contraseña para que después pueda iniciar sesión en la web.
Mi problema consiste en que no se como construir esta URL con un identificador recién creado por que si consulto el ultimo ID en un archivo que no sea el insert.php me devuelve 0 , entonces no puedo consultar el registro para hacer el udpatePass.php. Disculpen si esto la pregunta es de novato.
Les muestro parte del código que llevo
sendMail.php variables

    $eNombre = $_POST['nombre'];
    $eDestino = $_POST['correo'];
    $eAsunto = 'Alta en el sistema';
    $usr = '' 
    $eUrl =  'updatePass.php?user=$usr';

insert.php ultimas lineas

if ( $USER->insert( $_INS ) )
    echo json_encode( $hecho );
     else  echo json_encode( $error );

$lastId = $DB->GetLastInsertID()

updatePass.php ultimas lineas

if ($USER->update($_UPD, $usr)) echo json_encode($LISTO);
    else echo json_encode($ERROR);
}else{
    echo json_encode($ERRDA);
}

Tambien tengo un getUpdPass.php para recuperar el registro del servidor y (actualizarPass.js)hago una petición ajax con jquery para mostrarla en la vista
pero este no me recupera nada obvio, no se si esta de mas. estos archivos

1 Respuesta

1voto

elporfirio Puntos2570

Hola,

  1. Debes crear una tabla donde coloques un número aleatorio y el correo del usuario. (tablaControl por decir algo)

Ejemplo: [email protected] // aabgsggsjjcjccyyena

  1. Ese codigo aleatorio debes enviarlo al usuario en el email con una url como:

${servidor}/actualizarContrasena.php?codeChange=aabgsggsjjcjccyyena

  1. cuando el usuario ingrese validas que el codigo exista
  2. El usuario cambia su contraseña
  3. Al cambiar la contraseña eliminas el codigo aabgsggsjjcjccyyena y el email de la tabla (tablaControl)

Si el usuario intenta ingresar con el codigo, al no estar en la tabla ya no deberias dejarlo actualizar la contraseña.

Saludos :)

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta