データベースには 2 つのテーブルがあり、1 つが呼び出されproductBrands
、もう1 つが呼び出されますproducts
。
ここで、選択したブランドに応じて製品の結果をエコーアウトしたいと思います。
基本は動作するようになりましたが、どのブランドが選択されているかをテストする方法がわかりません。
echo '
Brand:<br><select name="brand">';
$brandsQuery = "SELECT * FROM productBrands";
$brands = mysql_query($brandsQuery) or
die("SQL: $brandsQuery)<br />".mysql_error());
$brandsNo = mysql_num_rows($brands);
echo '<option value="" selected>Choose a brand...</option>';
for ($i = 0; $i < $brandsNo; $i++) {
$name = mysql_result($brands, $i, 'name');
$brandid = mysql_result($brands, $i, 'id');
echo '<option value="' . $brandid . '">' . $name . '</option>';
}
echo '</select><br/>';
echo 'Produkt:<br><select name="produkt">';
$productsQuery = "SELECT * FROM products";
$products = mysql_query($productsQuery) or
die("SQL: $productsQuery)<br />".mysql_error());
$productsNo = mysql_num_rows($products);
$brandQuery = "SELECT productBrand from products";
for ($f = 0; $f < $productsNo; $f++ ) {
$productName = mysql_result($products, $f, 'productName');
$productId = mysql_result($products, $f, 'productId');
echo '<option value="' .$productId .'">' . $productName .'</option>';}
echo '</select><br/>';
これにより正しい値が出力されますが、最初に選択されたものは取り込まれません。