別の選択ボックスで選択されたグループに一致する製品のみを使用してフォームの選択ボックスにデータを入力するにはどうすればよいですか?SELECT Aがフォームで変更されたときに、SELECT BのMYSQLからオプションを更新します
私は、MySQLデータベース内の2つのテーブルを使用しています:
GROUP "node"
nid | title
g1 | Group 1
g2 | Group 2
GROUP "products"
id | name | parent_id | group_id
p1 | Product 1 | p1 | g1
p2 | Product 2 | p1 | g1
p3 | Product 3 | p3 | g1
p4 | Product 4 | p4 | g2
p5 | Product 5 | p5 | g2
p6 | Product 6 | p5 | g2
フォームを使用して製品を追加する場合、管理者はGROUPと親の製品を選択することができるはずです。これは私のコードで機能している:
<li>
<label for="group">Group</label>
<select name="group">
<?php
//get group names
$result = mysql_query("SELECT nid, title FROM node WHERE type = 'group';");
while($row = mysql_fetch_array($result)) { ?>
<option value="<?php echo $row['nid']; ?>"><?php echo $row['title']; ?></option>
<?php } ?>
</select>
</li>
<li>
<label for="parent">Parent</label>
<select name="parent">
<?php
//get parent names
$result = mysql_query("SELECT id, name, group_id FROM products");
while($row = mysql_fetch_array($result)) {?>
<option value="<? echo $row['id']; ?>"><?php echo $row['name']; ?></option>
<?php }?>
</select>
</li>
しかし、私は唯一選ばれたグループの一部である製品を投入するPARENT(親製品)選択ボックスを持っていると思います。
例データベースでは、選択された「グループ1」が製品p1、p2およびp3を入力します。選択された「グループ2」は、製品p4、p5およびp6を入力する。
これはストレートPHPではできませんが、両方のテーブルでgroup_id/nidを検出し、そのgroup_idでプロダクトのみを表示するにはJavaScriptが必要です。
これを行うにはどのような方法が最適ですか?どうすればこれを簡単に達成できますか?
素晴らしいですが、私はAJAXに慣れておらず、データベースから情報を取得して選択したものに一致させるためにどのようなコードを使用するのですか。 – nitsuj
あなたが理解していないコードをコピーして貼り付けることは助けにならないので、AJAXに精通することをお勧めします。それはうまくいかず、なぜあなたは知りません。私はここから始めることをお勧めします:http://www.codeproject.com/Articles/31155/Ajax-Tutorial-for-Beginners-Part-1 – roychri