Sv Community El Salvador
Soporte y Tecnología => Programación => Web => Mensaje iniciado por: tekun en abril 08, 2016, 12:33:28 pm
-
hey manes necesito una ayuda...
tengo un php
$sql = "SELECT * FROM test_chart ";
$query = $pdo->prepare($sql);
$query->execute();
$list = $query->fetchAll(PDO::FETCH_ASSOC);
con un resultado así:
NOMBRE FECHA SALDO
chalate enero2016 200
chulton enero2016 300
sivar enero2016 500
chalate febrero2016 75
chulton febrero2016 83
sivar febrero2016 90
y lo necesito pasar a un ARRAY asi
arr = [nombre, saldo1, saldo2, ... saldoN];
o sea:
arr = [chalate, 200, 75];
luego el otro
arr = [sivar, 500, 90];
ya intente varias bukles y neles... me doy
les pongo mi ejemplo desde el PHP por si me pueden sugerir algo desde ese punto, porque lo pense también..
gracias por su tiempo
-
pone un print_r($list); quiero ver la estructura exacta de como te llega.
-
(http://i.imgur.com/KoskXNp.jpg)
para bajo se repiten
UPDATE:
con esto hago algo parecido, pero los array no agrupa las entidad_descripción, sino que los hace para vertical no horizontal
var chartData = [];
jQuery.each( arr, function( i, val ) {
arr = [val.entidad_descripcion, val.costo_adquisicion];
chartData.push(arr)
});
-
(http://i.imgur.com/KoskXNp.jpg)
para bajo se repiten
puesi pero esos datos tabulados que has puesto pueden venir formateados de varias formas!
yo lo que asumo es que cada linea es un array que dice nombre=>chalate, fecha=>xxxx saldo=>$$$$ ?
-
asumiendo lo siguiente:
1. la estructura original que tenes es como yo asumi
2.te vale verga perder el valor de la fecha, el codigo queda asi:
$resultado=array();
foreach($list as $dato){
if(isset($resultado[$dato['nombre']]) ){
array_push($resultado[$dato['nombre']],$dato['saldo']);
}
else {
$resultado[$dato['nombre']]=array($dato['saldo']);
}
}
nota como separe el valor del saldo del nombre, nunca hagas esos arrays asi de desordenados.
-
excelente!
solo que como soy medio dundo, estaba intentando pegar tu codigo en JS jajajajaajaj pouta como cuesta con el sector maquilero vea jajajaajaj
na mas lo parsie en php
$resultado=array();
foreach ($list as $query) {
if(isset($resultado[$query['entidad_descripcion']]) ){
array_push($resultado[$query['entidad_descripcion']],$query['costo_adquisicion']);
}
else {
$resultado[$query['entidad_descripcion']]=array($query['costo_adquisicion']);
}
}
$json=json_encode($resultado);
echo $json;
y lo parsie devuelta en js y listo!
var arr = JSON.parse(data);
chart.load({
json: arr
});
graficos shulos gracias a https://d3js.org/
nota como separe el valor del saldo del nombre, nunca hagas esos arrays asi de desordenados.
a que te referís?
-
(https://pbs.twimg.com/media/BvM6k2LCEAAeZkd.jpg)
a que te referís?
que vos querias dentro de un array sin nombre, el nombre y los valores dentro del mismo array cuando lo correcto era el nombre del lugar y el array los valores numericos por separado
-
ahhhh aguevo... en mi primer respuesta puse el codigo que dizque corregia ese problema
-
graficos shulos gracias a https://d3js.org/
Hey esto me llamo la atencion, lo leere un poco es posible ocupe algo asi en el futuro :thumbsup:
-
seee son palomada los gráficos con esa librería