Simple Ajax Jquery script Comment puis-je obtenir de l'information pour chacune des lignes de la table?

Je suis un simple ajax>php>mysql exemple posté ici http://openenergymonitor.org/emon/node/107

Je peut afficher uniquement les informations de la première ligne.
Ma table est définie comme

--------------
|  id  | name|
--------------
| 1    | Pat |
| 2    | Joe |
| 3    | Rob |
--------------

Le code php

 $result = mysql_query("SELECT * FROM $tableName");          //query
 $array = mysql_fetch_row($result);                          //fetch result  
 echo json_encode($array);

Le script

$(function () 
  {
    $.ajax({                                      
      url: 'api.php', data: "", dataType: 'json',  success: function(data)        
      { 
        var id = data[0];              //get id
        var vname = data[1];           //get name
         $('#output').html("<b>id: </b>"+id+"<b> name: </b>"+vname); 
      } 
    });
  }); 

LIGNE 1

Si je mets de la var id = data[0]; j'obtiens la valeur 1.
Si je mets de la var name = data[1]; - je obtenir Pat.

Les LIGNES 2 n 3 ne sont pas définis

Exemple var id=data[2]; renvoie undefined
etc

Mes Questions

  1. Pourquoi ne puis-je obtenir les valeurs de la première ligne?

  2. Comment puis-je obtenir de l'information pour les lignes autres que le premier?

D'autres questions sur Stackoverflow, je vois que je vais probablement utiliser une boucle while, mais je ne suis pas vraiment sûr de savoir pourquoi ou comment.

essayez d'utiliser mysql_fetch_array au lieu de mysql_fetch_row. Ce Qui Concerne Jonas
Pouvez-vous accéder à la page php, seul, au lieu de le faire par requête ajax et dites-nous ce que le json echo imprime sur l'écran?
Merci. J'ai essayé mysql_fetch_array mais il retourna encore non définie pour les données[2], [3],etc
Costa j'ai ["1","Pat"]
Par la façon dont mysql_fetch_* retour des fonctions de seulement 1 ligne!

OriginalL'auteur TryHarder | 2011-11-05