Foros del Web » Programando para Internet » PHP »

redirigir a la pagina desde donde se hizo login

Estas en el tema de redirigir a la pagina desde donde se hizo login en el foro de PHP en Foros del Web. hola a todos, en todas mis paginas tengo incluido un arichivo llamado login.php ke es donde el usuario pone su nick y contraseña y este ...
  #1 (permalink)  
Antiguo 01/09/2005, 10:54
Avatar de ZydRick  
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 750
Antigüedad: 12 años, 10 meses
Puntos: 4
redirigir a la pagina desde donde se hizo login

hola a todos, en todas mis paginas tengo incluido un arichivo llamado login.php ke es donde el usuario pone su nick y contraseña y este lo lleva a un archivo "autentificar.php" ke es donde comprobara ke los datos ingresados sean correctos, mi login funciona perfectamente el unico detalle es ke siempre redirije a la pagina principal y me gustaria ke redirija a la pagina desde donde se hizo el login, aki les pongo los dos codigos para ke me ayuden con lo ke kiero realizar:

loign.php
Código PHP:
<?
session_start
();
?>
<style type="text/css">
<!--
@import "estilos.css";
-->
</style>
<?
include('config.php'); //incluimos el config.php que contiene los datos de la conexión a la db

if(!isset($_SESSION[usuario]) ) //comprobamos que no existe la session, es decir, que no se ha logeado, y mostramos el form
?>
<div id="m1">
<table>
  <tr>
    <td>
    <form action="autentificar.php" method="POST">
    &nbsp;<font size="-2" face="Trebuchet MS">Nick:</font>&nbsp;
    <input type="text" name="nick" size="10" maxlength="16"/>
    &nbsp;<font size="-2" face="Trebuchet MS">Password:</font><font size="-2">&nbsp;</font> 
    <input type="password" name="pass" size="10" maxlength="16" />
    &nbsp;<input type="submit" name="submit" value="Conectar">
    &nbsp;&nbsp;<a class=link4 href="reg.php"><b>Regístrate</b></a>&nbsp;<font size="2">/</font>&nbsp;<a class=link4 href="lostpass.php"><b>Recuperar password</b></a>
    </form></td></tr></table></div>
<? }else{ ?>
<div id="m1"><form action="logout.php" method="POST"><input type="submit" value="Desconectar"></form></div>
<? }
?>
autentificar.php
Código PHP:
<?
session_start
();
include(
'config.php'); //incluimos el config.php que contiene los datos de la conexión a la db

