首页 > 开发 > PHP > 正文

究了一下连动下拉菜单,共享一下,希望有人能继续完善。

2024-05-04 22:54:44
字体:
来源:转载
供稿:网友
php代码:--------------------------------------------------------------------------------

<html>
<head>
<title>list</title>
<meta http-equiv="content-type" content="text/html; charset=??????">
<?
if( !( $link = mysql_connect() ) ){
fatal("could not connect to local mysql server.");
}

if( !mysql_select_db( "loaction", $link ) )
{
mysql_close( $link );
fatal("could not select database <b>parsersample</b>.");
}

$sql="select * from district order by locationid asc";
$query=mysql_query($sql,$link);
?>
<script language = "javascript">

var onecount;
onecount = 0;
subcat = new array();
<?
$count=0;
while($rs=mysql_fetch_array($query)){
?>
subcat[<?=$count;?>] = new array("<?=$rs['districtname'];?>","<?=$rs['locationid'];?>","<?=$rs['districtid'];?>","<?=$rs['areacode']?>","<?=$rs['zipcode']?>");
<?
$count++;
}
?>
onecount=<?=$count?>;

function getcode(cityid){
var cityid=cityid;
var i;
for(i=0;i < onecount; i++){
if(subcat[i][2] == cityid){
document.formdata.areacode.value = subcat[i][3];
document.formdata.zipcode.value = subcat[i][4];
}
}
}

function clearcode(){
document.formdata.areacode.value = '';
document.formdata.zipcode.value = '';
}

function getcity(locationid)
{
document.formdata.city.length = 0;

var locationid=locationid;

var i;
document.formdata.city.options[0] = new option('==所选城市的地区==','');
for (i=0;i < onecount; i++)
{
if (subcat[i][1] == locationid)
{
document.formdata.city.options[document.formdata.city.length] = new option(subcat[i][0], subcat[i][2]);
}
}

}
</script>
</head>
<body>
<form name="formdata" method="post" action="">
分类:<select name="province" onchange="getcity(document.formdata.province.options[document.formdata.province.selectedindex].value);clearcode();" size="1">
<option selected>请选择你所在的省份</option>
<?
$sql1= "select * from loaction";
$query=mysql_query($sql1,$link);
$a=mysql_num_rows($query);
while($rs1=mysql_fetch_array($query)){
?>
<option value="<?=$rs1['loactionid'];?>"><?=$rs1['loactionname'];?></option>
<?}?>
</select>
<select name="city" onchange="getcode(document.formdata.city.options[document.formdata.city.selectedindex].value);">
<option selected value="">==所有地区==</option>
</select>
<input type="text" name="areacode"><input type="text" name="zipcode">
<input type="submit">
</form>
</body>
</html>
<?
if(!empty($_post['city'])){
echo $_post['city'];
}
?>


表结构:

#
# 表的结构 `district`
#
# 创建时间: 2003 年 08 月 02 日 11:21
# 最后更新时间: 2003 年 08 月 02 日 11:21
#

create table `district` (
`locationid` int(10) not null default '0',
`districtid` int(10) not null auto_increment,
`areacode` varchar(4) not null default '',
`zipcode` varchar(6) not null default '',
`districtname` varchar(50) not null default '',
key `districtid` (`districtid`)
) type=myisam auto_increment=7 ;

#
# 表`district`中数据locationid——省id;districtid——市id;districtname——市名称; areacode ——市区号;zipcode——市邮政编码
#

# --------------------------------------------------------

#
# 表的结构 `loaction`
#
# 创建时间: 2003 年 08 月 02 日 09:28
# 最后更新时间: 2003 年 08 月 02 日 10:36
#

create table `loaction` (
`loactionid` int(10) not null auto_increment,
`loactionname` varchar(50) not null default '',
key `loactionid` (`loactionid`)
) type=myisam auto_increment=4 ;

#
# 表`loaction`中数据,loactionid——省id;loactionname——省名称
#

#表
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表