Foros del Web » Programando para Internet » PHP »

Pierdo el valor de la variable de session

Estas en el tema de Pierdo el valor de la variable de session en el foro de PHP en Foros del Web. Buenos dias! les comento mi problema! Tengo un archivo que levanta la session de un usuario y guarda el id ($_session['idUser'];) , ese archivo esta ...
  #1 (permalink)  
Antiguo 17/06/2011, 13:22
 
Fecha de Ingreso: julio-2009
Ubicación: Argentina!
Mensajes: 324
Antigüedad: 15 años, 3 meses
Puntos: 4
Pierdo el valor de la variable de session

Buenos dias! les comento mi problema! Tengo un archivo que levanta la session de un usuario y guarda el id ($_session['idUser'];), ese archivo esta en ej: http://localhost/www/principal/index.php, luego, incluyo una paginade esta forma: include_once('gest/mod/h/mod.php') que recupera esa variable de session, luego, ese mismo archivo incluye otros tantos de la siguiente forma: include_once('mods/n/neo.php'); aca vuelvo a pedir la variable de session, pero el problema es que si lo pongo en el localhost funciona perfectamente, pero cuando lo subo al servidor no funciona! se pierde en algun momento la variable!

alguno tiene idea de que puede ser? Desde ya muchas gracias.
  #2 (permalink)  
Antiguo 17/06/2011, 13:26
Avatar de Nano_  
Fecha de Ingreso: febrero-2006
Ubicación: Bogotá, Colombia
Mensajes: 1.866
Antigüedad: 18 años, 9 meses
Puntos: 96
Respuesta: Pierdo el valor de la variable de session

Saludos

Podrias postear parte del codigo donde creas la session y donde recupera su valor en las otras paginas
__________________
:.:Nano.:: @nano_hard - Retornando al foro
  #3 (permalink)  
Antiguo 17/06/2011, 13:27
 
Fecha de Ingreso: abril-2008
Mensajes: 435
Antigüedad: 16 años, 6 meses
Puntos: 10
Respuesta: Pierdo el valor de la variable de session

empieza a poner print_r para ver donde se pierde la session, tambien habilita los errores, seguro es algo que no esta mostrando el php.ini

saludos
  #4 (permalink)  
Antiguo 17/06/2011, 13:32
Avatar de jotaincubus  
Fecha de Ingreso: mayo-2005
Ubicación: Medellin - Colombia
Mensajes: 1.797
Antigüedad: 19 años, 6 meses
Puntos: 394
Respuesta: Pierdo el valor de la variable de session

estas usando session_start() en las paginas donde pides la variable ?
__________________
Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ???
  #5 (permalink)  
Antiguo 17/06/2011, 13:39
 
Fecha de Ingreso: julio-2009
Ubicación: Argentina!
Mensajes: 324
Antigüedad: 15 años, 3 meses
Puntos: 4
Respuesta: Pierdo el valor de la variable de session

creo de esta forma la session

archivo
http://localhost/www/principal/index.php

despues del formulario, por ajax hago el registro que llama a una funcion de un archivo que
esta en
http://localhost/www/principal/index...sh/cl/site.php

y la creo de esta forma
$_SESSION["idUser"]=$idKey ;

y en las otras paginas como por ejemplo esta:
include_once('mods/n/neo.php');

la recupero de la siguiente forma
$asd=$_session['idUser'];

Desde ya muchas gracias por interesarse en el tema!
  #6 (permalink)  
Antiguo 17/06/2011, 13:41
 
Fecha de Ingreso: julio-2009
Ubicación: Argentina!
Mensajes: 324
Antigüedad: 15 años, 3 meses
Puntos: 4
Respuesta: Pierdo el valor de la variable de session

