Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/255.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/396.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 使用mysql进行多重倒计时_Php_Javascript - Fatal编程技术网

Php 使用mysql进行多重倒计时

Php 使用mysql进行多重倒计时,php,javascript,Php,Javascript,我有一个严重的问题,我无法解决。 我需要进行多次倒计时,但在我的代码中,只有一次倒计时就可以了。 我不明白为什么其他的datetime无法读取。 我正在使用数据库获取日期时间 这是我的代码: $stmt4 = $mybd->prepare($query3); $stmt4->bind_param("s",$cat); $stmt4->execute(); $stmt4->bind_result($idVouch

我有一个严重的问题,我无法解决。 我需要进行多次倒计时,但在我的代码中,只有一次倒计时就可以了。 我不明白为什么其他的datetime无法读取。 我正在使用数据库获取日期时间

这是我的代码:

$stmt4 = $mybd->prepare($query3);
$stmt4->bind_param("s",$cat);                               
$stmt4->execute();
$stmt4->bind_result($idVoucher,$titulo,$descricao, $precoOriginal, $desconto,$data, $nome, $nomeImagem);
while($stmt4->fetch()){
     if($cat == $nome){
    if($idVoucher != $idVoucher2){

     echo "<input id='data2' type='hidden'  value='$data' />";
$stmt4=$mybd->prepare($query3);
$stmt4->bind_参数(“s”,$cat);
$stmt4->execute();
$stmt4->bind_result($idconcert、$titulo、$descripao、$precoriginal、$descon、$data、$nome、$nomeImagem);
而($stmt4->fetch()){
如果($cat==$nome){
如果($idVoucher!=$idVoucher2){
回声“;
我用这个脚本倒计时:

$(function(){

    var data = $('#data').val();
    var date_split = data.split(" ");
    var date = date_split[0];
    date = date.split("-");
    var time = date_split[1];
    time = time.split(":");

    var data1 = $('#data2').val();
    var date_split1 = data1.split(" ");
    var date1 = date_split1[0];
    date1 = date1.split("-");
    var time1 = date_split1[1];
    time1 = time1.split(":");

    var note = $('#note'),
        ts = new Date(date[0], date[1] - 01,date[2], time[0], time[1],time[2]),
        newYear = true;

    var note1 = $('#note1'),
        ts2 = new Date(date1[0], date1[1] - 01,date1[2], time1[0], time1[1],time1[2]),
        newYear = true;

    /*  if((new Date()) > ts){
        // The new year is here! Count towards something else.
        // Notice the *1000 at the end - time must be in milliseconds
        ts = (new Date()).getTime() + 10*24*60*60*1000;
        newYear = false;
    } */

    $('#endtime_1320').countdown({
        timestamp   : ts,
        callback    : function(days, hours, minutes, seconds){

            var message = "";

            message += days + " day" + ( days==1 ? '':'s' ) + ", ";
            message += hours + " hour" + ( hours==1 ? '':'s' ) + ", ";
            message += minutes + " minute" + ( minutes==1 ? '':'s' ) + " and ";
            message += seconds + " second" + ( seconds==1 ? '':'s' ) + " <br />";
        }
    });

    $('#endtime_1321').countdown({
        timestamp   : ts2,
        callback    : function(days, hours, minutes, seconds){

            var message = "";

            message += days + " day" + ( days==1 ? '':'s' ) + ", ";
            message += hours + " hour" + ( hours==1 ? '':'s' ) + ", ";
            message += minutes + " minute" + ( minutes==1 ? '':'s' ) + " and ";
            message += seconds + " second" + ( seconds==1 ? '':'s' ) + " <br />";
        }
    });
});
$(函数(){
var data=$('#data').val();
var date_split=data.split(“”);
var date=分割日期[0];
日期=拆分日期(“-”);
var时间=日期和分割[1];
时间=时间分割(“:”);
var data1=$('#data2').val();
var date_split1=data1.split(“”);
var date1=date_split1[0];
date1=date1.拆分(“-”);
var time1=日期分割1[1];
time1=time1.拆分(“:”);
变量注释=$(“#注释”),
ts=新日期(日期[0],日期[1]-01,日期[2],时间[0],时间[1],时间[2]),
新年=真;
var note1=$(“#note1”),
ts2=新日期(日期1[0],日期1[1]-01,日期1[2],时间1[0],时间1[1],时间1[2]),
新年=真;
/*如果((新日期())>ts){
//新年到了!想想别的吧。
//请注意,结束时的*1000-时间必须以毫秒为单位
ts=(新日期()).getTime()+10*24*60*60*1000;
新年=假;
} */
$('#endtime_1320')。倒计时({
时间戳:ts,
回调:函数(天、小时、分钟、秒){
var message=“”;
消息+=days+“day”+(days==1?“:”)+“,”;
信息+=hours+“hours”+(hours==1?“”:“'s')+”,“;
消息+=minutes+“minutes”+(分钟==1?“”:“'s”)+”和“;
消息+=seconds+“second”+(seconds==1?'':'s')+“
”; } }); $('#endtime_1321')。倒计时({ 时间戳:ts2, 回调:函数(天、小时、分钟、秒){ var message=“”; 消息+=days+“day”+(days==1?“:”)+“,”; 信息+=hours+“hours”+(hours==1?“”:“'s')+”,“; 消息+=minutes+“minutes”+(分钟==1?“”:“'s”)+”和“; 消息+=seconds+“second”+(seconds==1?'':'s')+“
”; } }); });
我如何解决这个问题? 将日期时间保留在数组中并在脚本中使用? 就这个案子而言,我是怎么做到的


谢谢

我解决了我的问题…如果有人想使用,这里有代码。 我用了基思·伍德倒计时,我的倒计时很好,但现在我想问另一个问题。 当倒计时结束时,我想更新到我的数据库中

我如何发现倒计时何时结束以及数据库的下一次更新

$query3=“从凭证中选择v.id、v.titulo、v.descripo、v.precoOriginal、v.descon、v.dataFinal、v.estado、c.nome、i.nome、i.tipo作为v 在v.id\u categoria=c.id上将categoria左连接为c 在i.id\U凭证=v.id上以i的身份左键连接imagem 其中c.nome=? 按v.id描述订购”; $stmt3=$mybd->prepare($query3); $stmt3->bind_参数(“s”,$cat);
$stmt3->execute(); $stmt3->bind_result($idconcert、$titulo、$descripao、$precoriginal、$descon、$data、$estado、$nome、$nomeImagem、$tipo)

while($stmt3->fetch()){
如果($nome==$cat){
如果($idVoucher=$idVoucher2&&$estado==“ativo”&&$tipo==“paginaPrincipal”){?>
' />
/>
Este凭证终端em


您使用的是什么
倒计时
插件?您能创建一个JSFIDLE来显示您的问题吗?我正在使用本教程…您发布的代码中缺少了一些关键元素-
,以及隐藏输入中的
$date
值。问题就在那里,正如我所能看到的创建这个JSFIDLE——它使用您的javascript代码,可以有2个倒计时。您的代码很好,但我有一个问题…我的代码中有一段时间,它总是在我的数据库中获取数据,但对于任何新数据都是一样的。这会造成麻烦,因为他总是显示我循环中的第一个数据。我需要更改e的数量ndtime每次我从数据库中获得一个新数据时。我的示例是显示您的javascript正在工作。您能否显示完整的while循环以及生成的html代码。您的问题就在那里,我在您发布的截断示例中看不到它。
                    while($stmt3->fetch()){
                        if($nome == $cat){
                            if($idVoucher == $idVoucher2 && $estado == "ativo" && $tipo == "paginaPrincipal"){ ?>
                                    <h2><a href='./verOfertaCompra.php' ><?php echo $titulo ?></a></h2>
                                    <img class='imagem' src='./images/paginaPrincipal/<?php echo $nomeImagem; ?>' />
                                    <div class='info'>
                                        <div class='primeiro'>
                                        <input class='data<?php echo $idVoucher ?>' type='hidden'  value=<?php echo $data; ?> /><br/>
                                        <span style="font-size: 15px; font-weight: bold; margin-left:38px;">Este Voucher termina em </span><br/><br/>
                                        <div id="defaultCountdown" class="endtime<?php echo $idVoucher ?>"></div>
                                        <script type="text/javascript">
                                                $(function () {
                                                        var i = <?php echo $idVoucher ?>;
                                                        var dataVal = $(".data" + i.toString()).val();
                                                        var data = new Date(dataVal);
                                                        str = ".endtime"+i.toString();
                                                        $(str).countdown({until: data, format: 'dHMS'});
                                                    });
                                            </script>
                                        <?php