sql >> データベース >  >> RDS >> Mysql

カウントダウンタイマー-php+mysql + js

    テストを実行する前に、サーバー側で正確なテスト終了時間を計算し、セッションに保存する必要があります。

    <?php
    if (empty($_SESSION['test_will_end_by'])) {
        $_SESSION['test_will_end_by'] = time() + $test_duration_in_seconds;
    }
    ?>
    

    次に、HTMLからクライアント側のスクリプトに提供する場合:

    Time left:
    <span class="timer" data-end="<?php 
        echo date(DateTime::RFC1123, $_SESSION['test_will_end_by']); 
    ?>"></span>
    

    このコードをjQueryDOM対応ハンドラーに追加して、ページ上のすべてのタイマーを開始します。

    $('.timer').each(function() {
        var target = new Date($(this).data('end')), update, $this = $(this);
        (update = function () {
            var now = new Date();
            $this.text((new Date(target - now)).toUTCString().split(' ')[4]);
            if (Math.floor((target - now)/1000) == 0) return; // timer stops
            setTimeout(update, 1000);
        })();
    });
    


    1. OracleCloudInfrastructureのコンパートメントについて知っておくべき7つのこと

    2. RMySQLシステムエラー:10060

    3. Neo4j-Cypherを使用してMATCHでデータを選択する

    4. 挿入無視をエミュレートし、postgresqlを使用して重複キー更新(SQLマージ)を行う方法は?