javascript - 如何使用秒表javascript中的php在mysql数据库中存储计时器值而不使用隐藏输入

标签 javascript php jquery mysql

我正在开发一个简单的PHP游戏程序,用户必须解决这个难题。计时器将会运行。一旦用户解决了难题,他就会点击提交按钮。我需要将用户花费的时间存储在 mysql 数据库中。

计时器将使用 jquery 运行,该值将存储在隐藏字段中。一旦用户提交,它将从隐藏字段中获取值。

问题是现在每个人都知道如何检查 html 代码,他们正在手动更改值。

我该如何限制它。计时器将以小时、分钟、秒和毫秒的形式运行。

我需要使用 php 存储真正的完成时间,即使是毫秒。我怎样才能做到这一点?

我们将根据解决谜题所需的时间最少来宣布获胜者。请告诉我我该怎么做?

<script type="text/javascript">
var timeBegan = null
    , timeStopped = null
    , stoppedDuration = 0
    , started = null;

function start() {
    if (timeBegan === null) {
        timeBegan = new Date();
    }

    if (timeStopped !== null) {
        stoppedDuration += (new Date() - timeStopped);
    }
    started = setInterval(clockRunning, 10);    
}

function stop() {
    timeStopped = new Date();
    clearInterval(started);
}

function reset() {
    clearInterval(started);
    stoppedDuration = 0;
    timeBegan = null;
    timeStopped = null;
    document.getElementById("display-area").innerHTML = "00:00:00.000";
}

function clockRunning(){
    var currentTime = new Date()
        , timeElapsed = new Date(currentTime - timeBegan - stoppedDuration)
        , hour = timeElapsed.getUTCHours()
        , min = timeElapsed.getUTCMinutes()
        , sec = timeElapsed.getUTCSeconds()
        , ms = timeElapsed.getUTCMilliseconds();


    document.getElementById("display-area").value = 
        (hour > 9 ? hour : "0" + hour) + ":" + 
        (min > 9 ? min : "0" + min) + ":" + 
        (sec > 9 ? sec : "0" + sec) + "." + 
        (ms > 99 ? ms : ms > 9 ? "0" + ms : "00" + ms);
};

$( document ).ready(function() {
    start();
});

</script>

<input type="hidden" id="display-area" value="">

<button id="toggle-button" onClick="stop()">SUBMIT<br>RESULT</button>

由于任何人都可以通过检查元素来更改隐藏值,因此我们无法成功运行此谜题。请建议如何避免用户更改计时器值,并让我知道如何使用 php 将计时器值保存在 mysql 数据库中。

最佳答案

我认为 Ajax 会是您的答案。

关于javascript - 如何使用秒表javascript中的php在mysql数据库中存储计时器值而不使用隐藏输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56059429/

相关文章:

php - 仅使用 RegEx 将字符串拆分为固定大小的 block

javascript - 正则表达式与javascript中的html标签不匹配

javascript - 删除或模糊水平滚动条上的线条?

javascript - 在网页上显示图标的问题

javascript - 根据窗口宽度动态更改div位置

php - SQL参数警告

javascript - 设置变量后更改其值

javascript算法转换为罗马数字

Javascript,Click 事件监听器对多个类执行相同的操作

php - 为了什么目的我可以使用 Buildview 和 finishView 的 symfony 形式