google maps dropdown change city

vasilev

Registered
здравейте ,
попаднах на тази тема - линк

интересува ме обаче как ще се направи със данни от база .
започнал съм така :
Код:
$query = "SELECT * FROM `city`";
    $result = mysql_query($query);
    while($row = mysql_fetch_array($result)) {
      $citylist .= "<option value=".$row['city_code'].">".$row['fullname']." </option>";
	}

Код:
<select name="city_code" class="logbut" onchange="selectedLocation()" id="location">
<option value="None">Please Select</option><?=$citylist;?></select>


но как да вкарам селектнатите координати които са от поле clat и clng в този javascript ..
 
1. Докато създаваш опциите на селекта, вместо да записваш city_code, освен ако не го ползваш някъде, записвай координатите (трябва ти някакъв разделител между latitude и longitude, който да не е точка, запетя или минус):

PHP:
$citylist .= "<option value=\"".$row['clat']."~".$row['clng']."\">".$row['fullname']." </option>";

2. А javascript-а:

[js]function selectedLocation() {
//взимаш избраната стойност и я превръщаш в масив, чрез разделителя
var selected = document.getElementById("location").value.split('~');
if (selected[0] != "None") {
var location1 = new google.maps.LatLng(selected[0], selected[1]);
map.setCenter(location1);
map.setZoom(12);
} [/js]
 
здравей ,
имаше няколко допълнения заради които не потръгна .

Код:
var map = new GMap2(document.getElementById("map"));
        map.addControl(new GSmallMapControl());
        map.addControl(new GMapTypeControl());
        map.setCenter(new GLatLng(selected[0], selected[1]), 12);

трябваше да се опише и map която се използва .
.. взех кода от моят и добавих селектването и стана :)


мерси за съдействието !
 

Back
Горе