【问题标题】:How to pass parameters to URL and retrieve with PHP?如何将参数传递给 URL 并使用 PHP 进行检索?
【发布时间】:2015-08-11 02:36:05
【问题描述】:

我注意到有很多这样的问题,但我找不到与我的特定项目相关的东西。我正在构建一个 Instagram 和谷歌地图应用程序。我要做的是使用 PHP 从 Instagram 中提取所有 JSON 格式的端点。使用 Google 地图,我添加了此特定 API 调用通过的经度和纬度坐标,以便您可以看到用户在创建照片时拍摄照片的位置。我正在使用Google's event methods 我可以使用parent.location.hash 函数将经度和纬度坐标居中到URL。

 google.maps.event.addListener(map, 'center_changed', function(){
        var control_center = map.getCenter();
        var lng = control_center.lng();
        var lat = control_center.lat();
        parent.location.hash="&lng="+lng +"&lat="+lat;
        $('.lng').append(lng);
        console.log(map.getCenter());
        console.log(lng +', ' +lat);
      }); 

我现在遇到的问题是,当我尝试使用 PHP $_GET 检索 lng 和 lat 时,它不起作用。我发现是因为它是一个片段,它永远不会被发送到服务器。我发现了其他提示和技巧,例如parse_url,但这与一个字符串相呼应。这是当有人在视口中搜索并移动 Google 地图时当前 URL 的样子的 sn-p -> api.php?location=houston#&lng=-95.34908043923292&lat=29.74942788453117

此 API 混搭背后的概念是您有一个搜索框,然后输入德克萨斯州休斯顿。谷歌地图将加载来自 Instagram 的提要,其中显示的坐标位于德克萨斯州休斯顿市内。该地图将显示这些照片的确切拍摄位置。您移动地图,我们希望显示更多 Instagram 照片,但我无法将 lng 和 lat 变量传递给 instagrams api。这篇有点长,见谅。

Pastebin

【问题讨论】:

  • 您可以创建另一个 PHP 脚本(我们称之为代理),它从 instagram 中检索所需的数据并通过 AJAX 请求此脚本
  • 我对 AJAX 了解不多。但我已经简要地研究过了。

标签: javascript php google-maps google-maps-api-3 instagram-api


【解决方案1】:

你可以试试这个并告诉我,

$url=parse_url("http://domain.com/api.php?location=houston#&lng=-95.34908043923292&lat=29.74942788453117");

$myurl = $url["fragment"];
 echo $myurl;

更新,获取单个变量

 $url=parse_url("http://domain.com/api.php?location=houston#&lng=-95.34908043923292&lat=29.74942788453117");

$myurl = $url["fragment"];

echo $myurl.'<br>';

parse_str($myurl);

echo $lng.'<br>';
echo $lat;

【讨论】:

  • 你读过这个吗?:我发现是因为它是一个片段,它永远不会被发送到服务器
  • 但是您可以使用 $url["fragment"], 获取存储在变量中的片段或以任何方式使用它,
  • 我试过了。它创建一个长字符串。我需要能够分别获得 lat 和 lng。
  • @JoseGomez 检查更新后的答案,效果很好:)
  • @ashish: 这个变量是怎么从JS传到PHP的?
猜你喜欢
  • 2019-11-11
  • 1970-01-01
  • 2015-02-12
  • 1970-01-01
  • 2012-10-28
  • 1970-01-01
  • 2015-12-10
  • 2022-06-10
  • 2019-07-07
相关资源
最近更新 更多