php倒计时防刷新

<?php
    //php的时间是以秒算。js的时间以毫秒算
    date_default_timezone_set("Asia/Hong_Kong");//地区
    //配置每天的活动时间段
    $starttimestr = "09:00:00";
    $endtimestr = "14:20:00";

    $starttime = strtotime($starttimestr);
    $endtime = strtotime($endtimestr);
    $nowtime = time();
    if ($nowtime<$starttime){
    die("活动还没开始,活动时间是:{$starttimestr}至{$endtimestr}");
    }
    $lefttime = $endtime-$nowtime; //实际剩下的时间(秒)
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>PHP实时倒计时!</title>
</head>
<body>
<h1><strong id="RemainH">XX</strong>:<strong id="RemainM">XX</strong>:<strong id="RemainS">XX</strong></h1>
</body>

<script type="text/javascript">
    var runtimes = 0;
    function GetRTime(){
        var nMS = <?=$lefttime?>*1000-runtimes*1000; //等价于 <? echo $lefttime?>*1000-runtimes*1000;
        if(nMS<0){
            return false;
        }
        var nH=Math.floor(nMS/(1000*60*60))%24;
        var nM=Math.floor(nMS/(1000*60)) % 60;
        var nS=Math.floor(nMS/1000) % 60;
        document.getElementById("RemainH").innerHTML=nH;
        document.getElementById("RemainM").innerHTML=nM;
        document.getElementById("RemainS").innerHTML=nS;
        runtimes++;
        setTimeout("GetRTime()",1000);
        if(nH==0&&nM==0&&nS==0){
            alert(‘时间结束!‘);
            return false;
        }
    }
    window.onload=GetRTime;
</script>
</html>
时间: 2024-11-05 00:42:12

php倒计时防刷新的相关文章

倒计时防刷新功能

原理很简单:页面加载的时候会从cookie中获取值,如果获取不到就设定一个值,然后存入cookie中,设置一个定时器,每秒存入cookie一次,页面刷新的时候会从cookie中获取存入的值,直到时间为0 当然你也可以使用localShortage存储 下面是代码 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-

防刷新倒计时JS代码

<SCRIPT type="text/javascript">var exam_time=${testPaper.examTime*60};//获取后台传的时间if(window.name==''){maxtime = exam_time;      //此处几句判断是防刷新关键}else{maxtime = window.name;} function CountDown(){    if(maxtime>=0){    hours = Math.floor(max

Jquery插件 防刷新倒计时 “点击获取验证码后60秒内禁止重新获取

Jquery插件实现"点击获取验证码后60秒内禁止重新获取(防刷新)" 效果图: 先到官网(http://plugins.jQuery.com/cookie/)下载cookie插件,放到相应文件夹,代码如下: 1 <style type="text/css"> 2 * {margin: 0; 3 padding: 0; 4 font-family: "Microsoft Yahei"; 5 } 6 .captcha-box { 7 w

发送短信验证码倒计时&amp;&amp;防止刷新

html代码 <input type="button" id="btn" class="sms-btn" onclick="sendPh()" value='获取验证码' /> js代码 倒计时function timekeeping(){//把按钮设置为不可以点击$('#btn').attr("disabled", true);var interval=setInterval(function

Tab 防刷新

今天发现项目中有个小毛病,就是tab老是刷新,就上网Copy了一份防止刷新的Tab例子,谢咯. 贴上来参考一下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml&

点击获取验证码后60秒内禁止重新获取(防刷新)

<script> $(function(){ /*防刷新:检测是否存在cookie*/ if($.cookie("captcha")){ var count = $.cookie("captcha"); var btn = $('#getting'); btn.val(count+'秒后可重新获取').attr('disabled',true).css('cursor','not-allowed'); var resend = setInterval(f

考试防刷新、切屏效果实现

情景 在线考试模块这样一个需求: 避免学生用电脑查答案, 需要系统防止刷新.切屏或改变窗口大小,当达到次数后自动交卷. 实现  1,仿刷新.    因为浏览器都自带了刷新返回等按钮,因此只想到了弹出窗口的形式. /* * @param url 考试界面的链接 * @param name 新窗口的名称,没有可填空 * 属性menubar=no 新窗口隐藏菜单栏,防刷新即基本实现 */ window.open( url, name, "menubar=no" ) 没那么完美,鼠标点刷新按钮

js防刷新的倒计时代码

最近在维护考试系统,在进行考试测试时无意中点击了刷新按钮,但是上面的倒计时并没有受到影响,同时在几篇博客中也有这样的例子,所以我想看看它到底是怎样防止刷新的. 如果是用cs代码写,我们可能会很快的写出来怎样防止刷新,可是我们要进行前段开发,考试是在页面上进行的,这里就要用到我们学到的js了. <span style="font-family:KaiTi_GB2312;font-size:18px;"><!DOCTYPE html PUBLIC "-//W3C

Jquery 插件防刷新 60秒倒计时

//先到官网(http://plugins.jQuery.com/cookie/)下载cookie插件,放到相应文件夹,代码如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <title>