I've looked at the various other times this question has been asked but I can't quite put a finger on where I'm going wrong, here's my code:
<html> <head> <title> Map </title> <style> html, body, #map-canvas { margin: 0; padding: 0; height: 500px; width: 800px;} </style> <script src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false"></script> <script> var map; function initialize() { var myLatlng1 = new google.maps.LatLng(53.65914, 0.072050); var mapOptions = { zoom: 10, center: myLatlng1, mapTypeId: google.maps.MapTypeId.ROADMAP }; var map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions); <?php $sql = mysql_query("SELECT * FROM data ORDER BY ID DESC"); while($row =mysql_fetch_array($sql)) { $desc = $row['DESCRIPTION']; $location = $row['LOCATION']; $counter += 1; ?> var marker = new google.maps.Marker({ position: new google.maps.LatLng(<?php echo $location; ?>), map: map, title: '<?php echo $desc; ?>', icon: '/image/cam.png' }); navigator.geolocation.getCurrentPosition(showPosition); } var showPosition = function (position) { map.setCenter(new google.maps.LatLng(position.coords.latitude, position.coords.longitude), 16); } google.maps.event.addDomListener(window, 'load', initialize); </script> </head>
It originally sets the center to myLatlng1, and the code at the bottom to set it to the user's current location doesn't do anything, any ideas?
Thanks in advance.
There are two ways to get the current location of any Android device: Android's Location Manager API. Fused Location Provider: Google Play Services Location APIs.
One way is to click the little circle above the Street View man's head. This forces it to detect your location, and Maps will ask you for permission to share your location. Assuming you accept, or have turned on auto-accept, it should then update your position to your new location.
Try using the below code to get the user's current location (GEOLOCATION):
if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(function (position) { initialLocation = new google.maps.LatLng(position.coords.latitude, position.coords.longitude); map.setCenter(initialLocation); }); }
For showing an example, I've removed your php code. Check this JSFiddle
Hope you understand.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With