我正在尝试使用从ajax post请求收到的日期将日期存储在数据库中。邮寄请求成功,收到的日期格式正确。 控制台中的“网络”选项卡显示发布日期的格式数据:
start:Mon Mar 07 2016 00:00:00 GMT+0000
end:Thu Mar 10 2016 00:00:00 GMT+0000
然而,当我使用以下php代码将其保存在数据库中时,它只保存在今天的日期:
$json_array["start"]=json_decode($_POST["start"], true);
$json_array["end"]=json_decode($_POST["end"], true);
$start = new DateTime($json_array['start']);
$end = new DateTime($json_array['end']);
$start =$start->format("Y-m-d H:i:s");
$end =$end->format("Y-m-d H:i:s");
当我使用它时,它会在1969年12月31日晚上7点保存它:
$json_array["start"]=json_decode($_POST["start"], true);
$json_array["end"]=json_decode($_POST["end"], true);
$start =date("Y-m-d H:i:s",$json_array["start"]);
$end =date("Y-m-d H:i:s",$json_array["end"]);
任何人都可以指导我错在哪里,我感谢您的帮助。
答案 0 :(得分:0)
我不相信发布的数据是json,而只是一个简单的字符串 (你的评论告诉我,我是对的)
所以删除json_decode
Xamarin.Forms.View
并将以下行更改为
$json_array["start"]=json_decode($_POST["start"], true);
$json_array["end"]=json_decode($_POST["end"], true);
你应该没事!
当然你应该首先检查那个POST中的内容并检查错误,isset()aso ..... in real life code