var result = []
var tmp
while(tmp = arr.shift()){
if(result.length == 0){
result.push([tmp])
continue
}
var e = result[result.length - 1]
if(tmp == e[e.length - 1] + 1){
e.push(tmp)
}else{
result.push([tmp])
}
}
console.log(result)
数据表里存储两个字段,一个int存时间戳,一个int存签到计数。每次签到发生时,php页面做判断,计算本次签到时间戳与系统记录的最后一次签到时间戳之差,超过3600*24,则将计数修改为零,否则+1。sql语句就不写了吧,就一个update的事情。。。
首先,如果判断时间要求严格统一,请用server时间做判断,也就是给java来判断如果可以用客户端时间,当然有漏洞,万一客户端修改时间就麻烦了
所以要做到统一,这个判断方法有两种都是交给java来判断
一是点击按钮发送ajax请求给服务器
二是点击按钮直接提交表单给服务器
当然如果是要直接在服务器上签到,那就可以直接用js来做了
js获取时间
var t1 = new Date(),//当前时间
t2 = t1,
t3 = t1
t2.setHours(8,0,0)//将日期转换为当天8:00
t3.setHours(7,30,0)//将日期转换为当天8:00
//下面进行日期比较就可以了
.....