Međutim, ako se promeni država pokreće se ajax funkcija load_cities_ad koja izbaci odgovarajuće gradove, ali kad pošaljem formu $_POST['ad_location_city'] mi je prazna, dok je $_POST['ad_location_country'] uvek u redu.
Evo koda:
create.php
<div id="ad_location_city_div">
<select name="ad_location_city" id="ad_location_city" class="create_ad_input">
<?php
$uq=mysql_query("SELECT cw.*,u.country FROM countries_world AS cw,users AS u WHERE cw.id=u.country AND u.id='$userid'");
$uf=mysql_fetch_array($uq);
$country_id=$uf['id'];
$q=mysql_query("SELECT * FROM cities_world WHERE pid='$country_id'");
if(mysql_num_rows($q)>0) {
while($f=mysql_fetch_array($q)) {
echo '<option value="'.$f['id'].'">'.$f['name'].'</option>';
}
}
else {
echo '<option value="">City</option>';
}
?>
</select>
</div>
<select name="ad_location_country" id="ad_location_country" class="create_ad_input" [red]onchange="load_cities_ad(this.value,'ads')"[/red]>
<?php
$cq=mysql_query("SELECT * FROM countries_world ORDER BY name ASC");
while($cf=mysql_fetch_array($cq)) {
$uq=mysql_query("SELECT country FROM users WHERE id='$userid'");
$uf=mysql_fetch_array($uq);
if($ad_country!='') {
if($cf['id']==$ad_country) {
$selected=' selected="selected"';
}
else {
$selected='';
}
}
else {
if($cf['id']==$uf['country']) {
$selected=' selected="selected"';
}
else {
$selected='';
}
}
echo '<option value="'.$cf['id'].'"'.$selected.'>'.$cf['name'].'</option>';
}
?>
</select>
ajax funkcija:
function load_cities_ad(country) {
xmlhttp=GetXmlHttpObject();
if (xmlhttp==null)
{
alert ("Browser does not support HTTP Request");
return;
}
var url="http://www.wwiyo.com/ajax/load_cities_ad.php";
var checkpars="country="+country;
xmlhttp.open("POST",url,true);
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlhttp.setRequestHeader("Content-length", checkpars.length);
xmlhttp.setRequestHeader("Connection", "close");
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4)
{
document.getElementById('ad_location_city_div').innerHTML=xmlhttp.responseText;
}
}
xmlhttp.send(checkpars);
}
ajax fajl:
$country=$_POST['country'];
$q=mysql_query("SELECT * FROM cities WHERE pid='$country' ORDER BY name ASC");
echo '<select name="ad_location_city" id="ad_location_city">';
if(mysql_num_rows($q)>0) {
while($f=mysql_fetch_array($q)) {
echo '<option value="'.$f['id'].'">'.$f['name'].'</option>';
}
}
else {
echo '<option value="">City</option>';
}
echo '</select>';
Izvinjavam se ako sam malo konfuzno objasnio u čemu je problem.
Hvala unapred!:)