1

PHP(PDO)でこの状況があります。

MySqlからデータを取得してうまく実行する方法を実装していますが、問題は重複データが値なしとしてキーボーンとして回復され、他のデータがさらに追加されることです。詳細についてはスクリプトと画像を残してください。

データ.php

    //read
    public function getData() {
    $statement = $this->db->prepare("select Id,Company_Name,Contact_Name,Contact_Title,Address from contact_details LIMIT 3;");
    $statement->execute();
    if ($statement->rowCount() > 0) {
        $value = $statement->fetchAll();
        return $value;
    }
}

可変検査

ここに画像の説明を入力

jsonの複製

ここに画像の説明を入力

期待される結果

Data: [{"Id":"1","Company_Name":"Romero y tomillo","Contact_Name":"Alejandra                 Camino","Contact_Title":"Accounting Manager","Address":null}
,{"Id":"2","Company_Name":"Morgenstern Gesundkost","Contact_Name":"Alexander Feuer","Contact_Title":"Marketing Assistant","Address":"Heerstr. 22"}
,{"Id":"3","Company_Name":"Ana Trujillo Emparedados y helados","Contact_Name":"Ana Trujillo","Contact_Title":"Owner","Address":null}]
4

2 に答える 2

6

デフォルトでは、PDO はフェッチ結果として PDO::FETCH_BOTH を使用します。すべての列をその名前と「整数」列名にマップすることを意味します。

fetch_style パラメータを確認してください = http://php.net/manual/en/pdostatement.fetch.php

PDO::FETCH_ASSOC期待される結果を得るには、属性を使用する必要があります。次のように、これを pdo オブジェクトのデフォルトの FETCH_MODE として設定することができます。

$this->db->setAttribute(\PDO::ATTR_DEFAULT_FETCH_MODE, \PDO::FETCH_ASSOC);

または、すべての fetch cal に対して指定できます。

$value = $statement->fetchAll(PDO::FETCH_ASSOC);
于 2013-07-08T19:27:52.157 に答える