我正在使用 Google Maps 制作一张地图,该地图可以加载带有存储在数据库中的 lat/lng 数据的标记。我希望用户可以通过单击按钮加载三个不同的“层”。单击该按钮时,将在服务器上执行一个 php 函数,根据数据库上的信息创建一个 xml 文件。然后调用 AJAX 函数来提取此 xml 数据,然后使用该数据创建地图标记。有没有办法将变量从 AJAX 中的 javascript 传递给 PHP,而不是为每个“层”使用单独的 PHP 函数(除了 SQL 查询行之外,这将是同一件事)?
问问题
31924 次
5 回答
10
如果您使用 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'];
于 2012-10-16T21:21:51.583 回答
7
请试试这个:
我们可以将值从 javascript 传递给 PHP。
我们可以使用,
$getValue = "<script>document.write(your script variable);</script>";
于 2012-10-16T20:54:38.050 回答
1
如果您使用以下 url 执行 ajax get 请求
somePhpFile.php?varName=10
在你的 somePhpFile.php 中,你可以做
$v = $_GET['varName'];
于 2012-10-16T20:50:47.383 回答
1
这是 Mike Williams 的 (v2) 关于“AJAX 哲学”的教程,他完全按照您的要求进行操作。
(我应该注意地图使用 Google Maps API v2,但这个概念不是特定于 API 版本的)
于 2012-10-16T21:21:33.247 回答
1
引用 Vijay S 的话:
请试试这个:
我们可以将值从 javascript 传递给 PHP。
我们可以使用,
$getValue = echo "<script>document.write(your script variable);</script>";
稍微修改了一下,对我来说效果很好:
$getValue = "<script>document.write(YourVarHere);</script>";
echo $getValue;
于 2015-07-16T09:44:31.710 回答