0

重複の可能性:
PHPでmysql_fetch_arrayをループする

単純な結合クエリがあり、各配列の結果をforeachループでエコーアウトする必要があります。配列は空ではありません。配列カウントの印刷は機能します-801件の結果があります。ただし、実際には、上または内の行を印刷するとforeach、最初の結果のみが印刷されます。どんな助けでもいただければ幸いです。

$listQuery = "SELECT r.email_address
            FROM wholesale_accounts a
            LEFT JOIN wholesale_register r ON r.register_id = a.register_id
            WHERE r.email_address != ''
            ORDER BY r.email_address";            
$listResult = mysql_query($listQuery);
//print_r($listResult); // prints (Resource ID #21)
//exit;

$rows = mysql_fetch_array($listResult, MYSQL_ASSOC);
$count = mysql_num_rows($listResult);
//print_r($count); // prints 801
print_r($rows); // only prints first email address
exit;

foreach($rows as $row) {
    print_r($row); // prints email address          
}
4

1 に答える 1

3

mysql_fetch_array一度に1行を取得するので、それをループに入れる必要があります

while($rows = mysql_fetch_array($listResult, MYSQL_ASSOC))
{
   print_r($rows);
}
于 2012-10-01T21:28:10.357 に答える