0

1 つのファイルで複数の select ステートメントを実行するにはどうすればよいですか? たとえば、製品のリストがあります。次に、各製品の在庫レベルを取得したいと考えています。ただし、最初の製品のみが返され、他の追加製品は返されません。

$query = $db->query("SELECT * FROM `products` ORDER BY `productName` ASC"); 

    while ($row = $query->fetch(PDO::FETCH_ASSOC)){
    $productId = stripslashes($row['productId']);
    $productName = stripslashes($row['productName']);


    echo "<b>".$productName."</b><br />";


    $query = $db->query("SELECT * FROM `stock` WHERE `productId` = $productId"); 

    while ($row = $query->fetch(PDO::FETCH_ASSOC)){
        $stockId = stripslashes($row['stockId']);
        $stockFilename = stripslashes($row['stockFilename']);

    }
    echo "Stock level= " . $query-> rowCount();

}
4

1 に答える 1

1

2 番目の $query が最初のクエリを上書きしているためです。2 番目の名前を $query2 に変更します (さらに、その下の $query 変数を $query2 に変更します)。$row を $row2 に変更します

ちなみに、最初のクエリを結合に変更して、2 番目のクエリをまとめて削除することもできます。

于 2013-03-23T22:09:22.307 に答える