Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] variable global $SESSION[] de session_start() y no pasa de un php a otro

Estas en el tema de variable global $SESSION[] de session_start() y no pasa de un php a otro en el foro de PHP en Foros del Web. Hola, en validacion.php tengo esto: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código PHP: Ver original ... if ( mysql_result ( $peticion , 0 ) ) {       ...
  #1 (permalink)  
Antiguo 08/05/2013, 04:53
 
Fecha de Ingreso: abril-2013
Mensajes: 6
Antigüedad: 11 años
Puntos: 0
variable global $SESSION[] de session_start() y no pasa de un php a otro

Hola, en validacion.php tengo esto:

Código PHP:
Ver original
  1. ...
  2. if(mysql_result($peticion,0))
  3. {              
  4.     /* inicio de sesión, control del usuario que inicia la sesión */
  5.         session_start();
  6.     if (!isset($_SESSION["usuario_activo"]))
  7.         {
  8.            $_SESSION["usuario_activo"] = $usuario;
  9.     }        
  10.         /* lanzar página de introducción de datos */
  11.     echo '<script>location="introdatos.php";</script>';                
  12. }
y en introdatos.php esto otro:
Código PHP:
Ver original
  1. ...
  2. <script>       
  3.     var user_activo = <?php echo '$_SESSION["usuario_activo"]';?>;     
  4.     $('#pie').html = user_activo;
  5.         ...
  6. </script>
Pretendo poner en el div id=pie de introdatos.php el nombre del usuario que inició la sesión.
El usuario está en una tabla de una base de datos de mySQL.

Me da el siguiente error:
Undefined variable: _SESSION in C:\WebServer\...\introdatos.php on line 3 (el número de línea está cambiado para que esté más claro aquí)

Entiendo que, pese a ser una variable global de php, $SESSION no pasa a introdatos.php y por eso no la puedo usar en javascript.

Tengo dos dudas diferentes: ¿Por qué no se pasa la variable $SESSION, si es global? Y, ¿Es correcta la forma de asignar la variable php a una variable javascript?

Gracias.
  #2 (permalink)  
Antiguo 08/05/2013, 05:59
Avatar de repara2  
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 13 años, 7 meses
Puntos: 331
Respuesta: variable global $SESSION[] de session_start() y no pasa de un php a otro

El array SESSION sólo estará disponible una vez que se llame a session_start();
Tienes que invocar la función en cada script donde quieras leer las variables de session.
Salu2
__________________
Fere libenter homines, id quod volunt, credunt.
  #3 (permalink)  
Antiguo 08/05/2013, 11:16
 
Fecha de Ingreso: abril-2013
Mensajes: 6
Antigüedad: 11 años
Puntos: 0
Respuesta: variable global $SESSION[] de session_start() y no pasa de un php a otro

Muchas gracias por tu rápida respuesta, al final esa era la solución, pero poniendo session_star() AL PRINCIPIO del script php. Es decir así:

<?php
session_start()

... código php
?>

<script>
var variable_javascript ="<?php echo $_SESSION['variable_php']; ?>" //asignar el valor de una variable php a una variable javascript

... código javascript
</script>


Gracias y saludos.

Última edición por bucanero72; 09/05/2013 a las 05:29

Etiquetas: distintos, ficheros, html, mysql, sql, tabla
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 11:38.