在我的MySQL数据库post_time
字段的值已设置为NOT NULL DEFAULT CURRENT_TIMESTAMP
插入当前时间到MySQL数据库基于特定时区
我用下面的MySQL insert
语法和HTML表单从参观者收集数据,其中日期&当提交表单时,该帖子的时间通过隐藏字段被插入到MySql数据库中。
$insertSQL = sprintf("INSERT INTO entry (post, post_time) VALUES (%s, %s)",
GetSQLValueString($_POST['post'], "text"),
GetSQLValueString($_POST['post_time'], "date"));
<form action="<?php echo $editFormAction;?>" method="post" name="form1" id="form1">
<table width="50%" align="center">
<tr valign="baseline">
<td align="right" nowrap="nowrap">Post:</td>
<td>
<textarea name="post" cols="50" rows="5"></textarea>
</td>
</tr>
<tr valign="baseline">
<td align="right" nowrap="nowrap">
<input type="hidden" name="post_time" value="<?php echo $_POST['TIMESTAMP DEFAULT CURRENT_TIMESTAMP']; ?>" />
<input type="hidden" name="MM_insert" value="form1" />
</td>
<td>
<input type="submit" name="submit_post" value="Submit Post" />
</td>
</tr>
</table>
</form>
我怎么能收集(服务器已基于GMT时区),基于预定义的时区一个共享服务器上的日期&时间数据?
那我该如何执行下面的sql语法呢?
被修改:
SET的time_zone = '美国/纽约';
感谢,
这是使用'mysql_query'的[可能](http://stackoverflow.com/questions/4458180/php-getsqlvaluestring-function),这意味着它使用了将在未来版本的PHP中被删除的弃用函数。这样逃避是有风险的。 [学习PDO](http://net.tutsplus.com/tutorials/php/why-you-should-be-using-phps-pdo-for-database-access/)并不难,它会使你的应用程序兼容PHP的新版本。 – tadman
我将方便地切换到“MySqli”或“PDO”。 –
PDO比'mysqli'更强大一点,它支持命名占位符,使您的查询更具可读性。 'mysqli'适用于PDO不可用的情况。 – tadman