【问题标题】:php date time seems does not work properly [duplicate]php日期时间似乎无法正常工作[重复]
【发布时间】:2012-05-30 07:06:32
【问题描述】:

我现在将date/time 数据插入我的date/time field 数据库中。我尝试了许多技术,例如:

 $date = date("d M Y");
 $date = date("d M Y", mktime());
 $date = getdate();
 $date = date("d M Y", strtotime('now'));

还有这个功能:date_default_timezone_set('Asia/Bangkok');

但它仍然没有得到日期时间。

这是我的sql语句:

$sql = "INSERT INTO ".TABLE_CONTENT."(`title`, `detail`, `crdate`, `modate`, `crby`, moby, isdel) VALUES('".$title."', '".$detail."', '".$crdate."', '".$modate."', '".$crby."', '".$moby."', $isdel)";

执行查询后,我的数据库中只得到了0000-00-00 00:00:00

任何帮助或建议将不胜感激。

谢谢

【问题讨论】:

  • 我建议使用 varchar 而不是 date 作为 sql 结构。看看是否正确插入
  • “我的日期/时间字段” - 你所有的技术都缺少时间。

标签: php sql datetime


【解决方案1】:

看起来您的数据库字段已设置为时间戳,因此您必须以完全相同的格式将数据插入到数据库字段中。

这样就可以了

$date = date('Y-m-d H:i:s');

您也可以使用 MySQL NOW(),它将当前时间戳插入该字段,尽管时区将设置为您的服务器所在的任何时区。

示例:

$sql = "INSERT INTO <table> (title, crdate) VALUES ('test', NOW())";

【讨论】:

  • 谢谢弗朗西斯,这真的很有帮助。
猜你喜欢
  • 2012-09-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-12-03
  • 2015-04-06
  • 2021-12-12
  • 1970-01-01
相关资源
最近更新 更多