我正在为狗救援组织配置站点。 我试图创建一个安乐死计数器,以直观地显示美国每天有多少只狗被杀死。 一个使用当前时间的实时“死亡计数器”,它会为访问者不间断地逐页计数。
我希望计数器每天午夜从 0 开始。 然后,我希望计数器每 10.6 秒增加 +1。
我的想法充其量只是一种黑客攻击,而且似乎并不准确。
下面是我令人尴尬的代码,我知道数学是错误的,但我的理解力有限。 此外,我对 strtotime 缺乏了解,可能会添加不必要的行。
<?php
$tsdate = date('d-m-Y');
$date = date('m/d/Y');
$timestamp = strtotime($tsdate);
?>
<b><font color="#ff0000">
<span id="number"><?=(int)((time()-$timestamp)/14.6);?></span>
</font> dogs have been put to death in this country TODAY <?php echo $date ?>.<br />
Don't buy - Don't breed - ADOPT! </b>
<script type="text/javascript">
var i = <?=(int)((time()-$timestamp)/14.6);?>;
function increment() {
i++;
document.getElementById('number').innerHTML = i;
}
setInterval('increment()', 10600);
</script>
代码可以正常运行,但是,您可以看到我需要帮助,而且我几乎无能为力。 我不得不使用上面看到的 14.6 来获得接近但不正确的结果。
我还想显示当年的运行总计。
有人可以帮助我吗?
非常感谢您的帮助,但我无法使其正常运行。这是我所拥有的:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title> count up test </title>
<script type='text/javascript'>
var div = document.getElementById('count');
var yeardiv = document.getElementById('yearcount');
function updateCount() {
var d = new Date();
// set d to midnight
d.setHours(0,0,0,0);
var count = Math.floor( ( new Date().getTime() - d.getTime() ) / 10600 );
div.innerHTML = count;
// set d to Jan 1st
d.setMonth( 0 );
d.setDate( 1 );
count = Math.floor( ( new Date().getTime() - d.getTime() ) / 10600 )
yeardiv.innerHTML = count;
}
updateCount();
setInterval( updateCount, 10600 );
</script>
</head>
<body>
Today: <div id="count"></div><br/>
This Year: <div id="yearcount"></div>
</body>
</html>
上面不显示计数,只显示文字...
感谢您的作品!!
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title> count up test THANKS to agreco </title>
</head>
<body>
Today: <div id="count"></div><br/>
This Year: <div id="yearcount"></div>
<script type='text/javascript'>
var div = document.getElementById('count');
var yeardiv = document.getElementById('yearcount');
function updateCount() {
var d = new Date();
// set d to midnight
d.setHours(0,0,0,0);
var count = Math.floor( ( new Date().getTime() - d.getTime() ) / 10600 );
div.innerHTML = count;
// set d to Jan 1st
d.setMonth( 0 );
d.setDate( 1 );
count = Math.floor( ( new Date().getTime() - d.getTime() ) / 10600 )
yeardiv.innerHTML = count;
}
updateCount();
setInterval( updateCount, 10600 );
</script>
</body>
</html>
非常感谢您的帮助!
最佳答案
最好在 javascript 中完成这一切。正如其他评论所说,它也将包括用户时区,其中 php 将基于服务器时间。
这也是年份的更新代码:
var div = document.getElementById('count');
var yeardiv = document.getElementById('yearcount');
function updateCount() {
var d = new Date();
// set d to midnight
d.setHours(0,0,0,0);
var count = Math.floor( ( new Date().getTime() - d.getTime() ) / 10600 );
div.innerHTML = count;
// set d to Jan 1st
d.setMonth( 0 );
d.setDate( 1 );
count = Math.floor( ( new Date().getTime() - d.getTime() ) / 10600 )
yeardiv.innerHTML = count;
}
updateCount();
setInterval( updateCount, 10600 );
看这个fiddle
我没有递增,而是根据现在 - 午夜
计算计数关于php - 如何每 10.6 秒从时间戳增加 +1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12373257/