【发布时间】:2011-12-21 19:14:35
【问题描述】:
如何将 jQuery 回调函数的值传递给 PHP 脚本以进行进一步验证?在这里,我从 getJSON 函数接收纬度和经度。我需要使用这些值来访问数据库,在其中将它们与现有坐标进行比较以找到附近的位置;即邻近搜索。
$('#form_map').submit(function() {
var pc = $('#post_code').val();
if(pc != '') {
$.getJSON('/mod/gg.php?pc='+pc, function(data) {
lat = data.results[0].geometry.location.lat;
lng = data.results[0].geometry.location.lng;
});
}
return false;
});
我想获取 lat / lng 的值并将它们转换为 php 变量。这是一个邻近搜索。首先将用户输入的地址转换为坐标,然后通过 PHP 脚本访问数据库。我需要从 JSON 数组返回的坐标可用作 PHP 变量,以便它们可以访问数据库。
<?php
if(isset($lat) && isset($lng)){
// Do something
}
收到 lat / lng 值后,我希望它们是 <php $lat = 'Value of callback funcion'; $lng = 'Same'; ?> 然后我可以运行 PHP 脚本的其余部分。我怎样才能做到这一点?谢谢。
【问题讨论】:
-
到目前为止,您有一个 javascript 函数将带有数据的表单提交到 /mod/gg.php,您是在问如何在 php 中使用表单数据,还是从 gg.php 获取数据处理后返回javascript?
-
在使用 jQuery 时切勿将 GET/POST 数据作为字符串传递。您可以将 JavaScript 对象作为键/值列表传递:
$.getJSON('/mod/gg.php', {pc: pc}, function(data) { ... }) -
注明。但是,如何将函数(数据)结果传递给 PHP 脚本?如果我实际上不能使用坐标来搜索数据库,那将毫无意义。这甚至是可能的还是一种奇怪的方法?
-
gg.php可以处理“PHP 脚本的其余部分”(数据库坐标搜索)中的任何内容吗?