<select id="country" name="country" onChange="getState(this.value)" class="dropdown">
<option value="0">Select Country</option>
<?php
echo $country;
?>
</select>
上面的代码从数据库中取国家,根据国家使用ajax,我使用下面的代码创建了一个下拉列表,我无法插入状态值。如何在php dbpage中获取状态值以插入状态值
<div id="statediv" >
<select id="ddlstate" name="ddlstate" class="dropdown" value="0">
<option>Select Country First</option>
</select>
</div>
this is my full ajax code
function getState(countryId)
{
var strURL="findState.php?country="+countryId;
var req = getXMLHTTP();
if (req) {
req.onreadystatechange = function() {
if (req.readyState == 4) {
if (req.status == 200) {
document.getElementById('statediv').innerHTML=req.responseText;
}
else {
alert("There was a problem while using XMLHTTP:\n" + req.statusText);
}
}
}
req.open("GET", strURL, true);
req.send(null);
}
}
这是findState.php
<?php $country=intval($_GET['country']);
$query="SELECT stateid,statename FROM state WHERE countryid='$country'";
$result=mysql_query($query);
?>
<select name="state" onchange="getCity(<?php echo $country?>,this.value)">
<option>Select State</option>
<?php while($row=mysql_fetch_array($result)) { ?>
<option value=<?php echo $row['stateid']?>>
<?php echo $row['statename']?>
</option>
<?php } ?>
</select>
答案 0 :(得分:0)
请使用countryid查找州并以这种方式执行。
<?php $states= getStates($countryid);
$str ='';
$str .='<select id="ddlstate" name="ddlstate" class="dropdown" value="0">';
foreach($states as $val){
$str.='<option value="'.$val->id.'">'.$val->name.'</option>';
}
$str.='</select>';
echo $str; exit; ?>
这只是您需要在php文件中使用的示例代码
答案 1 :(得分:0)
只要您的Ajax正确生成并填充下拉列表,就像这样:
<select id="country" name="country" onChange="getState(this.value)" class="dropdown">
<option value="0">Select Country</option>
<option value="1">Country1</option>
<option value="2">Country2</option>
<option value="3">Country3</option>
</select>
使用firebug或查看页面的源代码进行检查。一旦你知道这是正确的,提交表单并使用这样的PHP代码来检查:
if( isset($_REQUEST['country'] ) ) {
echo $_REQUEST['country'];
} else {
echo "Country not sent from form";
}
一旦您知道从表单发送国家/地区,您就可以使用该值放入数据库或任何您喜欢的地方。
答案 2 :(得分:0)
我猜您插入查询是错误的。检查字段数和提供的值。
insert into query_mas(employee_id,country_id,state_id,city_id,experience,query) values('".$employee_id."','".$country_id."','".$state_id."','".$city_id."','".$experience."')";