问题描述
- php倒计时问题,求各位帮助,小弟卡了好久了,万分感谢?
-
public function lbwRegNewCount(){
$uid = $this->is_login(); //拿到用户id
$data['id']=$uid; //赋值用户id
$user_cTime = D('User')->where($data)->getField('ctime'); //取出用户创建时间
$datacig['name']="LBW_REGTIME_DJ"; //系统规定时间
$lbw_config_time=D('SystemConfig')->where($datacig)->getField('value');
//在数据库里查找系统规定时间,然后加上用户创建时间 等于用户有效时间
$lbw_end_time=date('y-m-d h:i:s', strtotime ("+".$lbw_config_time." minute", $user_cTime));
date_default_timezone_set("Asia/Shanghai");//地区
$zero1=time(); //当前时间
$zero2=strtotime ($lbw_end_time);//$lbw_end_time); //用户有效时间
//然后倒计时开始,从用户注册开始到系统规定时间内倒计时!
$h=ceil((($zero2-$zero1)%86400)/3600);
$m=ceil((($zero2-$zero1)%3600)/60);
$s=ceil(($zero2-$zero1)%60);
if ($nowtime>$endtime){
echo "您的账号已冻结".$endtime;
}else {echo "还剩:".$d."天".$h."时".$m."分".$s."秒".$lbw_end_time; } }
这是小弟写的倒计时功能,需求是在系统规定的时间内用户要激活,并且显示用户激活的倒计时,比如系统设置了24个小时内必须激活,
我是用系统设置时间 加上用户注册时间,在减去当前时间,通过前台js ajax每秒访问来进行倒计时的!
问题来了!不知道为什么,倒计时时间怎么调都是错误的,按照上面的写法,假如用户 是2016-4-25 10:08:26注册的,加上24个小时 是2016-4-26 10:08:26 然后不断用这个
时间去和当前时间做运算 ,就是用上面的方法,但是倒计时出现的时间总不对
解决方案
少了个$d吧。。。少了个$d吧。。。少了个$d吧。。。
解决方案二:
$d没有定义啊。。。。。。。。
解决方案三:
哈哈~ 疏忽了吧,$d 没定义。
时间: 2024-09-10 02:31:00