Foros del Web » Programando para Internet » PHP »

elemental session

Estas en el tema de elemental session en el foro de PHP en Foros del Web. Buenas. Era por si alguien me puede decir brevemente como se hace para que una sesion perdura entre páginas. Yo en la página inicial hago: ...
  #1 (permalink)  
Antiguo 18/04/2012, 04:57
Avatar de interjsr  
Fecha de Ingreso: octubre-2011
Ubicación: Madrid
Mensajes: 81
Antigüedad: 13 años, 1 mes
Puntos: 2
elemental session

Buenas. Era por si alguien me puede decir brevemente como se hace para que una sesion perdura entre páginas. Yo en la página inicial hago:

fichero.php
------------------------

//aquí va código para ver si el usuario y la contraseña son correctos y eso funciona
//bien. Usuario = $f_Usuario y el tipo = $tipo por si es usuario o adm.
//$f_Ruta sería el siguiente fichero a abrir


//Doy valor a valiables Session
session_start();
$_SESSION['autentificado']='SI';
$_SESSION['usuario'] = $f_Usuario;
$_SESSION['tipo'] = $tipo;

//si pinto aqui la sesion es correcto.

mysql_free_result($rs);
mysql_close($conn);

header("Location:".$f_Ruta);
exit();

------------------------

Pero en el el siguiente php o html que invoco la sesión está vacía, la he perdido. Debo hacer algo para que navegue entre páginas, ¿pasarla como variables?, no sé.
  #2 (permalink)  
Antiguo 18/04/2012, 05:18
Avatar de linuxzero  
Fecha de Ingreso: noviembre-2011
Ubicación: Argentina
Mensajes: 778
Antigüedad: 13 años
Puntos: 160
Respuesta: elemental session

Esto ya lo tratabas en otro tema, la verdad es muy raro, lo que te pasa, yo te recomiendo que hagas una prueba sencilla que es en un archivo haces el session_start(), metes 2 valores a el array de session y redireccionas a otro, y en el otro php haces el print_r de session.

Esto es para descartar que sea problemas de configuracion, porque si no te funciona asi, es que no tenes habilitado el soporte de session para php lo cual es muy, pero muy raro.

Te digo esto puesto que acabo de probar un caso sencillo y funciona con tu ejemplo, sacando la parte de la liberacion de memoria y cierre de conexion obvio.

Hace esa prueba sencilla en otra carpeta de prueba. Si te funciona quiere decir que algo en tu codigo no nos estas mostrando, o haces algo raro.
__________________
Si todo fuera tan sencillo como un symfony cc la vida seria más fácil.
http://phpnico.wordpress.com
  #3 (permalink)  
Antiguo 18/04/2012, 05:48
Avatar de interjsr  
Fecha de Ingreso: octubre-2011
Ubicación: Madrid
Mensajes: 81
Antigüedad: 13 años, 1 mes
Puntos: 2
Respuesta: elemental session

Ayer probé lo que me dijiste y no me funciona. Hago el Print_r ($_SESSION); en el primero y si da info: Array ( [autentificado] => SI [usuario] => raul [tipo] => 1 ) . Pero con el header comentado, si dejo
header("Location:".$f_Ruta);
exit();
y en esa pagina hago Print_r ($_SESSION); pinta:
nada, jejeje, vacío, blanco

Uso servido local: VertigoServ no sé si afecta
  #4 (permalink)  
Antiguo 18/04/2012, 05:50
Avatar de interjsr  
Fecha de Ingreso: octubre-2011
Ubicación: Madrid
Mensajes: 81
Antigüedad: 13 años, 1 mes
Puntos: 2
Respuesta: elemental session

y sabes si es muy mala idea en vez de usar session una variable que se guarde en bbdd que sea el usuario o el id de usuario y cada vez que se quiera saber que usaurio es el que ha hecho sesion se acceda a esa tablita donde se ha guardado el usaurio logado..., quiz con la ip o yo que se
  #5 (permalink)  
Antiguo 18/04/2012, 07:32
 
Fecha de Ingreso: agosto-2010
Mensajes: 177
Antigüedad: 14 años, 3 meses
Puntos: 5
Respuesta: elemental session

Estuve teniendo ese mismo problema hace unos minutos, a mi se me dio porque cambiaba de subdominio (tarde horas en darme cuenta) entonces no guarda la variable, fíjate de que sigas en el mismo dominio, si cambias de subdominio, el problema surge ahi, o sea, si estas en midominio.com la variable se asocia a ese dominio especifico, pero luego si vas a www.midominio.com no la va a tomar! si es este el problema, avísame que te paso la solución!
  #6 (permalink)  
Antiguo 18/04/2012, 08:51
Avatar de linuxzero  
Fecha de Ingreso: noviembre-2011
Ubicación: Argentina
Mensajes: 778
Antigüedad: 13 años
Puntos: 160
Respuesta: elemental session

Si ese es el caso como decis custus, para que redireccionas al dominio completo si lo que tenes que redireccionar es en forma local, vos siempre vas a conocer la ramificacion de los directorios y archivos en tu webroot.

si estan haciendo un header("midominio.com/otro.php"); a mi parecer es un error total, porque si el dia de mañana cambian de dominio tienen que modificar todo el codigo, a parte de muchas cuestiones mas.

entonces para eso redireccionan directamente al archivo asi:

Código PHP:
Ver original
  1. header("otro.php"); // En el caso de que este al mismo nivel del archivo en donde definen esta sentencia

se entiende??
__________________
Si todo fuera tan sencillo como un symfony cc la vida seria más fácil.
http://phpnico.wordpress.com
  #7 (permalink)  
Antiguo 18/04/2012, 09:59
 
Fecha de Ingreso: agosto-2010
Mensajes: 177
Antigüedad: 14 años, 3 meses
Puntos: 5
Respuesta: elemental session

Veremos que nos contesta, Saludos.
  #8 (permalink)  
Antiguo 18/04/2012, 10:04
Avatar de linuxzero  
Fecha de Ingreso: noviembre-2011
Ubicación: Argentina
Mensajes: 778
Antigüedad: 13 años
Puntos: 160
Respuesta: elemental session

Cita:
Iniciado por custus1 Ver Mensaje
Veremos que nos contesta, Saludos.
Igual era una critica constructiva para vos...
__________________
Si todo fuera tan sencillo como un symfony cc la vida seria más fácil.
http://phpnico.wordpress.com
  #9 (permalink)  
Antiguo 18/04/2012, 10:17
 
Fecha de Ingreso: agosto-2010
Mensajes: 177
Antigüedad: 14 años, 3 meses
Puntos: 5
Respuesta: elemental session

Si, si totalemente, igual en mi caso no usaba el reenvio con el header, era otra la situacion, pero es lo unico que se me ocurre que le puede estar sucediendo, Saludos.

Cita:
Iniciado por linuxzero Ver Mensaje
Igual era una critica constructiva para vos...

Etiquetas: elemental, html, mysql, session, variables, usuarios
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:25.