Есть 2 списка (<select>): из первого списка выбирается область, из второго в соответствии с выбранной областью — города.
$query = "SELECT * FROM `region` ORDER BY name";
$res = dbQuery($query);
<select id="sel" name="region" onChange="selChange(this.form)">
<option value='null'>- Выберите область -</option>
<?php
echo "<option value='" . $row['region'] . "'>" . $row['name'] . "</option>\r\n";
?>
</select>
<strong>Город:</strong><br/>
<select name="city" style="width:300px">
<option value='null'>- Выберите город -</option>
<?php
$query_c = "SELECT * FROM `cities` WHERE `region`='".$reg."' ORDER BY name";
$res_c = dbQuery($query_c);
echo "<option value='" . $row['city'] . "'>" . $row['name'] . "</option>\r\n";
?>
</select>
А вот код функции selChange:
function selChange(seln) {
selNum = seln.region.selectedIndex;
Isel = seln.region.options[selNum].value;
$reg=seln.region.options[selNum].value; alert($reg);
}
Вот при выборе области выводится сообщение с названием области, как это название передать запросу $query_c?