php - 为什么 SQL 会将表格中的日期更新为 0000-00-00 00:00:00?
问题描述
我正在尝试将 SQL 表中的 SEEN 字段更新为当前时间和日期。
这是代码:
$now=date('d-m-Y H:i:s',time());
$query="UPDATE mytable SET SEEN = '".$now."' WHERE ID_ITEM = ".$id_material;
$stmt=$dbh1->prepare($query);
$query ;
$stmt->execute();
它将我的 SEEN 字段设置为 0000-00-00 00:00:00。如果我将特定日期直接写入查询,例如“2021-03-10 02:30:00”,它将将该日期写入 SEEN 字段。但不是 $now,而是输出 0。$now 很好,它输出正确的时间戳。
解决方案
您使用的格式与 MySQLDATETIME
使用的格式不同:
$now = (new DateTime("now"))->format("Y-m-d H:i:s");
推荐阅读
- python - 使用无服务器框架为 AWS Lambda 构建和使用本地包
- algorithm - 为什么我的 Rust StackDFS 实现会产生不正确的结果?
- time - 提取连续几年出现的ID
- python - django中的models.ForeignKey()
- typescript - TypeScript:差异通用约束与参数类型
- r - R:MICE 和向后逐步回归
- swift - 消息气泡的双击识别器(Messagekit)
- android - Android Retrofit 2:以编程方式将超时时间增加 10 秒
- javascript - 将日期转换为 UTC 时间戳
- animation - 有没有办法让一个 Three.js 对象位置固定在某个点,而其他对象在动画结束前移动