Foros del Web » Programando para Internet » PHP »

Problema con login

Estas en el tema de Problema con login en el foro de PHP en Foros del Web. Buenas noches a todos, tengo una duda, lo que pasa es que tengo una web la cual para ver el contenido tienen que iniciar sesion ...
  #1 (permalink)  
Antiguo 03/05/2013, 01:45
 
Fecha de Ingreso: septiembre-2012
Mensajes: 112
Antigüedad: 11 años, 7 meses
Puntos: 1
Problema con login

Buenas noches a todos, tengo una duda, lo que pasa es que tengo una web la cual para ver el contenido tienen que iniciar sesion y supongamos que yo a un usuario le mando un link www.misitio.com/archivos/tesis.php pero si no ha iniciado sesion pues obviamente se tiene que logear Y AHÍ VIENE lo que quiero hacer, que es cuando inicie sesion lo mande a esa pagina que le mande y no al home o atra.
Gracias amigos!
  #2 (permalink)  
Antiguo 03/05/2013, 01:51
Avatar de xXn
xXn
 
Fecha de Ingreso: abril-2013
Ubicación: Buenos Aires
Mensajes: 41
Antigüedad: 11 años
Puntos: 2
Respuesta: Problema con login

Código PHP:
Ver original
  1. <?php
  2.     session_start();
  3.     $login = $_SESSION['login'];
  4.     if($login != 'ok'){
  5.         header("location:./login.php");
  6.     }else{ 
  7.                 header("location:http://www.pagina.php");
  8.     }
  9. ?>
  #3 (permalink)  
Antiguo 03/05/2013, 01:53
pr0
 
Fecha de Ingreso: marzo-2004
Mensajes: 687
Antigüedad: 20 años
Puntos: 28
Respuesta: Problema con login

Edito: Se me adelantó xXn
  #4 (permalink)  
Antiguo 03/05/2013, 01:57
Avatar de xXn
xXn
 
Fecha de Ingreso: abril-2013
Ubicación: Buenos Aires
Mensajes: 41
Antigüedad: 11 años
Puntos: 2
Respuesta: Problema con login

Y en el login buscas si existe la contraseña y el usuario. Si no hay filas, te redirige al login, si existe, te crea session.

Código PHP:
Ver original
  1. if (mysqli_num_rows($resultado) != 1){
  2.         header("location:login.php");
  3.     }else{
  4.         session_start();
  5.         $usuario = mysqli_fetch_assoc($resultado);
  6.         $_SESSION["login"] = "ok";
  7.         $_SESSION["id"] = $usuario['usr_id'];
  8.         header("location:paginaquequieras.php");
  9.     }

Te recomiendo que leas esto :
http://www.forosdelweb.com/wiki/PHP:_%C2%BFQue_es_una_sesion_de_PHP%3F

Saludos
  #5 (permalink)  
Antiguo 03/05/2013, 08:26
 
Fecha de Ingreso: septiembre-2012
Mensajes: 112
Antigüedad: 11 años, 7 meses
Puntos: 1
Respuesta: Problema con login

Gracias xXn, te entiendo pero creo que no es lo que busco al 100%, ok si esta login lo manda a la pagina solicitada y si no lo manda a que se logee pero ahi ya que inicio sesion como lo mando a la pagina 1.php que fue la que le mande teniendo en cuenta que puede ser la pag2, pag3 ....
Saludos
  #6 (permalink)  
Antiguo 03/05/2013, 09:25
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: Problema con login

Supongo que lo que quieres es regresar al usuario desde la página que a iniciado sesión, si es el caso tienes 2 opciones, guardar la página que esta visualizando (la ultima petición) en una variable de sesión o en un campo hidden en tu formulario de login indicar la URL desde la que esta haciendo login, todo depende de como es que el usuario inicia sesión
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #7 (permalink)  
Antiguo 03/05/2013, 11:32
 
Fecha de Ingreso: septiembre-2012
Mensajes: 112
Antigüedad: 11 años, 7 meses
Puntos: 1
Respuesta: Problema con login

Exactamente, supongamos que te mando la url www.misitio.com/documentos.php?doc=123 pero como no has iniciado sesión te mandara al que la inicies ya después de iniciarla que ahora si te muestre la pagina de ese link que te mande.
  #8 (permalink)  
Antiguo 04/05/2013, 18:02
Idteames
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problema con login

Podrias hacer una funcion que retroceda en el historial 1 o como dice nemutagk guardar en una funcion o variable la url a la que quieres regresar, y desde el login, en la linea:

Código PHP:
header("location:$url); 
el codigo para obtener la url actual es:


Código PHP:
       $domain $_SERVER['HTTP_HOST'];    
      
$url "http://" $domain $_SERVER['REQUEST_URI']; 
Luego esto ya lo implementas, estas 2 lineas te dicen la url actual en la que estas. Si haces un "echo" lo veras.

Tendras que enviar el codigo desde la hoja actual hasta el fichero "login.php"

Saludos

Etiquetas: login
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 09:17.