0
我有2个列表框,第一个为国家,另一个为城市 当用户选择一个国家时,它应该根据国家填充城市根据第一个列表的选定值填充下拉列表
全县数据库(CountryID(PK),码分多址(PK),名称) 城市(COUNTRYCODE(PK),名称)
我创建Java脚本函数调用重新加载加载页面的onChange 其工作不错,但在城市名单中的问题是不填充国家项目..它仍然是空的.. 这里是我的代码。我只是发布与问题有关的代码,它的页面太长。 此代码为
页DD-check.php
<?php
$cat = $_GET['Country'];
$subcat = $_POST['City'];
?>
CreateAccount.php
<script language=JavaScript>
function reload(form)
{
var val = form.Country.options[form.Country.options.selectedIndex].value;
self.location = 'Create_Account.php?country=' + val ;
}
</script>
<form id="form2" method="post" enctype="multipart/form-data" action="dd-check.php">
<?php
$Con= mysql_connect("localhost","root","");
if(!$Con)
{
die('Could not connect'.mysql_error());
}
if(!mysql_selectdb("rlounge",$Con))
{
die(mysql_error());
}
@$cat = $_GET['Country'];
if(strlen($cat) > 0 and !is_numeric($cat))
{
echo "Data Error";
exit;
}
$quer2 = "SELECT * FROM country";
$result = mysql_query($quer2);
if(isset($cat) and strlen($cat) > 0)
{
$quer = mysql_query(" SELECT city.`Name` , `CountryCode`
FROM `city` , `country`
WHERE `CountryCode` = $cat
AND `Code` = `CountryCode` ");
}
else
{
$quer = mysql_query(" SELECT City.name
FROM `city` , `country`
WHERE `Code` = `CountryCode`");
}
//$cat=$_GET['Country'];
//$subcat=$_POST['City'];
echo "<select name='Country' onchange=\"reload(this.form)\"><option value=''>Select one</option>";
while($noticia2 = mysql_fetch_array($result))
{
if($noticia2['Code'] == $cat)
{
echo "<option selected value='$noticia2[Code]'>$noticia2[Name]</option>"."<BR>";
}
else
{
echo "<option value='$noticia2[Code]'>$noticia2[Name]</option>";
}
}
echo "</select>";
echo "<select name='City'><option value=''>Select one</option>";
while($noticia = mysql_fetch_array($quer))
{
echo "<option value='$noticia[CountryCode]'>$noticia[Name]</option>";
}
echo "</select>";
?>
</form>