【问题标题】:Pass variable from javascript to PHP将变量从 javascript 传递到 PHP
【发布时间】:2012-10-07 01:14:07
【问题描述】:

我正在使用 Google Maps 制作地图,该地图可以加载带有存储在数据库中的 lat/lng 数据的标记。我希望用户可以通过单击按钮加载三个不同的“层”。单击该按钮时,将在服务器上执行一个 php 函数,从数据库上的信息创建一个 xml 文件。然后调用 AJAX 函数来提取此 xml 数据,然后使用该数据创建地图标记。 有没有一种方法可以将 AJAX 中的 javascript 中的变量传递给 PHP?

【问题讨论】:

    标签: php javascript ajax google-maps


    【解决方案1】:

    如果您使用 AJAX 请求,将变量传递给 php 文件非常容易。这是一个简单的例子。

     $('#your-button').on("click", function(){
           var somevar1 = "your variable1";
           var somevar2 = "your variable2";
        $.ajax({
            type:"POST",
            url: "your-phpfile.php",
            data: "variable1=" + somevar1 + "\u0026variable2="+ somevar2,
            success: function(){
            //do stuff after the AJAX calls successfully completes
        }
    
        });
    });
    

    然后在您的 php 文件中,您可以使用

    简单地访问变量
     $ajax_var1 = $_POST['variable1'];
     $ajax_var2 = $_POST['variable2'];
    

    【讨论】:

    • 你也可以这样传递数据。 $.ajax({ type:"POST", url: "your-phpfile.php", data: {var1: 'val', var2: 'val2'}, success: function(){}。我总是这样做将数据传递给我的 PHP 脚本的方法。
    • 在看到这段漂亮的代码之前,我一直在和自己作斗争。谢谢老兄!
    【解决方案2】:

    请试试这个:

    我们可以将值从 javascript 传递给 PHP。

    我们可以作为,

    $getValue = "<script>document.write(your script variable);</script>";
    

    【讨论】:

      【解决方案3】:

      这是 Mike Williams 在 "The AJAX Philosophy" 上的 (v2) 教程,他完全按照您的要求进行操作。

      (我应该注意地图使用 Google Maps API v2,但这个概念不是特定于 API 版本的)

      【讨论】:

        【解决方案4】:

        如果您使用以下 url 执行 ajax get 请求

        somePhpFile.php?varName=10
        

        在你的 somePhpFile.php 中,你可以这样做

        $v = $_GET['varName'];
        

        【讨论】:

          【解决方案5】:

          来自 Vijay S 的引述:

          请试试这个:

          我们可以将值从 javascript 传递给 PHP。

          我们可以作为,

          $getValue = echo "&lt;script&gt;document.write(your script variable);&lt;/script&gt;";

          稍微修改了一下,对我来说效果很好:

          $getValue = "<script>document.write(YourVarHere);</script>";
          echo $getValue;
          

          【讨论】:

            猜你喜欢
            • 2017-06-30
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2010-11-02
            • 2016-11-09
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多