Bonjour,
j'ai fait une requête PDO pour récupérer des données afin de faire un graph avec google chart interactive.
$connexion = new PDO('pgsql:host='.$PARAM_hote.';port='.$PARAM_port.';dbname='.$PARAM_nom_bd, $PARAM_utilisateur, $PARAM_mot_passe);
$sth = $connexion->prepare("SELECT val_canal, val_valeur FROM tbl_valeur_val");
$sth->execute();
print("Récupération de toutes les lignes d'un jeu de résultats PDO::FETCH_ASSOC:\n");
$result = $sth->fetchAll(PDO::FETCH_NUM);
var_dump($result);
echo json_encode($result);
or mon champ val_valeur étant un décimal, ça me le renvoie en string
array
0 =>
array
0 => int 1
1 => string '43.94' (length=5)
1 =>
array
0 => int 2
1 => string '2.75' (length=4)
ce qui me donne un json comme ça:
[1,"43.94"],[2,"2.75"],[3,"18.64"]]
et pour l'api google, il faut du numérique.
Comment don récupérer tout en numérique?
merci d'avance
oui mais c'est toute la "deuxième colonne" de mon tableau qui doit passer en numérique, ce n'est pas qu'une valeur!
N'est-il pas possible de sortir au même format que ce qui est stockée dans la base?
Bonjour, essaie de passer de PDO::FETCH_NUM à PDO::FETCH_ASSOC.
Je ne mit connait pas énormément, mais moi j'utilise sa : PDO::FETCH_ASSOC
le problème du FETCH_ASSOC c'est que ça me renvoi un JSON inexploitable du genre :
{"prm_id":1,"val_temperature":"44.0"},{"prm_id":1,"val_temperature":"44.2"},{"prm_id":1,"val_temperature":"43.9"},{"prm_id":1,"val_temperature":"44.3"},{"prm_id":1,"val_temperature":"44.3"}]
Et pour utiliser l'api google chart il me faut un JSON dans ce format là : [1,44.0],[1,44.2],[1,43.9],[1,44.3],[1,44.3]] soit un array php comme ça : array(array(1,44.0),array(1,44.2),array(1,43.9).....)
ça y est je suis venu à bout de mon problème
pour faire simple je mets le lien vers ma solution
http://www.developpez.net/forums/d1158462/php/php-sgbd/pdo/resultat-requete-pdo/
merci qd même :)