如何在PHP代码中使用JavaScript代码

How to Use JavaScript code in PHP code

本文关键字:代码 JavaScript PHP      更新时间:2023-09-26

我想知道用户在我的应用程序中的当前位置。为此,我必须使用

我的PHP代码中的地理位置代码。但是我不知道如何在PHP代码中使用JavaScript代码。

Geolocation的JavaScript代码如下。

      function displayLocation(loc){
      var lat = loc.coords.latitude;
      var lon = loc.coords.longitude;
      }
      function getLocation(){
      navigator.geolocation.getCurrentPosition(displayLocation);
      }
    $(document).ready(function(){
    getLocation();
    });

我想将这些纬度和纬度值分配给我的 PHP 变量纬度和经度。

为此,我必须知道如何在php中使用JavaScript代码以及如何分配JavaScript值到 PHP 变量。

如果有任何建议来完成此任务,请告诉我。

              Thanks.......

您不能将 javascript 值分配给 PHP 值,因为 javascript 在客户端运行,PHP 在服务器端运行。

您需要使用简单的 POST/GET 操作或 ajax 将纬度和经度值发送回服务器。

获取用户的位置:

<script type="text/javascript">
    function displayLocation(loc){
      var lat = loc.coords.latitude;
      var lon = loc.coords.longitude;
      $("#lat").val(lat);
      $("#lon").val(lon);
    }
    function getLocation(){
      navigator.geolocation.getCurrentPosition(displayLocation);
    }
    $(document).ready(function(){
      getLocation();
    });
</script>

将位置值放入表单中,然后将其提交到服务器端:

<form action="coordinates.php" method="post" id="cform">
  Latitude: <input type="text" name="lat" id="lat" value=""><br>
  Longitude: <input type="text" name="lon" id="lon" value=""><br>
  <input type="submit" name="submit" value="Send data">
</form>

从以下形式处理用户在 PHP 中的位置:

<?php
  $lat = $_POST["lat"];
  $lon = $_POST["lon"];
  echo "Your location is: " . $lat . ", " . $lon;
?>

JSFiddle 演示

上述代码的 Ajax 示例:

$.post("coordinates.php", $("#cform").serialize(), function(result){
    // code executed here when we get response from the server
    alert(result);
});