Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Jquery倒计时日期_Php_Jquery_Mysql - Fatal编程技术网

Php Jquery倒计时日期

Php Jquery倒计时日期,php,jquery,mysql,Php,Jquery,Mysql,有人知道我如何使用Jquery更新td id jailtimer中的内容吗。 我需要它倒计时,直到它达到0 范例 00:00:02 00:00:01 00:00:00完成 <?php $sql = "SELECT * FROM jail ORDER BY id DESC"; $query = mysql_query($sql) or die(mysql_error()); $count = mysql_num_rows($query); $i = 1; while($row = mysql

有人知道我如何使用Jquery更新td id jailtimer中的内容吗。 我需要它倒计时,直到它达到0

范例

00:00:02

00:00:01

00:00:00完成

<?php
$sql = "SELECT * FROM jail ORDER BY id DESC";
$query = mysql_query($sql) or die(mysql_error());
$count = mysql_num_rows($query);
$i = 1;
while($row = mysql_fetch_object($query)) {
$jail_oname = htmlspecialchars($row->username);
$jail_otimeleft = htmlspecialchars($row->time_left);
$oleft = $jail_otimeleft - time();
if ($oleft < '0'){
$sql = "DELETE FROM jail WHERE username='".$jail_oname."'";
$query = mysql_query($sql)  or die(mysql_error());
}
?>
<table>
<tbody>
<tr>
<td id="jailtimer"><?php echo date( "00:i:s", $jail_otimeleft - time() ); ?></td>
</tr>
</tbody>
</table>
下面是一个演示如何使时钟在jquery中非常容易地向前或向后运行的示例。
享受

HTML代码是:

<div class="time"></div>
<div class="backtime"></div>
这将在GUI上显示剩余时间,但不会更新数据库。 我假设您不想每秒都往返于服务器。 我建议你去掉“剩下的时间”一栏,只使用“发布日期”,意思是“什么时候发布?”


如果需要更多解释,请告诉我

也许我看错了,但你真的在跟踪表中的每一个滴答声吗?为什么不获得一个开始时间,然后每个视图只显示从现在到开始时间还有多少时间?你下面的代码似乎表明你就是这么做的,但是你的列名
time_left
没有正确描述它引用的内容。好的,让我告诉你我是如何将数据插入该表的,我用它制作一个文本游戏,它会把他们关进监狱25分钟,当时间用完时,他们就出狱了,代码运行良好,我只想使用jquery,这样他们就可以看到还有多少时间可以等待;您正在存储发布的时间。我不喜欢语法。如果您想异步更新该字段,请使用并获取
time\u released
time()
之间的差异,并(在服务器上)将时间返回到您的页面。不确定我将如何使用该字段,为什么您不喜欢这种方法。你会怎么做?我不喜欢
time\u left
的语法,我可能会称之为
time\u release
release\u time
。尝试一个。呃,我不能让它工作,我是javascript新手。你如何在开始时加载这个函数,或者给这个函数一个名称从其他地方调用它。语法
$(function(){…})
告诉JQuery在加载页面时运行它。您不需要函数来调用它。。当你说“我不能让它工作”时,你是指“小提琴”还是本地?因为在fiddle上,您需要单击“运行”,并且在本地必须确保jquery已导入,并且页面没有任何错误。您可以签出它,这将节省大量时间。如果此HTML片段通过Ajax请求注入HTML,则需要删除
$(function(){…})
,因为页面不会生成“加载”事件。
<div class="time"></div>
<div class="backtime"></div>
$(function(){
    var $currentDate = new Date().getTime();
    setInterval(function(){
         $(".time").text(new Date());
        console.log(new Date().setTime($currentDate));
         $currentDate = $currentDate - 1000;
        $(".backtime").text(new Date($currentDate) );        
    },1000);
});​