Foros del Web » Programando para Internet » PHP »

Problema con la sesión.

Estas en el tema de Problema con la sesión. en el foro de PHP en Foros del Web. Hola, Necessito crear un inicio de sesión, en el cual hay 3 tipos de usuarios. Mi inicio de sesión es este: <?php session_start(); echo 'BIENVENIDO! ...
  #1 (permalink)  
Antiguo 13/06/2011, 15:05
 
Fecha de Ingreso: mayo-2011
Mensajes: 38
Antigüedad: 13 años
Puntos: 1
Problema con la sesión.

Hola,

Necessito crear un inicio de sesión, en el cual hay 3 tipos de usuarios.

Mi inicio de sesión es este:

<?php session_start();

echo 'BIENVENIDO! ';

if (isset($_SESSION['k_username'])) {
echo '<b>'.$_SESSION['k_username'].'</b>.';
echo '<p><a href="logout.php">Logout</a></p>';
}else{
echo '<p><a href="login.php">Login</a></p>
<p><a href="registrar.php">Registrar</a></p>';
}

?>

Esto me envia a una pagina de login en la cual pongo el nombre y el pasword. Pero me encuentro que no puedo cerrar sesión, la única forma es cerrar el explorador.
Creo que este inicio no lo hago muy bien, a mi me parece que hago como una sesión del explorador, no lo se seguro...
Como lo tendria que hacer? Y para poder hacer un logout?
Tambien tengo otra duda y es que en el explorador si pongo la direccion/"la pagina que quiero", me deja ir, y me gustaria que si no hubieses echo antes todos los pasos de login no me dejara ir, como lo tengo que hacer?

Muchas Gracias!
  #2 (permalink)  
Antiguo 13/06/2011, 15:31
Avatar de enlinea777  
Fecha de Ingreso: mayo-2008
Ubicación: frente al pc
Mensajes: 1.830
Antigüedad: 16 años
Puntos: 127
Respuesta: Problema con la sesión.

sigue la grafica.



primero login y despues pagina home.
sino login pues debuelta a register o/a login
  #3 (permalink)  
Antiguo 13/06/2011, 15:36
Avatar de Markgus  
Fecha de Ingreso: junio-2010
Mensajes: 152
Antigüedad: 13 años, 10 meses
Puntos: 5
Respuesta: Problema con la sesión.

hola para poder cerrar la sesion tienes que destruirla usando session_destroy() crea una pagina que se llame logout.php o como quieras y ahi metes el codigo para cerrar la sesion que seria algo asi

Código PHP:
<?php
session_start
();
// Borramos toda la sesion
session_destroy();
echo 
'Ha terminado la session';
 
header("LOCATION: login.php");//redirecciionas a otra pagina 
?>
Cita:
Tambien tengo otra duda y es que en el explorador si pongo la direccion/"la pagina que quiero", me deja ir, y me gustaria que si no hubieses echo antes todos los pasos de login no me dejara ir, como lo tengo que hacer?
amigo esto es porque en todas las paginas que quieras restringir a un inicio de sesion debes de usar sesiones así como tienes aqui, pon esto en todas las paginas que quieras restringir

Código PHP:
<?php 
session_start
(); //lo importante es que siempre inicies la sesión


// y valides si es un usuario valido

if (!isset($_SESSION["k_username"])){
    
//echo "Favor de iniciar session";
    
header("LOCATION: login.php");
    exit();
}

echo 
'Bienvenido: ';
echo 
' <b>' .$_SESSION['k_username'].'</b>.';
echo 
'<div align="right"> <br>' "<a href='logout.php' target='_top'>Cerrar Sesion</a> </div>";

?>
y pues te aconsejo que leas mas sobre sesiones a veces por las carreras no nos detenemos a analizar pero esta chido el lenguaje yo soy algo nuevo pero me gusta mucho seguir aprendiendo
saludos

enlinea777 te lo puso muy claro como es que funciona

Etiquetas: sesión
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 14:49.