i want retrieve geocodes database using php , mysql json. works selecting option drop-down list , reading matching data. think functions of php , mysql working correctly problem javascript , map.
code javascript:
<div data-role="content" id="accommodation"> <div id="manu"> <select id="cheltenham"></select> <!--map--> <div id="mymap"> <script type="text/javascript"> /* call php has php array json_encoded */ $.getjson('cheltenham.php', function(data){ /* data hold php array javascript object */ $.each(data, function(key, val){ var x = document.getelementbyid("cheltenham"); var option = document.createelement("option"); option.text = val.bustype; option.value = val.reference; x.add(option); }) }); function initialize(){ $(document).on('click', '#cheltenham', function() { var referenceid = $(this).selected.value; $.getjson('searchbusinesses.php?referenceid='+referenceid, function(data) { ev_ref = data.reference; ev_busid = data.busid ev_name = data.name; lat = parsefloat(data.latitude); longi = parsefloat(data.longitude); }); var map; var mylatlng = new google.maps.latlng(lat,longi); var geocoder = new google.maps.geocoder(); var infowindow = new google.maps.infowindow(); var mapoptions = { zoom: 15, center: mylatlng, maptypeid: google.maps.maptypeid.roadmap }; map = new google.maps.map(document.getelementbyid("mymap"), mapoptions); showmarker(); function showmarker() { marker = new google.maps.marker({ map: map, position: mylatlng, draggable: true }); geocoder.geocode({'latlng': mylatlng }, function(results, status) { if (status == google.maps.geocoderstatus.ok) { if (results[0]) { var marker = new google.maps.marker({map: map, position:results[0].geometry.location}); infowindow.setcontent(ev_name + '<br/>' + lat + '<br/>' + long); infowindow.open(map, marker); } } }); } }); } google.maps.event.adddomlistener(window, 'load', initialize); </script> </div> </div> </div>
code cheltenham.php:
<?php $servername = "localhost"; $username = "secret"; $password = "secret"; $dbname = "secret"; function geteventlist(){ global $servername, $username, $password, $dbname; // create connection $conn = new mysqli($servername, $username, $password, $dbname); // check connection if ($conn->connect_error) { die("connection failed: " . $conn->connect_error); } $sql = "select * `business_type`"; $result = $conn->query($sql); $rows = array(); if ($result->num_rows > 0) { // output data of each row while($row = $result->fetch_assoc()) { $rows[] = $row; } } else { //echo "0 results" . "<br>"; } $conn->close(); echo json_encode($rows); } geteventlist(); ?>
code searchbusinesses.php
<?php $servername = "localhost"; $username = "secret"; $password = "secret"; $dbname = "secret"; $evreference = $_get['reference']; function geteventone(){ global $servername, $username, $password, $dbname, $evname; // create connection $conn = new mysqli($servername, $username, $password, $dbname); // check connection if ($conn->connect_error) { die("connection failed: " . $conn->connect_error); } $sql = "select `latitude`, `longitude` `businesses` `reference` = '" . $evreference . "'"; $result = $conn->query($sql); if ($result->num_rows > 0) { // output data of each row $row = $result->fetch_assoc(); echo json_encode($row); } else { //echo "0 results" . "<br>"; } $conn->close(); } geteventone(); ?>
add line cheltenham.php
echo json_encode($rows, json_force_object);
Comments
Post a Comment