Bonjour,

J'ai un petit souci.
Je veux en PHP5 récupérer un contenu d'une requete en json.
Mon code est :
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
      }
?>
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
 
{"clients":[
{"nom":"hanks","prenom":"tom"},
{"nom":"jolie","prenom":"angelina"}
]}
Quand je la teste, j'ai cette erreur :

{"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.