Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/04/2004, 19:19
Avatar de Reynier
Reynier
 
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 21 años, 5 meses
Puntos: 1
Recargar mi página

Hola:
He realizado un sistema de administración que trabaja con sesiones y cookies. Ahora las cookies son dos y las uso para poder guardar el sesionid asignado a ese usuario (esta contenido en un campo de la Base de Datos) y el tipo de usuario, pues mi sistema de administración cuenta con los siguientes niveles de seguridad:
0. Administrador máximo del sitio
1. Administrador medio
2. Webmaster
3. Profesor
4. Alumno

para luego cuando el usuario acceda al Sistema de Administración (solo los usuarios del 0 al 3) saber que permisos debo dar. Ahora las cookies las creo al chequear los datos del usuario de la siguente forma:
Código PHP:
 require("functions.php");
 
server();
 
nocache();
 
$pass md5($_POST['passwd']);
 
$query mysql_query("SELECT * FROM usuario WHERE login='".$_POST['user']."' AND passwdenc='".$pass."' AND activo=1");
 
$resultado mysql_fetch_array($query);
 if (isset(
$user) && ($user == $resultado['login']) && isset($passwd) && ($pass==$resultado['passwdenc'])){
    
session_start();
    
$_SESSION['adminlogin'] = md5($user);
    
$_SESSION['adminpasswd'] = md5($passwd);
 if(
$resultado['session']==""){
     
$sess session_id();
     
mysql_query("UPDATE usuario SET session='".$sess."' WHERE login='".$_POST['user']."' AND passwdenc='".$pass."' AND activo=1");
 }
  if(
$resultado['tipo']=="0"){
      
redirect("Departamento de Marxismo","1","indexadmin.php?accion=entrar&tipo=0&ses=".$resultado['session']."","Entrando al Sistema de Administración ...<br>Espere unos segundos para ser redireccionado");
  }elseif(
$resultado['tipo']=="1"){
      
redirect("Departamento de Marxismo","1","indexadmin.php?accion=entrar&tipo=1&ses=".$resultado['session']."","Entrando al Sistema de Administración ...<br>Espere unos segundos para ser redireccionado");
  }elseif(
$resultado['tipo']=="2"){
      
redirect("Departamento de Marxismo","1","indexadmin.php?accion=entrar&tipo=2&ses=".$resultado['session']."","Entrando al Sistema de Administración ...<br>Espere unos segundos para ser redireccionado");
  }elseif(
$resultado['tipo']=="3"){
      
redirect("Departamento de Marxismo","1","indexadmin.php?accion=entrar&tipo=3&ses=".$resultado['session']."","Entrando al Sistema de Administración ...<br>Espere unos segundos para ser redireccionado");
  }elseif(
$resultado['tipo']=="4"){
      
redirect("Departamento de Marxismo","1","indexadmin.php?accion=entrar&tipo=4&ses=".$resultado['session']."","Entrando al Sistema de Administración ...<br>Espere unos segundos para ser redireccionado");
  }    
 }else{
     
redirect("Departamento de Marxismo","3","administrador.php?accion=entrar&error=errordatos","No está autorizado a entrar a esta página.<br>Por favor espere unos segundos.");
 } 
y luego en el indexadmin.php
Código PHP:
 require("functions.php");
 
server();
 
session_start();
 
checaadminsess();
 
nocache();
 
$query mysql_query($query);
 
setcookie("sessionid",$_GET['ses']);
 
setcookie("usertype",$_GET['tipo']); 
pero los vinculos que me conducen a las otras páginas de administración son de la siguiente forma:
Código PHP:
 asignaturasadmin.php?action=admin&type=<? echo $HTTP_COOKIE_VARS['usertype']; ?>&ses=<?php echo $HTTP_COOKIE_VARS['sessionid']; ?>
 
 uuariosadmin.php?action=admin&type=<? echo $HTTP_COOKIE_VARS['usertype']; ?>&ses=<?php echo $HTTP_COOKIE_VARS['sessionid']; ?>"
ahora la duda mia es porque cada vez que entro al sistema de administracióm mío, si en mi barra de navegador la dirección es esta: indexadmin.php?accion=entrar&tipo=0&ses=4a1a09a3c6 43e2846ebd8da0b86f7cab

debo dar F5 o recargar mi página para que esas variables que estan en los vínculos que me conducen a otras páginas del sistema de administración tomen valores, es decir, sino le hago nada el vínculo es este: eventosadmin.php?action=admin&type=&ses=, sin embargo si doy F5 se ponen así: eventosadmin.php?action=admin&type=0&ses=4a1a09a3c 643e2846ebd8da0b86f7cab

que hago? me dan alguna solución? porque en verdad ya no se que hacer

Salu2
__________________
Ing. Reynier Pérez Mira