Foros del Web » Programando para Internet » PHP »

sessiones y problemas

Estas en el tema de sessiones y problemas en el foro de PHP en Foros del Web. tengo un problema con respecto a las sesiones. un usuario al querer ingresar a una zona valida su password y user con los que existe ...
  #1 (permalink)  
Antiguo 25/10/2005, 06:10
 
Fecha de Ingreso: abril-2005
Mensajes: 71
Antigüedad: 19 años
Puntos: 0
sessiones y problemas

tengo un problema con respecto a las sesiones.
un usuario al querer ingresar a una zona valida su password y user con los que existe en una tabla mysql, luego de verificar su validez agrega dos variables de sesiones de esta manera y lo redirecciona a donde tiene acceso exclusivo

session_start();
$_SESSION["sesion_user"] = $myrow2[user];
$_SESSION["sesion_nivel"] = $myrow2[nivel];


header("location: pag_destino.php");


el problema surge cuando cierran el explorador o cierran sesion y no se que otra cosa haran, no lo se? e intentan entrar nuevamente y no pasa nada. Es decir, vuelven a donde los direcciona este if si es verdadero

<?
session_start();

if (!(isset($_SESSION["sesion_user"]))) {
/*si no existe la sesion redireccionar*/

header("location: control.php");
} else {
/*si existe verificar el nivel de acceso, antes agregar la variable ubic_nivel*/
if ($ubic_nivel < $_SESSION["sesion_nivel"]) {
/*si no pertenece al nivel redireccionar*/

header("location: pag_destino.php?estado=nolevel");
}
}
?>

Este codigo se encuentra en cada inicio de pagina de las que se tiene acceso restringido al publico comun
por que puede pasar esto?

Última edición por Zippo3000; 25/10/2005 a las 06:18
  #2 (permalink)  
Antiguo 25/10/2005, 06:27
 
Fecha de Ingreso: octubre-2005
Mensajes: 10
Antigüedad: 18 años, 5 meses
Puntos: 0
Bueno, el tema de que cierren el explorador... es otra cosa... un día lo solucioné pero no recuerdo ahora cómo... :s jjejje voy a buscarlo y te lo comento.

Pero cuando cierran la sesion tienes que eliminar esas variables session... para ello cuentas con funciones en php (mira las funciones de session de php). Por eso siempre que estamos logeado en algun web... lo suyo es salir por dnd pone salir, para cerrar, eliminar todo tipo de objetos sessiones (o cookies) que nos identifican...
Cuando encuentre lo otro, te contesto...
Ns bms!
  #3 (permalink)  
Antiguo 25/10/2005, 06:30
 
Fecha de Ingreso: abril-2005
Mensajes: 71
Antigüedad: 19 años
Puntos: 0
pero no tendria que eliminarse la sesion con el cierre del explorador o cambiando de pagina web?
  #4 (permalink)  
Antiguo 25/10/2005, 06:35
 
Fecha de Ingreso: abril-2005
Mensajes: 71
Antigüedad: 19 años
Puntos: 0
Solo se permite una sesion por pc, no?
si yo tengo una session que utiliza el contador para que al actualizar la pagina, si la sesion ya existe, no incremente el contador.
Y luego para estos usuarios especiales, agrego a la session estas 2 variables que le dan acceso exclusivo a unas secciones del site.
  #5 (permalink)  
Antiguo 25/10/2005, 06:45
 
Fecha de Ingreso: octubre-2005
Mensajes: 10
Antigüedad: 18 años, 5 meses
Puntos: 0
A ver... Zippo3000, puedes hacer eso que dices...
Mira, yo controlé el uso de las sessiones del siguiente modo:

En la primera pagina metia dos variables session... de tal modo que una era la del usuario, para identificarlo, y la otra era del tipo $valido, que valía 0 y una vez que se identificaba la ponía a 1. ¿Para qué hacía esto?, pues para que si se metía en otra pagina, aún con algun usuario "perdido" viera si provenía de la page pirncipal, amos, de loguearse, o no... ahora bien, combina lo de la exclusion mutua y algo como esto y quizás puedas sacar un algoritmo o forma de pillar esos inconvenientes de las sessiones... ns bms.
  #6 (permalink)  
Antiguo 25/10/2005, 07:25
 
Fecha de Ingreso: abril-2005
Mensajes: 71
Antigüedad: 19 años
Puntos: 0
aun persiste

gracias por el consejo, realmente agradezco a todos por el esfuerzo en responder y dar su solucion, pero en este caso no me funciono asi, y no veia el cambio tampoco
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 16:27.