Segue o script.
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=true"></script> <script> var initialLocation; var brasilia = new google.maps.LatLng(-15.780111,-47.9291899); var browserSupportFlag = new Boolean(); function initialize() { var myOptions = { zoom: 15, mapTypeId: google.maps.MapTypeId.HYBRID }; var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions); // Try W3C Geolocation (Preferred)a if(navigator.geolocation) { browserSupportFlag = true; navigator.geolocation.getCurrentPosition(function(position) { initialLocation = new google.maps.LatLng(position.coords.latitude,position.coords.longitude); map.setCenter(initialLocation); }, function() { handleNoGeolocation(browserSupportFlag); }); // Try Google Gears Geolocation } else if (google.gears) { browserSupportFlag = true; var geo = google.gears.factory.create('beta.geolocation'); geo.getCurrentPosition(function(position) { initialLocation = new google.maps.LatLng(position.latitude,position.longitude); map.setCenter(initialLocation); }, function() { handleNoGeoLocation(browserSupportFlag); }); // Browser doesn't support Geolocation } else { browserSupportFlag = false; handleNoGeolocation(browserSupportFlag); } function handleNoGeolocation(errorFlag) { if (errorFlag == true) { alert("O serviço de geolocalização falhou."); initialLocation = brasilia; } else { alert("Seu browser não suporta geolocalização. Você verá Brasília."); initialLocation = brasilia; } map.setCenter(initialLocation); } } window.onload = function(){ initialize(); } </script> <div id="map_canvas" style="width:600px; height:400px"></div>
Na terceira linha do segundo script vocês podem ver que eu coloquei uma latitude e uma longetude a qual leva até Brasília então caso o script não consiga pegar a localização do usuário ele determinará esse ponto como padrão na linha 5 depois da function initialize() eu indiquei o ID da div que vai receber as imagens do Google que no caso foi map_canvas esse é um padrão utilizado pelo Google.
Esse é o resultado produzido por esse script:
Vamos para o Segundo exemplo.
O segundo exemplo é basicamente o mesmo do primeiro porem vamos ter identificar o endereço de ip do usuário enviar par o geoplugin e como retorno receberemos os dados do ip disponibilizado pelo mesmo segue o script.
Segue o Script.
<?php $ip = $_SERVER['REMOTE_ADDR']; // pego o endereço de IP ini_set("allow_url_fopen", 1); $response = file_get_contents("http://www.geoplugin.net/php.gp?ip=$ip"); ini_set("allow_url_fopen", 0); $array = var_export( unserialize ( $response ), 1); eval( '$array = '. $array .';'); $data = new stdClass(); // latitude e longitude $lt = $data->lat = $array['geoplugin_latitude']; $lg = $data->long = $array['geoplugin_longitude']; ?> <br> <br> <html> <head> <meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> <script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script> <script type="text/javascript"> function initialize() { var latlng = new google.maps.LatLng(<?php echo $lt; ?>, <?php echo $lg; ?>); var myOptions = { zoom: 11, center: latlng, mapTypeId: google.maps.MapTypeId.HYBRID }; var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions); } </script> </head> <body> <?php echo "Você esta em :"; echo $data->city = $array['geoplugin_city']; echo ", "; echo $data->region = $array['geoplugin_region']; echo ", "; echo $data->country = $array['geoplugin_countryName']; echo " - "; echo $data->countrycode = $array['geoplugin_countryCode']; ?> </body> </head> <body onLoad="initialize()"> <div id="map_canvas" style="width:30%; height:30%"></div> </body> </html>
Esse é o resultado produzido por esse script
Bom pesso é isso ai qual quer dúvida ja sabem é so postar ai que vou estar fazendo o maximo para responder!
Nenhum comentário:
Postar um comentário