Ver Mensaje Individual
  #3 (permalink)  
Antiguo 24/02/2010, 09:14
kriss8725
 
Fecha de Ingreso: mayo-2009
Mensajes: 242
Antigüedad: 15 años, 6 meses
Puntos: 2
Respuesta: Pierdo valor de variable $_SESSION

Gracias por responder amigo pero si lo tengo mira esto;

sesion.php
Código PHP:
<?php
session_start
();//se inicia la sesion
    
include("conexion.php");
    if (isset(
$_POST['txtusu']))
    {
//inicio del if si se usa txtusu
      
$usuario=$_POST['txtusu'];
      
$clave=$_POST['txtpass'];
        if ((
$usuario=="") || ($clave==""))
        {
//inicio del if si clave o usuario =" "
           
$_SESSION['NO']="Debe llenar las dos cajas de texto!!!";
           
$dom="inicio_sesion.php";              
                    
header("Location: http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF'])."/".$dom); 
        }
//fin del if si clave o usuario ==" " 
          
else
          {
//inicio del else si los campos txtusu y txtclave no son vacios         
             
$sql sprintf("SELECT * FROM usuarios WHERE nom_usu='".mysql_real_escape_string($usuario)."'");
             
$r mysql_query($sql,$con);
             
$fila=mysql_fetch_array($r);     
                if (
$fila 0)
                {
//inicio del if si fila > 0
                
$pass $fila['password'];
                
$clave sha1($clave);
                        if (
$pass == $clave)
                        {
//inicio del if para validar la clave
                            
session_register('nomusu');
                            
$_SESSION['nomusu'] = $fila['nombre'].' '.$fila['ape_pat'].' '.$fila['ape_mat'];
                            
$_SESSION['tiempo'] = time();
                            
$_SESSION['tipo_usu'] = $fila['tipo_usu'];
                            
$dom="inicio_sesion.php";
                            
header("Location: http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF'])."/".$dom); 
                        }
//fin del if para validar la clave
                        
else
                        {
//inicio del else del pasword
                            
$_SESSION['NO']="Contraseña no válida!!!";
                            
$dom="inicio_sesion.php";
                            
header("Location: http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF'])."/".$dom);
                        }
//fin del else del password
                
}//fin del if si fila > 0
                        
else
                        {
//inicio del else del usuario
                            
$_SESSION['NO']="Nombre de usuario no válido!!!";
                            
$dom="inicio_sesion.php";
                            
header("Location: http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF'])."/".$dom);
                        }
//fin del else del usuario
                        
mysql_free_result($sql);//libera la consulta
           
}//fin del else si los campos txtusu y txtclave no son vacios
                    
mysql_close();//se cierra mysql
    
}//fin if si se usa txtusu
else
session_destroy();//se termina la sesion           
?>
script.php
Código PHP:
<?php 
//el arroba funciona si la session ya se ha cargado no volver ha cargar
@session_start();
$segundos 1800;
    if(
$_SESSION['nomusu']==""){
    
session_unset();
    
session_destroy();
?>
        <script type="text/javascript">
           document.location.href='http://localhost/UPSZ/index.php';
         </script>
<?php    
    
}elseif(($_SESSION['tiempo'] + $segundos) < time()){
    
session_unset();
    
session_destroy();
?>
         <script type="text/javascript">
           alert("Su sesion ha expirado por inactividad, porfavor vuelva a iniciar sesion");
           document.location.href='http://localhost/UPSZ/index.php';
         </script>
<?php    
    
}else{
    
$_SESSION['tiempo'] = time();
    } 
?>
espero que con esto me ayudes un poco mas amigo gracias.