Php MYSQL如何保存添加的日期数据?

Php MYSQL如何保存添加的日期数据?,php,mysql,Php,Mysql,我是MYSQL和PHP集成的新手。因此,我试图做一个索引,你可以添加网站和脚本显示的网址-标题-最后更新的日期。在此之前,我没有问题,但我也想保留网站添加到数据库的日期/时间。我目前正在使用时间戳,但每次网站更新时它都会更改数据 在添加数据时,有什么东西可以用来显示和存储日期吗?在mysql表上使用日期类型,然后 创建记录时,只需用php填充日期字段 新日期时间(“现在”) 更新记录时,不要在该字段中输入任何内容 更新表集ULR='new_url',(以及除添加日期以外的所有其他字段),其中s

我是MYSQL和PHP集成的新手。因此,我试图做一个索引,你可以添加网站和脚本显示的网址-标题-最后更新的日期。在此之前,我没有问题,但我也想保留网站添加到数据库的日期/时间。我目前正在使用时间戳,但每次网站更新时它都会更改数据


在添加数据时,有什么东西可以用来显示和存储日期吗?

在mysql表上使用日期类型,然后

  • 创建记录时,只需用php填充日期字段

    新日期时间(“现在”)

  • 更新记录时,不要在该字段中输入任何内容

    更新表集ULR='new_url',(以及除添加日期以外的所有其他字段),其中something=something

  • 从Mysql中检索日期时,请使用format方法

    $date->format('Y-M-D hh:mm')


您的时间戳当前正在每次更新中更新。我假设它的定义可能是这样的:

date_added TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
但您不需要最后一个“更新当前时间戳”

仅此定义将自动将默认值设置为创建行的时间,并且不会更改

date_added TIMESTAMP DEFAULT CURRENT_TIMESTAMP

时间戳工作正常。除非你这样设置,否则它不会自动更新。执行
SHOW CREATE TABLE TABLE_name
并向我们显示用时间戳定义列的部分。(
id
int(10)unsigned NOT NULL自动递增,
url
text,
title
text,
uptime
timestamp NOT NULL默认当前时间戳更新当前时间戳,主键(
id
))ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=latin1 |这是定义带有时间戳的列的部分知道如何使用此日期在现有表上添加新列吗(添加的时间戳默认当前的时间戳)因为我无法管理itALTER表网站添加addtime时间戳默认当前的时间戳->错误1293(HY000):表定义不正确;默认情况下,只有一个TIMESTAMP列具有当前的\u TIMESTAMP或ON UPDATE子句在我尝试添加另一列时出现此错误您的查询语法是正确的,问题是在MySQL 5.6.5之前,只有一个TIMESTAMP列具有当前的\u TIMESTAMP。我建议删除您r上一个timestamp列,或者如果您需要这两个列来跟踪用户更改,则必须手动更新它。因此,您必须使用PHP获取日期和时间,然后在适当的时候将其手动更新到数据库中。