Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/05/2013, 02:19
angahision
 
Fecha de Ingreso: mayo-2013
Ubicación: Mostoles
Mensajes: 4
Antigüedad: 11 años
Puntos: 0
Problema con arrays asociativos/dinamicos

Hola a todos,
en primer lugar indicar que soy nuevo por estos lares y aunque llevo mucho tiempo consultado el foro, nunca me había animado a postear algo, ya que casi siempre encontraba solución a mis problemillas con php ^^ (sois unos maquinas )

En fin, el caso que me tiene atascado es que intento genear unos graficos con la API de GoogChart, pero a la hora de recuperar los datos de una bbdd en mysql, soy incapaz de montar el segundo sub array. Se donde está el problema y he probado muchas variantes que he encontrado tanto en este foro, como en otras web, pero no consigo solventarlo. Os pego el codigo:

Código PHP:
<?php
    
function mostrarMatriz($tabla,$campoCondicional,$campoValor)
    {
           include (
"../properties/dbData.php");
        include (
"../sql/conndb.php");
        
$tablahtmlspecialchars($tabla);
        
$campoCondicionalhtmlspecialchars($campoCondicional);
        
$campoValorhtmlspecialchars($campoValor);
        if( 
$campoCondicional !="" && $campoValor !="")
        {
            
$Condicional "WHERE $campoCondicional = '$campoValor' "
        }
        
$sql"SELECT * FROM $tabla $Condicional";
        
$matriz_db mysql_query($sql$conn) or die(mysql_error());
        for(
$i=0;$filamysql_fetch_assoc($matriz_db); $i++)
        { 
            for(
$a0;$a<mysql_num_fields($matriz_db);$a++)
            {
                
$campo mysql_field_name($matriz_db,$a);
                
$retorno[$i][$campo] = $fila[$campo];
            }
        };
        
mysql_close($conn);
        return 
$retorno;
    }
    function 
subMatriz($jca)
    {
        array
        (
            for(
$i=0; isset($jca[$i]) != null$i++)
            {
                
$jca[$i]['chtime'] => $jca[$i]['chnc']
            }
        ),
    }
    
$chfecha "01/04/2013";
    
$matrizJca2302 mostrarMatriz('tbl_conhost','chport','JCA_2302');
    
$matrizJca2002 mostrarMatriz('tbl_conhost','chport','JCA_2002');
        include( 
"./GoogChart.class.php");
    
$chart = new GoogChart( );
    
$color = array( '#ff0000''#00ff00''#0000ff',);
    
$dataTimeline = array
    ( 
        
'JCA_2002' => subMatriz($matrizJca2002),
        
'JCA_2302' => subMatriz($matrizJca2302),
    );
    
$chart->setChartAttrs( array(
        
'type' => 'sparkline',
        
'title' => $chfecha,
        
'data' => $dataTimeline,
        
'size' => array( 850300 ),
        
'color' => $color,
        
'labelsXY' => true,
        
'fill' => array( '#ffffff'),
    ));
    echo 
$chart;
?>
Obviamente esto provoca un error sintactico:

Código:
[Fri May 03 10:07:29 2013] [error] [client 127.0.0.1] PHP Parse error:  syntax error, unexpected T_FOR, expecting ')' in /var/www/apps/tags/graphsModule/graph.php on line 30
Pero creo que sirve para indicaros cual es mi intención para montar el segundo array, aunque no soy capaz de encontrar una forma de hacerlo, espero que a alguno de vosotros si ^^

Muchas gracias por adelantado

Última edición por angahision; 03/05/2013 a las 02:46 Razón: Corrección ortográfica