我必须制作一个包含多个相互修改的下拉菜单的表单。菜单/数据库表是:
类别、样式、类型和机制
我试图用我对 Ajax 的有限知识来做到这一点,但似乎只能访问 MySQL 一次(在初始页面上)以填充 Categories 表,而无法通过查询下一组结果来更新 Styles 表。我收到一个错误,声称数据库为空。
我还尝试通过选项组填充下拉列表,以使用循环查询处理类别和样式,但仅显示类别标题,所有样式子值显示为空白。我的代码如下:
$query1="SELECT categories.category_id, categories.Category_Name ";
$query1.="FROM categories ";
$query1.="ORDER BY categories.Category_Name ASC";
$category_result=mysql_query($query1, $connection);
if(!$category_result){
die("Database query failed: " . mysql_error());
}
$options="";
$con=0;
while ($category_row=mysql_fetch_array($category_result)) {
$category_name=$category_row["Category_Name"];
$CategoryID=$category_row["category_id"];
$options.="<OPTGROUP LABEL=\"$category_name\"> <br />";
$query2="SELECT categories.category_id, categories.Category_Name, ";
$query2.="styles.style_id, styles.Style_Name ";
$query2.="FROM categories, styles ";
$query2.="WHERE styles.Category_ID = $CategoryID ";
$style_result=mysql_query($query2, $connection);
if(!$style_result){
die("Database query failed: " . mysql_error());
}
while ($style_row=mysql_fetch_array($style_result)) {
$style_name=$row["Style_Name"];
$id=$row["style_id"];
$options.="<OPTION VALUE=\"$id\" <a href=\"#\" onClick=\"javascript:swapContent('$style_name');\" >".$style_name.'</OPTION>';
}
$options.='</OPTGROUP> <br />';
}
?>
<SELECT NAME="category_id">
<OPTION VALUE=0></OPTION>
<?php echo $options ?>choose
</SELECT>
任何洞察我做错了什么都将不胜感激!