我正在做一个学校项目,一个圣诞日历,每天都会有一个新的插槽打开圣诞节等等。但是我很难找到一个很好的方法来获取当前的日期/时间,以确保人们无法在插槽设置日期之前打开插槽。所以要么我必须得到服务器的时间,我要托管网站,要么我必须以某种方式从其他网站获取当前时间/日期。 或者如果您有任何建议。
答案 0 :(得分:0)
我建议通过服务器获取日期。您无法使用Javascript(Same Origin Policy means that JS can only send AJAX requests to the same domain)从其他服务器获取数据。如果您想从服务器获取时间,请使用date()在PHP中完成。但是,对于大多数用例,您只需使用客户端时间,获取日期client side,然后在PHP端验证此日期
答案 1 :(得分:0)
您可以在页面的服务器端创建一个小脚本。只需让客户端将时间发送到服务器,服务器就会检查是否允许打开元素。
另一方面,我认为你应该有类似AJAX请求的东西来获取门后的“礼物”,因为你不应该在页面代码中有它。如果时机成熟,为什么不检查服务器上的AJAX请求?
编辑:
其他想法:
在门15后面你可以有一个像getDataForDay.php?day=15
这样的AJAX请求,在你的脚本上你可以检查它是否是第15天并返回礼物的html,如果没有发送错误状态,如“错误的一天”
EDIT2:
另一方面,你的“问题”的另一种观点。我不知道你想隐藏在门后的东西,蝙蝠也许它不是重要的东西(比如奖品)和只有图片或文字等有趣的东西。 在那种情况下,我只会使用js在客户端制作一切。如果用户想要“欺骗”操纵门,那么他就会感受到他的乐趣以及这种日历背后的理想。
(你家里的巧克力日历也没有时间锁); - )
答案 2 :(得分:0)
您应该在应用程序的服务器端执行基于日期的整个拒绝策略。用户可以随时使用客户端JavaScript或客户端与服务器之间的通信。