Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/404.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从JavaScript中获取一个lat/long对,用于PHP中的date_sunset_Php_Javascript_Date - Fatal编程技术网

从JavaScript中获取一个lat/long对,用于PHP中的date_sunset

从JavaScript中获取一个lat/long对,用于PHP中的date_sunset,php,javascript,date,Php,Javascript,Date,我决定根据一天中的时间做一次雄心勃勃的情绪改变。我需要得到时间,并将它与任何一天的日落和日出进行比较 到目前为止,我已经找到了一些运行良好的javascript。谁能告诉我如何给PHP函数date\u sunset赋予lat和long?我使用$\u SERVER['REMOTE\u ADDR']在PHP变量中拥有IP,但这就是我所拥有的。我真的不能做很多其他的事情,因为我从未使用过这个函数,也从未尝试过将PHP和JS结合起来。有什么想法吗 --更新-- 我一直在尝试使用jQuery$.ajax函

我决定根据一天中的时间做一次雄心勃勃的情绪改变。我需要得到时间,并将它与任何一天的日落和日出进行比较

到目前为止,我已经找到了一些运行良好的javascript。谁能告诉我如何给PHP函数date\u sunset赋予lat和long?我使用
$\u SERVER['REMOTE\u ADDR']
在PHP变量中拥有IP,但这就是我所拥有的。我真的不能做很多其他的事情,因为我从未使用过这个函数,也从未尝试过将PHP和JS结合起来。有什么想法吗

--更新--

我一直在尝试使用jQuery$.ajax函数。这是我的密码

<script language="JavaScript">
var lat = geoip_latitude();
var long = geoip_longitude();
$(document).ready(function(){
   //var url = 'http://www.ransomedesign.co.uk/web/?lat=' + lat + '&long='+ long;
   // $.get(url);
  $.ajax({
  type: "GET",
  data: { lat:lat, long:long},
  url: "http:www.ransomedesign.co.uk/web/",
  success: function() { alert("you win"); }
  })
});
</script>

var lat=geoip_纬度();
var long=geoip_经度();
$(文档).ready(函数(){
//var url='1〕http://www.ransomedesign.co.uk/web/?lat=“+lat+”&long=“+long;
//$.get(url);
$.ajax({
键入:“获取”,
数据:{lat:lat,long:long},
网址:“http:www.ransomedesign.co.uk/web/”,
成功:函数(){alert(“you win”);}
})
});
这里有两种不同的方法。(第一个被注释掉)。这确实填充了我的$_服务器php代码,但仅在我的站点的第二个页面请求时。我真的需要在任何东西加载之前,在第一次访问时处理这个。在此之后,该值将存储在会话中,php将执行其余操作

有人能看出这个代码有什么问题吗?或者为什么它不能立即工作?我的php如果在这之后,是正确的吗


非常感谢…

给出了这个片段,您将有两个变量,
geoip\u纬度
,和
geoip\u经度
。将这些变量放入对服务器的AJAX调用中,然后服务器将执行以下计算:

html:


$(“#日落”).load(“/path/to/script.php?lat=”+geoip_lation+”&lon=”&geoip_longitude);
php:


我会使用AJAX来实现这一点。您使用GeoIP JavaScript,因此首先获取
lat
long

var lat = geoip_latitude () ;
var long = geoip_longitude () ;
然后将其发送到服务器脚本,例如
mood.php

var xhr = new XMLHttpRequest () ;
xhr . onreadystatechange = function ()
{
   if ( xhr . readyState == 4 && xhr . status == 200 )
   {
      // do something with server response
   }
}
xhr . open ( "POST", "mood.php", true ) ;
xhr . setRequestHeader ( "Content-type", "application/x-www-form-urlencoded" ) ;
xhr . send ( "lat=" + lat + "&long=" + long ) ;
而mood.php可能看起来像:

<?php
   $lat = $_POST [ "lat" ] ;
   $long = $_POST [ "long" ] ;

   echo "something depending on lat and long" ;
?>
若服务器发送XML内容,那个么您可以调用
xhr。responseXML
-它使用原生XML解析器


这个问题本身没有答案,我最终在我的主机上安装了一个PHP模块和.dat文件。AJAX确实起作用了,但只是在我的网站的一个页面被访问之后——遗憾的是,这没有用。谢谢大家的帮助。

真的,你只需要担心纬度。非常感谢你的回复。我会看看这篇文章,然后想办法做些什么。谢谢你,我会看看这两篇文章的回复,然后想办法做些什么。我从未使用过AJAX,尽管jQuery已经在我的网站上启动并运行了其他功能。嗨,我只是想让它工作起来——在评论中说,对服务器响应做些什么,我应该放什么?到目前为止,我已经将其设置为在我的WordPress主题中将变量发送到header.php,它不会返回任何内容…嗨,我现在尝试以稍微不同的方式来执行此操作,我尝试使用get将值获取到php会话中。lat和long由AJAX添加到URL中。我仍然有一些问题,虽然,我已经更新了我原来的职位,如果你想看看。。。
var xhr = new XMLHttpRequest () ;
xhr . onreadystatechange = function ()
{
   if ( xhr . readyState == 4 && xhr . status == 200 )
   {
      // do something with server response
   }
}
xhr . open ( "POST", "mood.php", true ) ;
xhr . setRequestHeader ( "Content-type", "application/x-www-form-urlencoded" ) ;
xhr . send ( "lat=" + lat + "&long=" + long ) ;
<?php
   $lat = $_POST [ "lat" ] ;
   $long = $_POST [ "long" ] ;

   echo "something depending on lat and long" ;
?>
xhr . onreadystatechange = function ()
{
   if ( xhr . readyState == 4 && xhr . status == 200 )
   {
      alert ( "Server response: " + xhr . responseText ) ;
   }
}