Foros del Web » Programando para Internet » PHP »

Bloquear paginas a los usuarios autenticados

Estas en el tema de Bloquear paginas a los usuarios autenticados en el foro de PHP en Foros del Web. Hola amigos: Nesesito ayuda urgento ojala q me puedan ayudar. Bueno lo que necesita es restringir el acceso a los usuarios q ya estan logueados ...
  #1 (permalink)  
Antiguo 02/10/2011, 15:32
 
Fecha de Ingreso: abril-2010
Mensajes: 18
Antigüedad: 14 años
Puntos: 0
Bloquear paginas a los usuarios autenticados

Hola amigos:

Nesesito ayuda urgento ojala q me puedan ayudar.

Bueno lo que necesita es restringir el acceso a los usuarios q ya estan logueados es decir una vez q hacen login q ya no puedan entrar a la seccion de login o a la seccion de registrarse.

por que seria inlogico que si ya estan logueados puedan registraser de nuevo o hacer login dos veces .

quiero bloquearlos o rediccionarlo a los que ya estan logueados espero su ayuda.
  #2 (permalink)  
Antiguo 02/10/2011, 15:45
Avatar de Sourcegeek
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: $mex['B.C.'];
Mensajes: 1.816
Antigüedad: 15 años
Puntos: 322
Respuesta: Bloquear paginas a los usuarios autenticados

Necesitas ayuda de isset() y header()

Investiga sobre ambos en el manual, con isset checas la existencia de la sesión y con header redireccionas al usuario a donde quieres.

Saludos
__________________
Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación
¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies
  #3 (permalink)  
Antiguo 02/10/2011, 15:58
 
Fecha de Ingreso: abril-2010
Mensajes: 18
Antigüedad: 14 años
Puntos: 0
Respuesta: Bloquear paginas a los usuarios autenticados

me puedes dar un ejemplo por favor si no fuera tanto pedir
  #4 (permalink)  
Antiguo 02/10/2011, 16:31
 
Fecha de Ingreso: septiembre-2011
Mensajes: 9
Antigüedad: 12 años, 7 meses
Puntos: 0
Información Respuesta: Bloquear paginas a los usuarios autenticados

Hola aquí tienes algo, espero te sirva.

Código PHP:
Ver original
  1. <?php  
  2.      
  3.      //si esta registrada la sesion del usuario haga esto
  4.      if (isset($_SESSION["idUsuario"]))
  5.          {
  6.         // guardo la hora en que se conecto
  7.         $fechaGuardada = $_SESSION["ultimoAcceso"];
  8.         $ahora = date("Y-n-j H:i:s");
  9.         $tiempo_transcurrido = (strtotime($ahora)-strtotime($fechaGuardada));
  10.         //comparamos el tiempo transcurrido
  11.         if($tiempo_transcurrido >= 6000)
  12.             {
  13.             //si pasaron x minutos o más
  14.             session_destroy(); // destruyo la sesión
  15.             header("Location: ../ingreso.php?opcion=desconectado"); //envío al usuario a la pag. de autenticación
  16.             //sino, actualizo la fecha de la sesión
  17.             }
  18.         else    
  19.             {
  20.             $_SESSION["ultimoAcceso"] = $ahora;
  21.             }
  22.          }
  23.         else
  24.         {
  25.                 //no esta autenticado lo envio a la pagina de ingreso
  26.         header('Location: ../ingreso.php');
  27.         exit;
  28.         }
  29.                  //valido que sea del tipo de usuario correcto para entrar en este formulario
  30.         if ($_SESSION["fkTipoUsuario"]<>1)
  31.             {
  32.             echo 'ACCESO DENEGADO.<BR> TIPO DE USUARIO INCORRECTO';
  33.             exit;
  34.             }
  35. ?>
  #5 (permalink)  
Antiguo 02/10/2011, 16:59
 
Fecha de Ingreso: abril-2010
Mensajes: 18
Antigüedad: 14 años
Puntos: 0
Respuesta: Bloquear paginas a los usuarios autenticados

gracias por tu respuesta pero ese codigo si lo tengo lo que pasa es q no se como restringir el acceso a los q ya estan autenticados para que no puedan acceder a la seccion de loguin
  #6 (permalink)  
Antiguo 02/10/2011, 17:11
 
Fecha de Ingreso: septiembre-2011
Mensajes: 9
Antigüedad: 12 años, 7 meses
Puntos: 0
Mensaje Respuesta: Bloquear paginas a los usuarios autenticados

debes usar algo como esto en el inicio de la pagina de logeo

Código PHP:
Ver original
  1. <?php  
  2.  //si esta registrada la sesion del usuario haga esto
  3.      if (isset($_SESSION["idUsuario"]))
  4.          {
  5.          echo $nombreUsuarioLogeado; //tambien  lo puedes mandar a la pagina principal
  6.           }
  7.         else
  8.         {
  9.                 //no esta autenticado lo envio a la pagina de ingreso
  10.         header('Location: ../ingreso.php');
  11.         exit;
  12.         }
  #7 (permalink)  
Antiguo 02/10/2011, 17:16
Avatar de Sourcegeek
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: $mex['B.C.'];
Mensajes: 1.816
Antigüedad: 15 años
Puntos: 322
Respuesta: Bloquear paginas a los usuarios autenticados

Cita:
Iniciado por escor Ver Mensaje
me puedes dar un ejemplo por favor si no fuera tanto pedir
¿Podrias invesigar en el manual sobre los conceptos que te di (isset/header) si no fuera tanto pedir?
__________________
Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación
¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies
  #8 (permalink)  
Antiguo 02/10/2011, 17:42
 
Fecha de Ingreso: abril-2010
Mensajes: 18
Antigüedad: 14 años
Puntos: 0
Respuesta: Bloquear paginas a los usuarios autenticados

muchas gracias llegue a resolver mi problemita muchas gracias aqui dejo el codigo que use.

Código PHP:
<?php 
if (isset($_SESSION["MM_Username"])) {
  
session_start();
  
header('Location: ../index.php');
}
?>
  #9 (permalink)  
Antiguo 02/10/2011, 19:15
Avatar de SirDuque  
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 2 meses
Puntos: 89
Respuesta: Bloquear paginas a los usuarios autenticados

Cita:
Iniciado por escor Ver Mensaje
muchas gracias llegue a resolver mi problemita muchas gracias aqui dejo el codigo que use.

Código PHP:
<?php 
if (isset($_SESSION["MM_Username"])) {
  
session_start();
  
header('Location: ../index.php');
}
?>
Perdon ese codigo esta mal....

session_start();

tiene que estar como primer linea...
Código PHP:
<?php 
session_start
();
if (isset(
$_SESSION["MM_Username"])) 
{
  
header('Location: ../index.php');
}
?>
__________________
Mono programando!
twitter.com/eguimariano

Etiquetas: bloquear, usuarios
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:23.