我有两个从 MySQL 数据库中读取数据的下拉菜单。我使用 PHP 连接到数据库。第二个下拉菜单应根据第一个下拉菜单上的选择进行填充。这个过程对我来说似乎如下(如果我错了,请纠正我):
- PHP 部分连接到 MySQL 数据库并填充 dropdown1。
- 用户在 dropdown1 上选择一个值并调用 onchange 事件。
- 在 onchange 函数(它是 Javascript)中,一个查询被发送到 MySQL 数据库以根据 dropdown1 选择获取 dropdown2 的值(这里又是 PHP,对吗?)。
- dropdown2 被填充。
我不知道如何同时使用 Javascript 和 PHP 来完成这项任务(上面的第 3 点);或者也许这根本不是这样做的方法。请指教!
这是我的代码。正如您在下面看到的,我在 PHP 代码中放置了一个 Javascript 函数,我认为这是错误的。这就是我卡住的地方!
<php
$sql="SELECT distinct category FROM table1";
$result=mysql_query($sql);
$optionsCat="";
while($row = mysql_fetch_row($result)){
$optionsCat.="<option value=\"$row[0]\">$row[0]</option>";
}
function genSubCat($catID){
$sql="SELECT distinct subcategory FROM table1 where category=".$catID;
$result=mysql_query($sql);
$optionsSubCat="";
while($row = mysql_fetch_row($result)){
$optionsSubCat.="<option value=\"$row[0]\">$row[0]</option>";
}
}
?>
<select name="catDropDown" onChange="genSubCat(this)">
<option value="0">Select category</option>
<?php echo $optionsCat?>
</select>
<select name="subcategoryDropDown">
<option value="0">Select subcategory</option>
<?php echo $optionsSubCat?>
</select>