Red de conocimiento informático - Aprendizaje de programación - PHP salta a la página de inicio de sesión previo después de iniciar sesión para implementar ideas y código

PHP salta a la página de inicio de sesión previo después de iniciar sesión para implementar ideas y código

Después de iniciar sesión con PHP, puede saltar a la página de inicio de sesión previo. Puede usar la variable global $_SERVER para lograr esta función. Aquí hay un buen ejemplo, espero que sea útil para todos.

Recientemente lo obtuve. Un pequeño proyecto me introdujo a la programación PHP y la función de inicio de sesión simple ya está bien. Sin embargo, se descubrió un problema durante el uso real: el usuario A envió un enlace al usuario B. Cuando B abrió la página, se le pidió que iniciara sesión. Sin embargo, después de iniciar sesión correctamente, saltó a la página de inicio en lugar del enlace enviado por A. Para tener una mejor experiencia de usuario, B debería saltar automáticamente al enlace antes de iniciar sesión después de iniciar sesión correctamente. Revisé el manual de ayuda de PHP y descubrí que esta función se puede lograr usando la variable global $_SERVER.

$_SERVER es una variable súper global de PHP. Para obtener una explicación detallada de la variable $_SERVER, consulte: /manual/zh/reserved.variables.server.php

El método de implementación específico es: Mientras solicita al usuario que inicie sesión, registre la URL de la página solicitada en la sesión o en la cookie para volver a la URL después de una verificación de inicio de sesión exitosa.

checklogin.php

El código es el siguiente:

session_start()

if

( !isset

($_SESSION['login_ok']))

{

echo

"lt;script

language=javascriptgt;alert

('Primero debes iniciar sesión para acceder a la página.');lt;/scriptgt;";

$_SESSION['userurl ']

=

$_SERVER['REQUEST_URI'];

echo

'lt; >idioma=javascriptgt; ventana .location.href="login.php"lt;/scriptgt;';

}

login.php

El código es el siguiente:

session_start();

//Aquí se omite el código de verificación de cuenta y contraseña, verifique que está bien y luego ejecute el siguiente código

si

(isset

($_SESSION['userurl']))

{

//Hay una página a la que saltar en la sesión

$url

=

$_SESSION['userurl']

}

; else

{

//Si no hay ninguna página a la que saltar, vaya a la página de inicio

$url

=

"home.php";

}

//Saltar después de 0,5 s

eco

"lt; meta

http-equiv="refresh"

content="0.5; url=$url"gt;";