tengo el siguiente código en PHP:
$output = '';
$output .= 'values: [{ ';
$output .= 'arg: "N", ';
$output .= 'val1: '.round($Val1N / $rowCount,2).', ';
$output .= 'val2: '.round($Val2N / $rowCount,2).', ';
$output .= 'val3: '.round($Val3N / $rowCount,2).', ';
$output .= 'val4: '.round($Val4N / $rowCount,2).', ';
$output .= 'val5: '.round($Val5N / $rowCount,2).', ';
$output .= 'val6: '.round($Val6N / $rowCount,2).', ';
$output .= 'val7: '.round($Val7N / $rowCount,2).', ';
$output .= 'val8: '.round($Val8N / $rowCount,2).' }, {';
$output .= 'arg: "NNE", ';
$output .= 'val1: '.round($Val1NNE / $rowCount,2).', ';
$output .= 'val2: '.round($Val2NNE / $rowCount,2).', ';
$output .= 'val3: '.round($Val3NNE / $rowCount,2).', ';
$output .= 'val4: '.round($Val4NNE / $rowCount,2).', ';
$output .= 'val5: '.round($Val5NNE / $rowCount,2).', ';
$output .= 'val6: '.round($Val6NNE / $rowCount,2).', ';
$output .= 'val7: '.round($Val7NNE / $rowCount,2).', ';
$output .= 'val8: '.round($Val8NNE / $rowCount,2).' }]';
echo json_encode($output);
Que me genera unos valores previamente calculados, hasta aquí todo correcto, el problema viene al devolver con echo este array de Objetos, utilizo ajax con el siguiente código :
$.ajax({
url:'process.php',
method:"POST",
data:{a:a, b:b, c:c},
success:function(data)
{
var response = JSON.parse(data);
funcion_cargar(response);
El problema viene cuando devuelvo los valores pero utilizando console.info(response) parece que en formato String, en cualquier caso no de la forma que los necesito. Funciona correctamente si creo una variable en la página principal de la siguiente forma:
var response =
[{values:
[{arg: "N",
val1: 0,
val2: 0.01,
val3: 0,
val4: 0,
val5: 0,
val6: 0,
val7:0,
val8: 0}, {
arg: "NNE",
val1: 0,
val2: 0.01,
val3: 0,
val4: 0,
val5: 0,
val6: 0,
val7: 0,
val8: 0
}]}];
Decir que la función que utiliza los valores en la página principal utiliza los valores de esta forma
funcion_cargar(response){
...
dataSource: response[0].values,
...
}
'values: [{ ';
? donde cierras eso ?