if( ($_POST[nick] == '') or ($_POST[pass] == '') )//comprobamos que las variables enviadas por el form de login.php tienen contenido
{
Header("Location: index.php"); //estan vacías, volvemos al index
}else{

//comprobamos en la db si existe ese nick con esa pass
$usuarios=mysql_query("SELECT * FROM users WHERE nick='$_POST[nick]' and pass='$_POST[pass]' ");
if(
$user_ok mysql_fetch_array($usuarios)) //si existe comenzamos con la sesion, si no, al index
{

session_register("usuario"); //registramos la variable usuario que contendrá el nick del user
session_register("idusuario"); //registramos la variable idusuario que contendrá la id del user
session_register("level"); //registramos la variable level que contendrá el level del user
//damos valores a las variables de la sesión
$_SESSION[usuario] = $user_ok["nick"]; //damos el nick a la variable usuario
$_SESSION[idusuario] = $user_ok["id"]; //damos la id del user a la variable idusuario
$_SESSION[level] = $user_ok["level"]; //damos el level del user a la variable level
Header("Location: main.php"); //volvemos al login donde nos saldrá nuestro menú de usuario

}else{
echo 
'<br><center><div class=aviso><strong>Lo sentimos, pero el Nick y/o Password ingresados no son correctos<br><a class=link5 href="javascript:history.back();">:: Clic aquí para regresar ::</strong></a></div></center>';
}


?>
ojala alguien sepa como hacerlo y me pueda ayudar, le estare muy agradecido

Saludos
  #2 (permalink)  
Antiguo 01/09/2005, 11:13
Avatar de Bytevamp  
Fecha de Ingreso: junio-2005
Ubicación: /var/www/
Mensajes: 789
Antigüedad: 12 años, 5 meses
Puntos: 7
Veamos si no me equivoco lo unico que has de hacer es sustituir
Código PHP:
Header("Location: main.php"); 
por
Código PHP:
Header("Location: login.php"); 
y con eso te redirige a esa pagina.
¿era eso?. Suerte.
  #3 (permalink)  
Antiguo 01/09/2005, 11:19
Avatar de ZydRick  
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 750
Antigüedad: 12 años, 10 meses
Puntos: 4
no, no me has entendido, yo tengo el login metido con un include en todas las paginas de mi web y lo ke kiero es ke por decir si un usuario esta en noticias.php?id=4 se logue y lo redirija a esa misma pagina y asi segun desde donde se loguee, no se si me explico
  #4 (permalink)  
Antiguo 01/09/2005, 12:43
Avatar de TCL_ZIP  
Fecha de Ingreso: noviembre-2003
Ubicación: Esporles, Mallorca, España
Mensajes: 690
Antigüedad: 14 años
Puntos: 4
pues enviale por post o por get la url actual en la que esta
  #5 (permalink)  
Antiguo 01/09/2005, 12:55
Avatar de ZydRick  
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 750
Antigüedad: 12 años, 10 meses
Puntos: 4
me podrias decir como hacer eso por favor?, es ke la verdad ke no se manejar muy bien ese par de cosas por eso lo deje de esa forma
  #6 (permalink)  
Antiguo 01/09/2005, 12:55
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
Con $_SERVER['HTTP_REFERER'] obtienes la dirección desde que se llamó a un archivo. $_SERVER['PHP_SELF'] obtienes la dirección del archivo actual. Alguna te servirá, checa todos los parámetros en www.php.net/reserved.variables

Creo esto te servirá: http://www.forosdelweb.com/f18/guardar-pagina-sesion-321881/ ... acabo de darme cuenta que participaste en dicho thread ...

__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #7 (permalink)  
Antiguo 01/09/2005, 12:58
Avatar de TCL_ZIP  
Fecha de Ingreso: noviembre-2003
Ubicación: Esporles, Mallorca, España
Mensajes: 690
Antigüedad: 14 años
Puntos: 4
poz eso XD
  #8 (permalink)  
Antiguo 01/09/2005, 13:01
Avatar de ZydRick  
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 750
Antigüedad: 12 años, 10 meses
Puntos: 4
jam gracias, voy a chekar ese par de cosillas, y lo del post en el ke participe si te daras cuenta ella pedia ke la regrese a login.php y eso si ke es facil
  #9 (permalink)  
Antiguo 01/09/2005, 13:10
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
Cita:
Iniciado por ZydRick
lo ke kiero es ke por decir si un usuario esta en noticias.php?id=4 se logue y lo redirija a esa misma pagina y asi segun desde donde se loguee
El problema es el mismo:
Cita:
Iniciado por sophia2323
es como hacer para que me guarde la página a la cuál yo queria acceder y cuando de login me lleve a esa página y no a la del inicio.
Las herramientas son las que dije en un inicio... solo plantea bien el cómo usarlas.

Y veo que no me hiciste nada al respecto del comentario que ahí mismo te dejé ... disculpame por insistir:
Cita:
Iniciado por jam1138
Comentario: El uso de session_register() es obsolteo.. hay que usar la variable superglobal $_SESSION y es un error combinar ambas cosas (session_register() y $_SESSION); Esto puede leerse en la documentación oficial.
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #10 (permalink)  
Antiguo 01/09/2005, 13:12
Avatar de McClane  
Fecha de Ingreso: diciembre-2002
Mensajes: 14
Antigüedad: 15 años
Puntos: 0
A mí con esto me funciona perfectamente:

$redirect = $_SERVER['HTTP_REFERER'];

y en el lugar que quiero redirigir:

header("Location: $redirect");
  #11 (permalink)  
Antiguo 01/09/2005, 14:05
Avatar de ZydRick  
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 750
Antigüedad: 12 años, 10 meses
Puntos: 4
muchas gracias me funciona perfecto
  #12 (permalink)  
Antiguo 01/09/2005, 14:10
Avatar de ArrauKano  
Fecha de Ingreso: noviembre-2002
Ubicación: Santiago
Mensajes: 664
Antigüedad: 15 años, 1 mes
Puntos: 4
yo guardaria la seccion actual de la web en una sesion y luego en el script de login obtener la ultima seccion q tenias luego rediriges usando esa variable en la $_SESSION
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:35.