Foros del Web » Programando para Internet » PHP »

sesiones y denegar acceso

Estas en el tema de sesiones y denegar acceso en el foro de PHP en Foros del Web. Tengo unas dudas bien simples, cree un login que inicia sesion correctamente al parecer, Como compruebo si el logueo esta hecho correctamente?. Código PHP: session_start ...
  #1 (permalink)  
Antiguo 10/03/2013, 22:24
 
Fecha de Ingreso: marzo-2013
Mensajes: 26
Antigüedad: 11 años
Puntos: 0
sesiones y denegar acceso

Tengo unas dudas bien simples, cree un login que inicia sesion correctamente al parecer,
Como compruebo si el logueo esta hecho correctamente?.
Código PHP:
session_start(); 
Esto se supone que es para mantener la sesion activa entre las paginas y se coloca en todas ellas o me equivoco?

otra duda es que tengo una pequeña funcion en el config.php
Código PHP:
function user_login()
    {
    if(
$_SESSION['id'])       {
        exit (
"Solo usuarios registrados, 
<a href='javascript:history.back(-1)'>Volver</a>"
);
        }
    } 
esto es para que cierta pagina solamente la puedan ver los usuarios logueados,pero tampoco me sirve y todos pueden ver dicha pagina.
No se si me explique bien, soy nuevo en esto y estoy tratando de aprender, aunque es muy complicado.Gracias de antemano!

Saludos.

Última edición por rahe_meph; 10/03/2013 a las 22:44
  #2 (permalink)  
Antiguo 11/03/2013, 00:00
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: sesiones y denegar acceso

Ese código (donde haces la comprobación "if") esta completamente mal, para comenzar si no existe el indice 'id' lo unico que tendrás es un error del tipo warning, para comprobar si existe o no una variable o indice debes usar isset() o empty(), aparte, session_start() siempre debes indicarlo en los archivos que usarán sesiones, y este debe estar siempre antes de cualquier salida al navegador, para ser mas exactos en la segunda linea del archivo (la primera será <?php)....

Código PHP:
Ver original
  1. <?php
  2.  
  3. //fijate en el cierre de exclamación !, ese indica que debe ser negativo
  4. // en este caso "si NO existe" hacer...
  5. if (!isset($_SESSION['id'])) {
  6.      //es mejor redireccionar con header por si javascript esta desactivado
  7.      header('location:  pagina.php');
  8.      exit();
  9. }
__________________
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 =)

Etiquetas: sesiones, 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:17.