2012-04-03 11 views
3
<?php 
    require 'dbinfo.php'; 
    try { 
     $db = new PDO($dsn, $username, $password); 
     $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
     $sth = $db->query("SELECT * FROM user_tracks"); 
     $loc = $sth->fetchAll();  
     $locations = array_values($loc); 
     echo json_encode(array("user"=>($locations))); 
    } catch (Exception $e) { 
     echo $e->getMessage(); 
    } 
?> 

からのフェッチは、コードが返す必要があります:JSONデータ:mysqlの

{"user":[{"id":"1","Latitude":"12.9555033333","Longitude":"80.2461883333","Time":"06:32:57","Date":"2012-03-13","Speed":"0","Course":"183.92"},{...},{....}]} 

を、それが戻っているとき:

{"user":[{"id":"1","0":"1","Latitude":"12.9555033333","1":"12.9555033333","Longitude":"80.2461883333","2":"80.2461883333","Time":"06:32:57","3":"06:32:57","Date":"2012-03-13","4":"2012-03-13","Speed":"0","5":"0","Course":"183.92","6":"183.92"},{...},{....}]} 

私が起こって何がわかりませんよ...ここで問題はどこですか?

ありがとうございます!

答えて

8

fetchAll()returns both( 'fetch_style'引数コメント/メモに注意してください)文字列と数値的にキー付きのデータは、デフォルトでクエリ結果から得られます。文字列バージョンのみが必要な場合は、実行する必要があります。

$loc = $sth->fetchAll(PDO::FETCH_CLASS); 
+1

これは機能します。それ以外の方法.. fetchAll(PDO :: FETCH_CLASS);助けてくれてありがとう! – Karthick

+0

Woops、右。私の一部にはタイプミス。私は答えを修正します。 –

関連する問題