Redirección a página login con variables

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:
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 
?>
2. En login.php, escribe algo como esto:
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'] ." "));
?>
3. En alguno enlace a logout.php, escribe esto:
PHP:
<?php
//Asegúrese que los parámetros están asignado de numero uno
echo "logout.php?redirect='. $redirect .'&name='. $name .'";
?>
4. En logout.php:
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");
?>
5. Va a login.php un otra vez y escribe eso en el <input> en la <form>:
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
} ?>
" />
No estoy siguro como bueno lo traducí pero si tienen preguntas, pregúntame.
 

masonmx

New Member
Messages
1
Reaction score
0
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:
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 
?>
2. En login.php, escribe algo como esto:
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'] ." "));
?>
3. En alguno enlace a logout.php, escribe esto:
PHP:
<?php
//Asegúrese que los parámetros están asignado de numero uno
echo "logout.php?redirect='. $redirect .'&name='. $name .'";
?>
4. En logout.php:
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");
?>
5. Va a login.php un otra vez y escribe eso en el <input> en la <form>:
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
} ?>
" />
No estoy siguro como bueno lo traducí pero si tienen preguntas, pregúntame.

Saludos

pp
 
Top