如何更新服务器数据库上的utc时间戳

时间:2014-01-18 16:40:52

标签: php forms datetime time

我正在进行一项博士调查,该调查必须跟踪参与者在网络屏幕上完成某个过程的时间。只有时间才是必要的。我已经设置了数据库来跟踪预定义用户的集合,开始时间(作为日期时间类型)和结束时间(作为日期时间类型)。当参与者打开屏幕时,会出现一个模态表单,需要单击将激活表单提交的按钮。此表单提交应该更新服务器数据库的用户行中的开始时间。以下是代码:

<?php
if ($_POST['time']) {
$time= UTC_TIMESTAMP();
$sql = "UPDATE `response` SET `screen1_start`=($time) WHERE `id`= 100102";
$result = mysql_query($sql);
}
?>

<form action="" method="post">
Time</label> <input type="time" name="time" >
<br>
<input type=submit value="Click Here to Begin">
</form> 

它不起作用。任何帮助或建议将不胜感激。

谢谢。

1 个答案:

答案 0 :(得分:0)

据我所知,您正在从PHP调用SQL函数。 您有两种选择:

  1. UTC_TIMESTAMP替换为执行相同操作的php函数,即gmdatehttp://be2.php.net/gmdate)(假设UTC和GMT是相同的)。在您的代码中:

    $time = gmdate();

  2. 在SQL调用中使用UTC_TIMESTAMP,而不是在PHP中使用{这可能是您想要做的事情)。在您的代码中:

    $time= "UTC_TIMESTAMP()";

  3. 另外,要注意每个句子执行时的差异。第一个在解析PHP调用时运行,第二个在执行SQL查询时运行。