Cita:
Iniciado por jotaincubus Ver Mensaje
estas usando session_start() en las paginas donde pides la variable ?
Ya esta encendido por defecto :(
  #7 (permalink)  
Antiguo 17/06/2011, 13:45
 
Fecha de Ingreso: abril-2008
Mensajes: 435
Antigüedad: 16 años, 6 meses
Puntos: 10
Respuesta: Pierdo el valor de la variable de session

siempre se usa session start, seguramente es un framework y esta oculto en alguno de los objetos que hay por ahi.....

ahora pregunto deberias debuggear la aplicacion y ver donde se pierde el codigo, o sino pon el codigo

saludos
  #8 (permalink)  
Antiguo 17/06/2011, 13:47
Avatar de jotaincubus  
Fecha de Ingreso: mayo-2005
Ubicación: Medellin - Colombia
Mensajes: 1.797
Antigüedad: 19 años, 6 meses
Puntos: 394
Respuesta: Pierdo el valor de la variable de session

? por defecto ? amigo asi las TENGAS ON en todas partes para trabajar con sesiones en tus paginas web debes utilizar session_start() en la primera linea de cada una.

Eso de están encendidas por defecto no tiene nada que ver. Por favor busca acerca de sesiones para que entiendas lo que te estoy preguntando.
__________________
Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ???
  #9 (permalink)  
Antiguo 17/06/2011, 13:58
 
Fecha de Ingreso: julio-2009
Ubicación: Argentina!
Mensajes: 324
Antigüedad: 15 años, 3 meses
Puntos: 4
Respuesta: Pierdo el valor de la variable de session

Osea, yo siempre use session_start() al inicio de todas las aplicaciones que hice, ahora, esta metodologia de trabajo la tengo que utilizar porque asi lo utilizan en mi trabajo, no se si saltara algun error o algo, les muesto esto que puede ser tambien que este molestando:

asi lo tengo en el hosting
Directive Local Value Master Value
session.auto_start On Off

y asi en mi localhost
Directive Local Value Master Value
session.auto_start On On

puede ser que por eso no funcione?
  #10 (permalink)  
Antiguo 17/06/2011, 14:18
 
Fecha de Ingreso: abril-2008
Mensajes: 435
Antigüedad: 16 años, 6 meses
Puntos: 10
Respuesta: Pierdo el valor de la variable de session

pues......es eso
  #11 (permalink)  
Antiguo 21/06/2011, 06:59
 
Fecha de Ingreso: julio-2009
Ubicación: Argentina!
Mensajes: 324
Antigüedad: 15 años, 3 meses
Puntos: 4
Respuesta: Pierdo el valor de la variable de session

mmmm, lamentablemente no es eso! le agregue el session_start y me sale este notice:


Código PHP:
Ver original
  1. Notice: A session had already been started - ignoring session_start()

mmm y es el unico session_start() de la pagina, y no hay nada antes del mismo, solo <?php session_start(); ?>


que otra cosa puede ser? que necesitarian saber como para poder resolver este problema?

Desde ya muchas gracias a todos los que han respondido en este post y los que han mirado el mismo!
  #12 (permalink)  
Antiguo 21/06/2011, 07:23
Avatar de solhdeck  
Fecha de Ingreso: junio-2011
Mensajes: 87
Antigüedad: 13 años, 5 meses
Puntos: 32
Respuesta: Pierdo el valor de la variable de session

A mi lo único que se me ocurre es algo del host donde subes la web, que no tenga habilitada la sesión o que tenga algo diferente a tu localhost.

Comprueba con el phpinfo(); las diferencias entre tu configuración de PHP y la de tu host, y empieza a trabajar por ahí.
  #13 (permalink)  
Antiguo 21/06/2011, 07:34
 
Fecha de Ingreso: julio-2009
Ubicación: Argentina!
Mensajes: 324
Antigüedad: 15 años, 3 meses
Puntos: 4
Respuesta: Pierdo el valor de la variable de session

Gracias solhdeck por la respuesta, te comento que sobre el phpinfo() hice hace unos dias una comparacion, sobre todo en la parte de session, y la diferencia que vi y la cual me llamo la atencion fue esta:

asi lo tengo en el hosting
Directive --------------------- Local Value --------------------Master Value
session.auto_start ---------------On------------------------------- Off

asi en mi localhost
Directive --------------------- Local Value --------------------Master Value
session.auto_start ---------------On------------------------------- On

Apuesto todas mis fichas a que es eso, pero cuando voy al php.ini de mi localhost solo esta el valor 1 que supuestamente activa los dos valores (LocalValue y MasterValue)

En el hosting no creo poder tener la posibilidad de modificar el php.ini, hay alguna forma, con php, de forzar esa variable a 1? o que deberia hacer para poner las dos en On?

Desde ya muchas gracias.!
  #14 (permalink)  
Antiguo 21/06/2011, 07:52
Avatar de solhdeck  
Fecha de Ingreso: junio-2011
Mensajes: 87
Antigüedad: 13 años, 5 meses
Puntos: 32
Respuesta: Pierdo el valor de la variable de session

No, pero creo que la solución te la han dado antes:

Pon al inicio del archivo que tiene todos los includes un session_start();

El error de ignorar el session_start te aparecerá en local, pero es imprescindible que lo pongas para cuando subas los archivos al host.

Al menos eso es lo que interpreto
  #15 (permalink)  
Antiguo 21/06/2011, 07:56
 
Fecha de Ingreso: julio-2009
Ubicación: Argentina!
Mensajes: 324
Antigüedad: 15 años, 3 meses
Puntos: 4
Respuesta: Pierdo el valor de la variable de session

es que el error del notice del session start me lo da cuando lo subo al servidor! no en mi localhost.

Estoy al horno?
  #16 (permalink)  
Antiguo 21/06/2011, 14:15
 
Fecha de Ingreso: julio-2009
Ubicación: Argentina!
Mensajes: 324
Antigüedad: 15 años, 3 meses
Puntos: 4
Respuesta: Pierdo el valor de la variable de session

Bueno, ya empeze a descartar un par de cositas! y ahora veo que se me pierde la session cuando llamo a la funcion load();
Código Javascript:
Ver original
  1. function load()
  2. {
  3.      var d=new Date();
  4.      $('#result').load(dir+'gest/mod/h/mod.php?cache='+d.getTime());
  5. }

En el mod.php rescato la variable de session de esta forma
$asd=$_session['idUser'];



El tema es que cuando hago include de los modulos me pasa la variable, pero cuando
la llamo con la funcion load que utiliza el .load de javascript no me toma la variable de session! y no quiero mandarle el id del usuario por javascript ya que se puede ver y se puede modificar, si modifican ese id puede ver el contenido de los modulos de los demas usuarios y ademas los pueden editar :S

Alguna idea!?

Un Abrazo
  #17 (permalink)  
Antiguo 22/06/2011, 06:37
 
Fecha de Ingreso: julio-2009
Ubicación: Argentina!
Mensajes: 324
Antigüedad: 15 años, 3 meses
Puntos: 4
Respuesta: Pierdo el valor de la variable de session

Ya que no puedo solucionar esto (Por el momento) estaba pensando en "mentirlo" un poco jaja! mi idea es que cuando el usuario entra a la pagina en cuestion (No cuando se loguea, sino cuando entra a visualizar sus modulos, se genere un key alfanumerica aleatoria que se guarda en bd, luego, esa misma clave la paso como parametro a la pagina en la que se pierde la session junto con el id del perfil de esta persona (asi me ahorro buscar en toda mi bd, ya que tengo separadas las categorias por perfiles).

Otra cosa que tenia pensada era la de ensuciar el UserId, pero la verdad me gusto mas la otra idea, porque ensuciando el id puede llegar a no ser tan confiable (asi lo veo yo) ya que con un par de pruebas pueden descubrir el verdadero id! (sacando pares de numeros, o de a 3 numeros o mas.

Bueno, me gustaria saber que piensan los expertos aca! los que ya tienen años lidiando con estos problemas!

Les mando un abrazo!
  #18 (permalink)  
Antiguo 29/06/2011, 12:06
Avatar de solhdeck  
Fecha de Ingreso: junio-2011
Mensajes: 87
Antigüedad: 13 años, 5 meses
Puntos: 32
Respuesta: Pierdo el valor de la variable de session

Deberías explicar un poco más la página donde tienes el load()

¿Tienes al principio del documento el session_start();?
  #19 (permalink)  
Antiguo 04/07/2011, 08:58
 
Fecha de Ingreso: julio-2009
Ubicación: Argentina!
Mensajes: 324
Antigüedad: 15 años, 3 meses
Puntos: 4
Respuesta: Pierdo el valor de la variable de session

buenos dias!

El tema del session_start() ya lo explique mas arriba! cuando lo incluyo da ese error, segun un compañero de trabajo el session_start() ya no es necesario ponerlo ya que esta puesto en la pagina que hace la llamada a una de mis paginas, que esta, a su vez, llama a los modulos mediante javascript o jquery con el metodo .load(), lo que pienso ahora, es que el metodo .load no mantiene las sessiones abiertas! porque si incluyo el session_start(); dentro de las paginas que traigo con .load(), me sale el error que puse mas arriba.

No entiendo mas nada! un abrazo!

Etiquetas: include, include_once, pierde, session, variables
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 12:33.