Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/03/2012, 07:09
resolber
 
Fecha de Ingreso: abril-2009
Mensajes: 8
Antigüedad: 15 años, 1 mes
Puntos: 0
Perdida de variables de sesion entre frames

Buenas!

pues tengo un problemilla y por mas vueltas que le doy no entiendo el porque no me funciona.

tengo un archivo index el cual se divide en 4 frames; cabecera,menu_izq,centro,pie_pagina.

mediante el menu_izq actualizo el centro de la pagina y llego al login de usuarios, hasta hay sin problemas

tengo 3 funciones, 1 de login, otra de comprobacion de login, y la ultima seria el panel de usuario.

paso el formulario de login, comprueba que es correcto los datos introducidos, y llego al panel de usuario, todo correcto.

al final de comprobar login guardo el nick de la session, y guardo la id de la sesion de la bd para poder comprobarla mas adelante, y paso al panel de usuario.



pero no se porque razon, las variables de sesion se borran si hago un F5 por ejemplo, y vamos entre los frames parecen sesiones distintas xd.
En el menu_izq por ejemplo esa variable esta en blanco

He probado a poner session_start() en todos los archivos.php que uso y nada...
Tambien he probado ha crear un index.php con el session_start y de hay pasar a un index.2 por si se reinician las variables de session, pero aun asi tampoco funciona.

estoy probando en local y si tengo las cookies activadas.

estoy venga a buscar por internet pero no encuentro nada que me ayude.

pongo el codigo donde guardo las variables de session(sin frames funciona correctamente).


Código PHP:
$pass2=$data['password'];        
$nick=$data['nick'];        
    if (
$pass!=$pass2){
    echo 
"contraseña incorrecta";
    }else{
    echo 
"<script language='javascript'>location.href='".$ruta_web."usuarios/index.php?accion=3';</script>";
    echo 
"loguin correcto";
    
$_SESSION["s_username"] = $login;
    
$_SESSION["s_nick"] = $nick;
    
$fecha=date("d/m/o");
    
$sesion=session_id();
    
$login2=$_SESSION['s_username'];
    
$nick2=$_SESSION['s_nick'];
    
mysql_query("UPDATE usuarios SET ulti='$fecha',sesion='$sesion' WHERE login='$login'");
    print (
"<br>comprobando login=$login2 <br> nick=$nick2");
    } 
donde pongo comprobando login, aparecen los valores correctos.

quiero pasar variables por sessiones y no por url.


gracias!