你说的是二级联动吧,点一框,另一个框跟着改变。
用数据库的不知道,不过在网上见过,你可以搜"二级联动"。
这是一个不用数据库的联动。你看看。<?
echo "<form name=frm method=post>";
echo "<input type=hidden name=hi value=''>";
echo "<table name=s border=1>";
echo "<tr><td>";
echo '<select name="s1" onChange="redirec(document.frm.s1.options.selectedIndex)">';
echo ' <option selected>请选择</option>';
echo ' <option value="脚本语言">脚本语言</option>';
echo ' <option value="高级语言">高级语言</option>';
echo ' <option>其他语言</option>';
echo "</select>";
echo "</td></tr>";
echo "<tr><td>";
echo '<select name="s2" onchange="javascript:document.frm.hi.value=s2.option[selectedindex].value;">';
echo ' <option value="请选择" selected>请选择</option>';
echo "</select>";
echo "</td></tr>";
echo "</table>";
echo "<br><br><br>";
echo "<input type=submit name=submit value=\"提 交\">";
echo "</form>";
?><script language="javascript">
//获取一级菜单长度
var select1_len = document.frm.s1.options.length;
var select2 = new Array(select1_len);//把一级菜单都设为数组
for (i=0; i<select1_len; i++) 
{
 select2[i] = new Array();
}//定义基本选项
select2[0][0] = new Option("请选择", " ");select2[1][0] = new Option("PHP", " ");
select2[1][1] = new Option("ASP", " ");
select2[1][2] = new Option("JSP", " ");select2[2][0] = new Option("C/C++", " ");
select2[2][1] = new Option("Java", " ");
select2[2][2] = new Option("C#", " ");select2[3][0] = new Option("Perl", " ");
select2[3][1] = new Option("Ruby", " ");
select2[3][2] = new Option("Python", " ");//联动函数
function redirec(x)
{
 var temp = document.frm.s2; temp.length=0;                              
temp.options.length=select2[x].length;      
 for (i=0;i<select2[x].length;i++)
 {
  temp.options[i]=new Option(select2[x][i].text,select2[x][i].value);
 }
 temp.options[0].selected=true;
}
</script>