我正在爲我的網站倒計時計時器,但無法使腳本正常工作。腳本的創建者PHP F1無法提供幫助。倒數計時器不能正常工作
問題是:爲什麼在目標日期($targetDate
)的年份變量沒有通過HTML/JavaScript實現?
我正在使用mktime()
函數。不管我是否將實際日期放入最後一個屬性位置(一年)或是否放入日期函數(例如我在下面的代碼中完成它),我都無法使其正確顯示前端。
我不是任何方式的PHP/JavaScript大師,所以這可能看起來像一個真正的noobie問題,但如果任何人都可以幫助我,這將不勝感激!
這裏是現場執行下面的代碼: http://tripdealio.com/countdown/countdown5.php
下面是代碼:
<?php
/* Define your target date here
$targetYear = 2011;
$targetMonth = 09;
$targetDay = 30;
$targetHour = 23;
$targetMinute= 59;
$targetSecond= 59;
End target date definition */
// Define date format
$dateFormat = "Y-m-d H:i:s";
$targetDate = mktime(23,59,59,09,30,date("Y"));
$actualDate = time();
$secondsDiff = $targetDate - $actualDate;
$remainingDay = floor($secondsDiff/60/60/24);
$remainingHour = floor(($secondsDiff-($remainingDay*60*60*24))/60/60);
$remainingMinutes = floor(($secondsDiff-($remainingDay*60*60*24)-($remainingHour*60*60))/60);
$remainingSeconds = floor(($secondsDiff-($remainingDay*60*60*24)-($remainingHour*60*60))-($remainingMinutes*60));
$targetDateDisplay = date($dateFormat,$targetDate);
$actualDateDisplay = date($dateFormat,$actualDate);
?>
<!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>Max's Countdown System</title>
<link href="style/style.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
var days = <?php echo $remainingDay; ?>
var hours = <?php echo $remainingHour; ?>
var minutes = <?php echo $remainingMinutes; ?>
var seconds = <?php echo $remainingSeconds; ?>
function setCountDown()
{
seconds--;
if (seconds < 0){
minutes--;
seconds = 59
}
if (minutes < 0){
hours--;
minutes = 59
}
if (hours < 0){
days--;
hours = 23
}
document.getElementById("remain").innerHTML = days+" days, "+hours+" hours, "+minutes+" minutes, "+seconds+" seconds";
setTimeout ("setCountDown()", 1000);
}
</script>
</head>
<body onload="setCountDown();">
<div id="container">
<div id="header"><div id="header_left"></div>
<div id="header_main">Max's Countdown System</div><div id="header_right"></div></div>
<div id="content">
<table class="countTable">
<tr><td>Target date:</td><td><?php echo $targetDateDisplay; ?></td></tr>
<tr><th colspan="2" id="remain"><?php echo "$remainingDay days, $remainingHour hours, $remainingMinutes minutes, $remainingSeconds seconds";?></th></tr>
<tr><td>Actual date:</td><td><?php echo $actualDateDisplay; ?></td></tr>
</table>
</div>
<div id="footer"><a href="http://www.phpf1.com" target="_blank">Powered by PHP F1</a></div>
</div>
</body>
</html>
PHP代碼看起來不錯。你能發佈生成的HTML標記嗎? – Confluence 2010-09-30 23:50:17
不需要時使用字符串值'setTimeout';改用函數引用('setTimeout(setCountDown,1000)')。順便說一句,你不要在HTML/JS中使用'$ targetDate',而是使用'$ targetDateDisplay';此外,當你的鏈接時,沒有什麼是錯的。 – 2010-09-30 23:50:59