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 p>
=
$_SESSION['userurl']
}
; else
{
//Si no hay ninguna página a la que saltar, vaya a la página de inicio
$url
= p>
"home.php";
}
//Saltar después de 0,5 s
eco
"lt; meta
http-equiv="refresh"
content="0.5; url=$url"gt;";