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

Php 如何更新服务器数据库上的utc时间戳,php,forms,datetime,time,Php,Forms,Datetime,Time,我正在进行一项博士研究,该研究必须跟踪参与者在网络屏幕上完成某个过程的时间。时间就是一切必要的东西。我已经设置了数据库来跟踪预定义用户集、开始时间(作为datetime类型)和结束时间(作为datetime类型)。当参与者打开屏幕时,会显示一个模式表单,需要单击一个按钮来激活表单提交。此表单提交应该更新服务器数据库上用户行的开始时间。代码如下: <?php if ($_POST['time']) { $time= UTC_TIMESTAMP(); $sql = "UPDATE `respo

我正在进行一项博士研究,该研究必须跟踪参与者在网络屏幕上完成某个过程的时间。时间就是一切必要的东西。我已经设置了数据库来跟踪预定义用户集、开始时间(作为datetime类型)和结束时间(作为datetime类型)。当参与者打开屏幕时,会显示一个模式表单,需要单击一个按钮来激活表单提交。此表单提交应该更新服务器数据库上用户行的开始时间。代码如下:

<?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> 

时间

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


谢谢。

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

  • 将您的
    UTC\u时间戳
    替换为执行相同操作的php函数,即
    gmdate
    ()(假设UTC和GMT是相同的操作)。在代码中:

    $time=gmdate()

  • 在SQL调用中使用
    UTC\u TIMESTAMP
    ,而不是在PHP中使用(这可能是您想要做的)。在代码中:

    $time=“UTC_TIMESTAMP()”


  • 另外,要注意每句话执行的时间的不同。第一个在解析PHP调用时运行,第二个在执行SQL查询时运行。

    Define“不起作用”。。。它是否显示任何错误;它是否在数据库中插入了无效值,或者根本没有;它踢猫吗?你有数据库连接吗?您通常使用MySQL函数而不是PHP函数吗?您必须添加更多详细信息,如@MarkBaker所说,例如,为什么它不工作。
    “更新响应集screen1\u start=UTC\u TIMESTAMP(),其中id=100102”