Jump to content

Undefined error


thilakan

Recommended Posts

Undefined  error

Why I am getting this error?

 

What I am trying archive - 

       I want to get the client location and stored in the database

 

Please advise me.

Thank you.

<!DOCTYPE html>
<html>
<body>


<script>


function geoFindMe() {
  var output ;

  if (!navigator.geolocation){
     output.innerHTML = "<p>Geolocation is not supported by your browser</p>";
    return;
  } else {

  function success(position) {
    var latitude  = position.coords.latitude;
    var longitude = position.coords.longitude;

     return(output.innerHTML = '<p>Latitude is ' + latitude + '° <br>Longitude is ' + longitude + '°</p>');

  };

  function error() {
    output.innerHTML = "Unable to retrieve your location";
  };


  navigator.geolocation.getCurrentPosition(success, error);
  
  }
}

var x = geoFindMe();
alert(x);
</script>

</body>
</html>

Link to comment
https://forums.phpfreaks.com/topic/291409-undefined-error/
Share on other sites

getCurrentPosition makes an asynchronous call to a service to determine location (assuming user accepts the popup prompt to allow it).  So, you can't just assign it to x and get immediate results.  It's just like doing an AJAX call where you have a callback function (success) when results are returned.  So, you need to refactor your code to wait for success (or error) to be called.  You can use pretty much any AJAX tutorial / script for tips/principles on how to work with async calls. 

Link to comment
https://forums.phpfreaks.com/topic/291409-undefined-error/#findComment-1492607
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.