Ver Mensaje Individual
  #3 (permalink)  
Antiguo 29/04/2011, 11:04
ocp001a
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 16 años
Puntos: 528
Respuesta: Variables $_SESSION pierden el valor

A simple vista y aunque parece que tienes más lineas que hacen ciertas cosas, creo que haces muchas cosas de más.
Desde que recorres la base de datos ya podrías generar los gráficos sin pasar los campos a arreglos.
Ya que lo haces así, al recorrer los arreglos podrías generar los graficos sin pasarlos a variables de sesión.

Supongo que los gráficos los generas con otro while, manejando las variables de sesión, de ser así, ahí está el problema. Las variables de sesión las sobreescribes 10 veces, y se quedan desde luego con el último valor que les da el while. Si necesitas las variables de sesión por que estás pasando dichos valores a otro script, tendrías que hacer algo como esto:


Código PHP:
Ver original
  1. mysql_select_db("monitoreo");
  2. $result= mysql_query ("SELECT variable1, variable2, variable3, variable4  FROM tabla");
  3. while ($row=mysql_fetch_array($result, MYSQL_BOTH))
  4.       {
  5.        $_SESSION["a"][]= $row["variable1"];
  6.        $_SESSION["b"][]= $row["variable2"];
  7.        $_SESSION["c2"][]= $row["variable3"];
  8.        $_SESSION["d"][]= $row["variable4"];
  9.        }
luego recorrer las variables de sesion:

Código PHP:
Ver original
  1. while ($i<10)
  2.      {
  3.     //Almaceno en las variables $_SESSION el valor de las consultas de la BDD
  4.        $a=$_SESSION["a"][$i];
  5.        $b=$_SESSION["b"][$i];
  6.        $c2=$_SESSION["c2"][$i];
  7.        $d=$_SESSION["d"][$i];
  8.  
  9.       //Mando a imprimir un gráfico haciendo uso de los datos de las SESSION anteriores
  10.        echo '<img src="barra1.php" alt="" border="0" width: 2000px;>';
  11.        //Donde barra1.php es el script que contiene el codigo para generar cada  grafica de JpGraph, el cual funciona perfectamente y recibe a las variables $_SESSION.
  12.        
  13.         $i++;//Ya deberías conocer esta instrucción más simple
  14.       }  
  15.  
  16. //o bien mediante un foreach
  17.  
  18. foreach($_SESSION["a"] as $indice =>$valor){
  19.       $a=$valor;
  20.       $b=$_SESSION["b"][$indice];
  21.       $c2=$_SESSION["c2"][$indice];
  22.       $d=$_SESSION["d"][$indice];
  23.       //Mando a imprimir un gráfico haciendo uso de los datos de las SESSION anteriores
  24.        echo '<img src="barra1.php" alt="" border="0" width: 2000px;>';
  25.        //Donde barra1.php es el script que contiene el codigo para generar cada  grafica de JpGraph, el cual funciona perfectamente y recibe a las variables $_SESSION.
  26. }