2017-01-09 3 views
2

から複数のレコードを取得:次のように私はレコードをフェッチしていますPHP/MySQLの

$aResult = array(); 
$sql  = "SELECT notes FROM table WHERE user_id = '$user_id'"; 
$result = $conn->query($sql); 

while($row = mysqli_fetch_array($result)){ 
    $aResult['query_result'] = $row; 
} 

これは、テーブルにのみ最後のレコードを返します。私は、SQL文からすべてのレコードを返す必要があります。あなたは結果を毎回上書きしてきたので、あなただけの1を取得し$aResult['query_result'][] = $row;

にあなた$aResult['query_result'] = $row;

+0

についての詳細は

$aResult = array(); $sql = "SELECT notes FROM table WHERE user_id = '$user_id'"; $result = $conn->query($sql); while($row = mysqli_fetch_array($result)){ $aResult['query_result'][] = $row; } 

** WARNING **:あなたは、[パラメータ化クエリ]を使用する必要がありmysqli' '使用している場合(http://php.net/manual/en/mysql i.quickstart.prepared-statements.php)と['bind_param'](http://php.net/manual/en/mysqli-stmt.bind-param.php)を使ってクエリにユーザデータを追加します。 **重大な[SQLインジェクションのバグ](http://bobby-tables.com/)を作成したため、文字列の補間または連結を使用してこれを実行しないでください。 ** '$ _POST'や' $ _GET'データを直接クエリに入れないでください。誰かがあなたのミスを悪用しようとすると、非常に危険です。 – tadman

答えて

4

変更。

+2

完璧、ありがとうございます! – Cybernetic

+1

@KrisRoofe :)シンプルでパーフェクト。 +1ハッピーコーディング。 –

1

あなたのループは常に値を上書きしているようですので、最後の行は見たことがありません。それぞれの新しい行があなたの配列

1

現在、あなたは同じ配列のキーに値を開始している、次のコードで試してみてくださいに付加されますように

while($row = mysqli_fetch_array($result)) 
{ 
    $aResult[] = $row; 
} 

:私はあなたのような何かを行う場合は、より良い結果を参照してくださいかもしれないと思います:Array

関連する問題