我将网站上传到服务器时遇到问题。我有这个PHP脚本来获取通过该URL的时区。
$ipInfo = file_get_contents('http://ip-api.com/json');
$ipInfo = json_decode($ipInfo);
我的问题是它返回美国/芝加哥的时区。但是,当我直接访问地址栏的URL时,它会返回正确的时区
答案 0 :(得分:6)
ip-api.com根据请求来自的IP响应数据。如果您在菲律宾并且正在访问该网站,那么您将会看到有关您自己的信息。如果您的服务器位于美国并且正在从该网站请求,则它会看到有关本身的信息。
如果您希望服务器检索有关访问该客户端的客户端的信息,则必须传递访问客户端的IP。根据{{3}},您可以将其附加到网址:
$list = '';
while($row = $result->fetch_assoc()){
$title = $row['title'];
$id = $row['id'];
$summary = $row['summary'];
//I'm assuming you want each link to be different here...
$list.='<div class="Select_Course"><form name="courseselect" method="post" action="selectedcourse.php">
<input type="submit" name="subsearch" value="' .$title. '" id="button">
<input name="submitcourseselection" type="text" value="'.$title.'"hidden>
</form>
<p>' . $summary . '</p></div>';
}
答案 1 :(得分:0)
http://ip-api.com/json/
不再工作(至少对我而言)
我最终使用了这个:
curl -s http://geoip.ubuntu.com/lookup | grep -oP '(?<=<TimeZone>)(.*)(?=</TimeZone>)'