这个是我的 方法,是个倒计时的方法:dypms.php<?php
//mssjsp function mssjdy($mssj){ date_default_timezone_set("PRC");//地区
//$starttimestr = "17:20:00";//设置活动开启时间
$endtimestr = $mssj;
$endtime = strtotime($endtimestr);
$nowtime = time();//获取当前服务器时间
$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></title> <script language="JavaScript"> var runtimes = 0;
function GetRTime(){
var nMS = <?=$lefttime?>*1000-runtimes*1000;
var nH=Math.floor(nMS/(1000*60*60))%24;
var nM=Math.floor(nMS/(1000*60)) % 60;
var nS=Math.floor(nMS/1000) % 60; if(nH<10){
nH = "0"+nH;
}
if(nM<10){
nM = "0"+nM;
}
if(nS<10){
nS = "0"+nS;
} document.getElementById("RemainH").innerHTML=nH; document.getElementById("RemainM").innerHTML=nM; document.getElementById("RemainS").innerHTML=nS;
if(nMS<=0){
document.getElementById("RemainH").innerHTML='00'; document.getElementById("RemainM").innerHTML='00'; document.getElementById("RemainS").innerHTML='00';
} runtimes++; setTimeout("GetRTime()",1000); } window.onload=GetRTime; </script> </head><body><strong id="RemainH">XX
</strong>:
<strong id="RemainM">XX
</strong>:
<strong id="RemainS">XX
</strong></body></html><?
}
?>我在另一个页面a.php进行调用,我是这样调用的,
include("dypms.php");
mssjdy("17:40:20");
现在的问题是,如果我在,在a.php这个页面调用一次是可以的,如果我在调用一次就出问题了,
include("dypms.php");
mssjdy("17:20:20");
意思就是 我在 a.php页面写入 两个调用 就会有一个不好用的。
a.phpinclude("dypms.php");
mssjdy("17:40:20");//第一次调用
mssjdy("17:20:20");//第二次调用
//mssjsp function mssjdy($mssj){ date_default_timezone_set("PRC");//地区
//$starttimestr = "17:20:00";//设置活动开启时间
$endtimestr = $mssj;
$endtime = strtotime($endtimestr);
$nowtime = time();//获取当前服务器时间
$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></title> <script language="JavaScript"> var runtimes = 0;
function GetRTime(){
var nMS = <?=$lefttime?>*1000-runtimes*1000;
var nH=Math.floor(nMS/(1000*60*60))%24;
var nM=Math.floor(nMS/(1000*60)) % 60;
var nS=Math.floor(nMS/1000) % 60; if(nH<10){
nH = "0"+nH;
}
if(nM<10){
nM = "0"+nM;
}
if(nS<10){
nS = "0"+nS;
} document.getElementById("RemainH").innerHTML=nH; document.getElementById("RemainM").innerHTML=nM; document.getElementById("RemainS").innerHTML=nS;
if(nMS<=0){
document.getElementById("RemainH").innerHTML='00'; document.getElementById("RemainM").innerHTML='00'; document.getElementById("RemainS").innerHTML='00';
} runtimes++; setTimeout("GetRTime()",1000); } window.onload=GetRTime; </script> </head><body><strong id="RemainH">XX
</strong>:
<strong id="RemainM">XX
</strong>:
<strong id="RemainS">XX
</strong></body></html><?
}
?>我在另一个页面a.php进行调用,我是这样调用的,
include("dypms.php");
mssjdy("17:40:20");
现在的问题是,如果我在,在a.php这个页面调用一次是可以的,如果我在调用一次就出问题了,
include("dypms.php");
mssjdy("17:20:20");
意思就是 我在 a.php页面写入 两个调用 就会有一个不好用的。
a.phpinclude("dypms.php");
mssjdy("17:40:20");//第一次调用
mssjdy("17:20:20");//第二次调用
<!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></title> </head>
<body><?php
//mssjsp function mssjdy($mssj,$i(要循环的次数)){
for($j=0;$j<$i;$j++){
date_default_timezone_set("PRC");//地区
//$starttimestr = "17:20:00";//设置活动开启时间
$endtimestr = $mssj;
$endtime = strtotime($endtimestr);
$nowtime = time();//获取当前服务器时间
$lefttime = $endtime-$nowtime; //活动开启 用结束的时间减去现在的时间 剩余倒计时的时间
//用php实现那段js
分别得到$HX,$MX,$SX
//end
?><strong id="RemainH<?php echo $i; ?>"><?php echo $HX; ?>
</strong>:
<strong id="RemainM<?php echo $i; ?>"><?php echo $MX; ?>
</strong>:
<strong id="RemainS<?php echo $i; ?>"><?php echo $SX; ?>
</strong>
<?
}}
?> </body></html>
实在看不过,算了,帮你写个例子出来,未经过验证,剩下自己解决
js 那部分用php是怎么实现的啊,我是刚刚学习,有些东西不是很清楚,
这段js 是用来倒计时用的,但是 如果用PHP实现,我在网上查了下,没有setTimeout类似的方法,来定时执行函数的啊。 var runtimes = 0;
function GetRTime(lefttime){
var nMS = lefttime*1000-runtimes*1000;
var nH=Math.floor(nMS/(1000*60*60))%24;
var nM=Math.floor(nMS/(1000*60)) % 60;
var nS=Math.floor(nMS/1000) % 60; if(nH<10){
nH = "0"+nH;
}
if(nM<10){
nM = "0"+nM;
}
if(nS<10){
nS = "0"+nS;
} document.getElementById("RemainH").innerHTML=nH; document.getElementById("RemainM").innerHTML=nM; document.getElementById("RemainS").innerHTML=nS;
if(nMS<=0){
document.getElementById("RemainH").innerHTML='00'; document.getElementById("RemainM").innerHTML='00'; document.getElementById("RemainS").innerHTML='00';
} runtimes++; setTimeout("GetRTime(lefttime)",1000); } window.onload=GetRTime();这个是这段javascript.