Foros del Web » Programando para Internet » PHP »

las variables de sesion no son persistentes

Estas en el tema de las variables de sesion no son persistentes en el foro de PHP en Foros del Web. tengo un problema con las sesiones, al loguearse el usuario se genera una variable de sesion que contiene su alias $_SESSION["usuario"] = $_GET["usuario"]; despues para ...
  #1 (permalink)  
Antiguo 28/07/2009, 20:16
 
Fecha de Ingreso: julio-2009
Mensajes: 3
Antigüedad: 14 años, 9 meses
Puntos: 0
las variables de sesion no son persistentes

tengo un problema con las sesiones, al loguearse el usuario se genera una variable de sesion que contiene su alias

$_SESSION["usuario"] = $_GET["usuario"];

despues para mostrar los datos del usuario hago uso de esa variable en otro archivo, para realizar una consulta a mysql

$buscar = mysql_query("select * from perfil where alias = '".$_SESSION["usuario"]."'",$conexion);

pero me sale el siguiente error

Notice: Undefined variable: _SESSION in D:\web\SECCIONES\estadisticas.php on line 6

el archivo que realiza la consulta es llamado mediante ajax

si alguien pudiera ayudar se lo agradeceria mucho.
  #2 (permalink)  
Antiguo 28/07/2009, 20:24
 
Fecha de Ingreso: enero-2009
Mensajes: 408
Antigüedad: 15 años, 3 meses
Puntos: 14
Respuesta: las variables de sesion no son persistentes

Hola , estas seguro que esta presente en el fichero estadisticas.php en la primera linea session_start(); , si no es asi ponlo , y por otro lado ajax lo unico que hace es transportar la salida y mostrarla en tu capa , no tiene nada que ver con el tema de las sesiones , va asi lo creo yo , si no es asi , pues que alguien me corrija , el funcionamiento de ajax es crear una transporter algo mas moderno , pero fijate si realmente es necesario ajax en tu web xq generalmente es un chiche solamente y no tiene mucha utilidad.

Saludos
  #3 (permalink)  
Antiguo 28/07/2009, 21:01
 
Fecha de Ingreso: julio-2009
Mensajes: 3
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: las variables de sesion no son persistentes (solucionado)

Me funciono poner session_star();, yo solo lo ponia al principio del index, pero al ponerlo al inicio de estadisticas.php reconocio las variables, no sabia que era necesario ponerlo al principio de los demas archivos, el ajax lo uso para evitar recargar la pagina, generalmente lo uso para evitar recargar la pagina completa, lo mencione por que no sabia si podia afectar a las sesiones.

gracias por la rapida respuesta.
  #4 (permalink)  
Antiguo 28/07/2009, 21:10
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: las variables de sesion no son persistentes

El session_start() se refiere a iniciar la sesión en el archivo, no se usa de forma "global" tienes que especificarlo por archivo.

Saludos.
  #5 (permalink)  
Antiguo 28/07/2009, 21:12
 
Fecha de Ingreso: enero-2009
Mensajes: 408
Antigüedad: 15 años, 3 meses
Puntos: 14
Respuesta: las variables de sesion no son persistentes

Solo algo más quiero agregar para poner un poco mas las cosas en claro para ti , en todos los ficheros php donde utilizes sesiones es OBLIGATORIO que la segunda linea del fichero es debajo del <?php y que que no haya ningun espacio en blanco entremmedio ni al final del cierre del tag ?> , de lo contrario te dara un error de header que te dira que no podes mandar nada antes de inicializar una sesion , el codigo que debes incluir en cada fichero .php que utilizes sesiones es session_start(); .

Por otro lado te has puesto a pensar que pasa si el usuario tiene deshabilitado ajax? , generalmente todos usan ajax para recargar la web sin cambiar de sitio , pero sinceramente a veces genera un posible bug o incompatibilidad por los navegadores y el js.

Por eso a la hora de implementar ajax tiene que estar muy bien pensando que funcion cumplira y si es una funcion util o un chiche.

Saludos
  #6 (permalink)  
Antiguo 28/07/2009, 21:27
 
Fecha de Ingreso: julio-2009
Mensajes: 3
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: las variables de sesion no son persistentes

gracias por el consejo, lo voy a tomar en cuenta, supongo que puedo dar algun aviso si no tiene activado el js, con el tag <noscript>, ya que los efectos que pongo no se verian bien sin ajax.

y gracias por la informacion de php, estaba atorado con eso
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 05:35.