2012-02-18 22 views
2

から奇妙なJSON配列を取得:は、私は次のPHPコードを持って戻ってMySQLの

$data=mysql_query("SELECT * FROM notes WHERE rootNoteId='$noteId'"); 
$mainArray; 
while($result = mysql_fetch_array($data)) 
{ 
    $mainArray[]=$result; 
} 

$sendback = array(
    "mainArray" => $mainArray 
); 
sendResponse(200, json_encode($sendback)); 

マイテーブル「Notesの次のフィールドがあります。私のリターンJSON文字列は次の形式を持っているしかし

'noteId' 
'authorName' 
'noteBody' 

{ 
    "0": "3", 
    "1": "Moe Bit", 
    "2": "Sub sub ", 
    "noteId": "3", 
    "authorName": "Moe Bit", 
    "noteBody": "Sub sub " 
} 

なぜそれが重複すると、配列のための0,1,2インデックスを追加しています私のテーブルのフィールドの値ですか?私はちょうどnoteIdauthorName、およびnoteBodyがほしいと思う - それは"0","1","2"と出て来るか分からない。

答えて

1

はmysql_fetch_assocか、デフォルトの「モード」だ連想&数値配列として結果をフェッチ

+0

mysql_fetch_assocはそれを実行しました..thanks :) – Snowman

2

mysql_fetch_array()でmysql_fetch_objectのいずれかを試してみてください。だからあなたはフィールド名(あ​​なたが望むもの)と数字のインデックス(あなたが望まない数字)を取得します。

これを解決するには、2番目のパラメータとして "MYSQL_ASSOC"という定数をmysql_fetch_arrayに渡すか、またはmysql_fetch_assoc()関数を使用します。

関連する問題