php - 在php中设置cookie
问题描述
我有一个脚本可以计算 2 个本地人之间的距离,我想将距离变量插入 cookie 以供以后使用。
该脚本工作得很好,但是当它应该设置 cookie 时没有任何反应。
这是我当前的代码 - 在我的本地服务器中它工作正常,但在生产服务器中却不行。我的代码在两台服务器上没有区别。
<?php
if (isset($_GET['submit'])) {
$origin = $_GET['origin'];
$destination = $_GET['destination'];
/* In imperial unit
$distance_data = file_get_contents('https://maps.googleapis.com/maps/api/distancematrix/json?units=imperial&origins='.urlencode($origin).'&destinations='.urlencode($destination).'&key=AIzaSyBg8mazOCFsHlsOfTClG9Cugb1ddBPfldU');
*/
// In metric unit. This is default
$distance_data = file_get_contents('https://maps.googleapis.com/maps/api/distancematrix/json?&origins='.urlencode($origin).'&destinations='.urlencode($destination).'&key=AIzaSyBg8mazOCFsHlsOfTClG9Cugb1ddBPfldU');
$distance_arr = json_decode($distance_data);
if ($distance_arr->status=='OK') {
$destination_addresses = $distance_arr->destination_addresses[0];
$origin_addresses = $distance_arr->origin_addresses[0];
} else {
echo "<p>The request was Invalid</p>";
exit();
}
if ($origin_addresses=="" or $destination_addresses=="") {
echo "<p>Destination or origin address not found</p>";
exit();
}
// Get the elements as array
$elements = $distance_arr->rows[0]->elements;
$distance = $elements[0]->distance->text;
$duration = $elements[0]->duration->text;
setcookie("distance",$distance,time()+100);
echo "From: ".$origin_addresses."<br/> To: ".$destination_addresses."<br/> Distance: <strong>".$distance ."</strong><br/>";
echo "Duration: <strong>".$duration."";
}
?>
解决方案
推荐阅读
- javascript - React:获取 input[type=text] 的值并输出该值
- node.js - 亚马逊 ec2 实例上的 JavaScript HTTP 请求失败
- python - 用于简单 python 字典的 Django Rest API
- javascript - 为每个 Json 对象创建饼图
- api - How can I prevent anybody sending requests to my server?
- java - 在 Java 中将字符添加到字符数组
- telegram - 电报importContacts方法不起作用
- ajax - 从 Ajax 调用中获取提交按钮的值
- python-3.x - Python 3.8:从基本目录的 Jupyter Notebook 运行不同的 Python 环境时出错
- php - 在 MySQL 表中使用 DateTime 和 date 的日期格式不同