Bonjour,
J'ai un petit souci.
Je veux en PHP5 récupérer un contenu d'une requete en json.
Mon code est :
tout cela pour construire un résultat en json de la sorte :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51 <?php include ("bd/ConnectBD.inc.php"); $idcom = connex_objet("ecoconsobd","ConnectBD"); //Création et envoi de la requête SQL $requeteSQL="SELECT NOM,PRENOM FROM client"; $result = $idcom->query($requeteSQL); if (!$result){ echo $idcom->errno; echo $idcom->error; echo "erreur : $idcom->error"; echo "lecture imposible"; } else { //init des variables $debut = true; $nbColonnes= $result ->field_count; $nblig = $result -> num_rows; $nomColonne = $result -> fetch_field(); echo "{\"clients\":[";//début de l'objet client et du tableau des résultats //test si il y a des résultats if ($nblig){ //boucle sur les différentes lignes de résultats while ($row = $result ->fetch_row()) { //gestion de l'accolade du début if ($debut){ echo "{"; $debut = false; } else { echo ",{"; } for($j=0;$j<$nbColonnes;$j++){ //foreach ($nomColonne as $j){ //$nomColonne=mysql_field_name($result,$j); //$colonne = $result -> fetch_object(); echo "\"".$nomColonne->name."\":\"". utf8_encode($row[$nomColonne])."\""; if ($j != $nbColonnes-1) echo ","; //conditionne la virgule la dernière colonne }//fin du for echo "}"; }//fin du while }//fin du if //------- echo "]}";//cloture le tableau et l'objet } ?>
Quand je la teste, j'ai cette erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 {"clients":[ {"nom":"hanks","prenom":"tom"}, {"nom":"jolie","prenom":"angelina"} ]}
{"clients":[{
Warning: Illegal offset type in C:\wamp\www\ecotarif\test_req_json.php on line 39
"NOM":"",
Warning: Illegal offset type in C:\wamp\www\ecotarif\test_req_json.php on line 39
"NOM":""},{
Warning: Illegal offset type in C:\wamp\www\ecotarif\test_req_json.php on line 39
"NOM":"",
Warning: Illegal offset type in C:\wamp\www\ecotarif\test_req_json.php on line 39
"NOM":""}]}
s'il vous plait, je n'arrive pas à trouver comment le faire.
merci d'avance.
Partager