我通过HTML从用户那里获得数据,我必须在不同的时间段生成许多日期。
什么是最高效的?
用JS处理数据,然后通过hidden HTML
发送给服务器或
直接发送给服务器,在PHP上处理。
我必须在这个JS代码链接上做的事情之一的例子。
谢谢,
Date.prototype.addDays = function(days) {
var dat = new Date(this.valueOf())
dat.setDate(dat.getDate() + days);
return dat;
}
function getDates(startDate, stopDate) {
var dateArray = new Array();
var currentDate = startDate;
while (currentDate <= stopDate) {
dateArray.push(currentDate)
currentDate = currentDate.addDays(1);
}
return dateArray;
}
var dateArray = getDates(new Date(), (new Date()).addDays(2));
for (i = 0; i < dateArray.length; i ++ ) {
alert (dateArray[i]);
}
如果您想要快速,顺利的响应,请在客户端处理日期。
一般来说,对要存储在服务器上的任何数据进行服务器端验证。即使有客户端验证,也很容易有人向PHP脚本发送虚假数据。
<?php
date_default_timezone_set('America/Los_Angeles');
?>
您应该确保您的服务器配置正确,并将上面的代码与正确的时区一起使用。使用PHP getdate()
函数返回一个易于使用的关联数组。客户端是不可靠的,因为用户可以调整他们的系统时钟。当然,您必须考虑到用户的位置,以确定显示的时间调整。你可以使用Javascript的navigator.geolocation
和google.maps
API来获得用户的位置,但你可能需要支付谷歌根据你的使用。