espfutbol98
New Member
- Messages
- 200
- Reaction score
- 2
- Points
- 0
Primero, estoy aprendiendo español. Voy a hacer lo mejor que puedo pero este es mi segundo año de estudiar soló.:happysad: Este es una traducción de mi ejemplo en inglés aquí. Este tutorial demostra como hacer una redirección a una página login con variables (en este ejemplo, un nombre). No actualmente demostra como autentificar pero soló la redirección.
1. En la página que quiere proteger, escribe eso:
2. En login.php, escribe algo como esto:
3. En alguno enlace a logout.php, escribe esto:
4. En logout.php:
5. Va a login.php un otra vez y escribe eso en el <input> en la <form>:
No estoy siguro como bueno lo traducí pero si tienen preguntas, pregúntame.
1. En la página que quiere proteger, escribe eso:
PHP:
<?php
session_start();
if ((isset($_SESSION['uname']) &&
$_SESSION['uname'] != "") ||
(isset($_SESSION['upass']) &&
$_SESSION['upass'] != "")) {
//Si hay un nombre de usario, una contraseña y tienen valores, haz nada
} else {
$redirect = base64_encode($_SERVER['PHP_SELF']); //codifica donde está la página
header("Location: login.php?redirect=$redirect");
die();
}
$redirect = base64_encode($_SERVER['PHP_SELF']);
$name = base64_encode($_SESSION['uname']); //usada luego
?>
PHP:
<?php
if (isset($_GET['redirect'])) {
$redirect = $_GET['redirect'];
} else {
$redirect = base64_encode("index.php"); //Si no hay una redirección, la página principal está asignado.
}
//Su código login aquí
//Si autentificado, haz esto:
header ("Location: ". base64_decode($_POST['redirect'] ." "));
?>
PHP:
<?php
//Asegúrese que los parámetros están asignado de numero uno
echo "logout.php?redirect='. $redirect .'&name='. $name .'";
?>
PHP:
<?php
session_start();
unset($_SESSION['uname']);
unset($_SESSION['upass']);
//Destruye los sesiones
if (isset($_GET['redirect'])) {
$redirect = $_GET['redirect'];
} else {
$redirect = base64_encode("index.php");
}
//Si logout.php no tiene "redirect=" en el url, index.php está asignado.
if (isset($_GET['name'])) {
$name = $_GET['name'];
} else {
$name = base64_encode("");
}
//$name es el nombre que vamos a echo en el input en login.php
header("Location: login?redirect=$redirect&name=$name");
?>
PHP:
Username: <input type="text" value="<?php
if (isset($_GET['name'])) {
$name = base64_decode($_GET['name']); //Descodifica que está en el "name" del url
echo "$name";
}
else { echo ""; //si no hay un nombre, escriba nada
} ?>
" />