如何节省用户在表单中回答问题到数据库的时间

时间:2017-12-14 13:50:07

标签: javascript php html mysql laravel

我有一个问题是将“时间”保存到我的数据库中。我要保存的“时间”是用户用来回答我所提问题的时间,然后当他们点击提交按钮时,他们花费的时间会保存到数据库中。

这是我的javascript:

    var minutesLabel = document.getElementById("minutes");
    var secondsLabel = document.getElementById("seconds");
    var totalSeconds = 0;
    var secondLabel = document.getElementById("second");
    setInterval(setTime, 1000);

    function setTime()
    {
        ++totalSeconds;
        secondsLabel.innerHTML = pad(totalSeconds%60);
        secondLabel.innerHTML = pad(totalSeconds);
        minutesLabel.innerHTML = pad(parseInt(totalSeconds/60));
    }

    function pad(val)
    {
        var valString = val + "";
        if(valString.length < 2)
        {
            return "0" + valString;
        }
        else
        {
            return valString;
        }
    }

这就是我打电话给他们的方式:

<label id="minutes">00</label>:<label id="seconds">00</label>

我想要实现的是保存minuteslabel。如果您有任何建议,请不要犹豫回复。感谢

1 个答案:

答案 0 :(得分:0)

从我看到你已经在屏幕上打印时间了。如果您使用的是表单提交而不是ajax,请执行以下操作:

<!-- In your view / html -->
<form ........ >
<input type="hidden" id="timeSpent" name="timeSpent">
.
. 
.

// In your Javascript
<script>
function setTime()
{
    ++totalSeconds;
    secondsLabel.innerHTML = pad(totalSeconds%60);
    secondLabel.innerHTML = pad(totalSeconds);
    minutesLabel.innerHTML = pad(parseInt(totalSeconds/60));
    document.getElementById("timeSpent").value = pad(parseInt(totalSeconds/60)) + pad(totalSeconds%60);
}
</script>