-2

我有这段代码(JS + PHP)

        { x: new Date(2012, 1, 1, <?php echo $i - 1; ?>), y: <?php echo $invertir[$i]; $i++; ?> },
        { x: new Date(2012, 1, 1, <?php echo $i - 1; ?>), y: <?php echo $invertir[$i]; $i++; ?> },
        { x: new Date(2012, 1, 1, <?php echo $i - 1; ?>), y: <?php echo $invertir[$i]; $i++; ?> },
        { x: new Date(2012, 1, 1, <?php echo $i - 1; ?>), y: <?php echo $invertir[$i]; $i++; ?> },
        { x: new Date(2012, 1, 1, <?php echo $i - 1; ?>), y: <?php echo $invertir[$i]; $i++; ?> },
        { x: new Date(2012, 1, 1, <?php echo $i - 1; ?>), y: <?php echo $invertir[$i]; $i++; ?> },
        { x: new Date(2012, 1, 1, <?php echo $i - 1; ?>), y: <?php echo $invertir[$i]; $i++; ?> },
        { x: new Date(2012, 1, 1, <?php echo $i - 1; ?>), y: <?php echo $invertir[$i]; $i++; ?> },
        { x: new Date(2012, 1, 1, <?php echo $i - 1; ?>), y: <?php echo $invertir[$i]; $i++; ?> },
        { x: new Date(2012, 1, 1, <?php echo $i - 1; ?>), y: <?php echo $invertir[$i]; $i++; ?> },
        { x: new Date(2012, 1, 1, <?php echo $i - 1; ?>), y: <?php echo $invertir[$i]; $i++; ?> },
        { x: new Date(2012, 1, 1, <?php echo $i - 1; ?>), y: <?php echo $invertir[$i]; $i++; ?> },
        { x: new Date(2012, 1, 1, <?php echo $i - 1; ?>), y: <?php echo $invertir[$i]; $i++; ?> },
        { x: new Date(2012, 1, 1, <?php echo $i - 1; ?>), y: <?php echo $invertir[$i]; $i++; ?> },
        { x: new Date(2012, 1, 1, <?php echo $i - 1; ?>), y: <?php echo $invertir[$i]; $i++; ?> },
        { x: new Date(2012, 1, 1, <?php echo $i - 1; ?>), y: <?php echo $invertir[$i]; $i++; ?> },
        { x: new Date(2012, 1, 1, <?php echo $i - 1; ?>), y: <?php echo $invertir[$i]; $i++; ?> },
        { x: new Date(2012, 1, 1, <?php echo $i - 1; ?>), y: <?php echo $invertir[$i]; $i++; ?> },
        { x: new Date(2012, 1, 1, <?php echo $i - 1; ?>), y: <?php echo $invertir[$i]; $i++; ?> },
        { x: new Date(2012, 1, 1, <?php echo $i - 1; ?>), y: <?php echo $invertir[$i]; $i++; ?> },
        { x: new Date(2012, 1, 1, <?php echo $i - 1; ?>), y: <?php echo $invertir[$i]; $i++; ?> },
        { x: new Date(2012, 1, 1, <?php echo $i - 1; ?>), y: <?php echo $invertir[$i]; $i++; ?> }

所有的行都是平等的,除了最后一个,这没有“,”

我需要循环这段代码,但 for 循环不起作用,我试试这个,但不起作用:

for(var j = 0; j <= 20; j++)
    { x: new Date(2012, 1, 1, <?php echo $i - 1; ?>), y: <?php echo $invertir[$i]; $i++; ?> },
{ x: new Date(2012, 1, 1, <?php echo $i - 1; ?>), y: <?php echo $invertir[$i]; $i++; ?> }

任何想法?谢谢

4

1 回答 1

1

正如评论中所说,尝试手动强制创建包含数据的数组是一种不好的方法。因为你使用 MySQL,你可以尝试这样的事情:

// Creamos una array vacía

$myDataPoints = array();

// Usa la siguiente variable $conexion...

$conexion = mysqli_connect("tuIP","tuUser","tuPassword","tuDB");

// o adapta la siguiente línea con la variable previamente creada por ti

$rawData = mysqli_query($conexion, "SELECT * FROM tablaConDatos");

// Ejecutamos el Loop para cada línea de resultados de la consulta 

while($row = mysqli_fetch_array($rawData))
{

/* Calculamos la fecha. En tu ejemplo, parece que sólo quieres variar la hora
sustrayendo 1 hora a cada número de línea. Este método sólo funciona si tu
tabla de datos tiene menos de 25 líneas */

$fecha = date(DATE_ATOM, mktime($row - 1, 0, 0, 1, 1, 2012));

// Creamos el objeto... 

$point = array("x" => $fecha , "y" => $row['invertir']);

// ... y lo mandamos al array 

array_push($myDataPoints, $point);

echo 'var myDataPoints = '.json_encode($myDataPoints).';';

}

这种方法会生成一个 JSON 数组 (myDataPoints),您可以在正常的 canvasjs 调用中轻松使用它:

var chart = new CanvasJS.Chart("chartContainer", {
                    data: [
                        {
                            dataPoints: myDataPoints
                        }
                    ]
                }); 
于 2015-03-14T11:37:56.090 回答