如何将当前日期插入到数据库中?我有一个叫做date的栏目来刊登这篇文章。我想在插入这个的同时插入它
$sql="INSERT INTO `Lines` (Text, PID, Position)
VALUES
('$text','$pid','$position')";
是否有一种方法可以在PHPMyAdmin中自动执行它,或者这样做是一样的?由于
如果表定义将timestamp
列默认设置为CURRENT_TIMESTAMP
,则实际上根本不需要做任何操作。否则,NOW()
和CURRENT_TIMESTAMP
将工作,如:
INSERT INTO t1 (timestamp_column) VALUES (NOW());
CURRENT_TIMESTAMP
和NOW()
之间是有区别的,但对你来说可能太小了。
phpMyAdmin似乎有CURRENT_TIMESTAMP
作为一个选项,当创建一个新的列
INSERT INTO `Lines` (`date`) VALUES (NOW());
根据您的需求,您也可以这样做
$date=date('d.m.y h:i:s');
然后插入$date。我的意思是,如果你只想看日期&时间。否则我也推荐time()。
否则…如果使用PHP中常见的整数,只需使用time()
并插入其值,就像插入其他变量一样,或者使用MySQL的UNIX_TIMESTAMP()
存储时间戳的最佳方式是使用GMT/UTC格式的UNIX时间戳整数。这样,无论您、您的服务器或您的用户位于何处,都可以始终知道确切的时间。一个好处是,您可以允许用户设置他们的时区,并显示对他们有意义的时间。
$sql = "INSERT INTO `Lines` (`timestamp`) VALUES ('" . time() . "')";
或
$sql = "INSERT INTO `Lines` (`timestamp`) VALUES ( UNIX_TIMESTAMP() )";
如果选择使用NOW()或CURRENT_TIMESTAMP要小心,因为它们是由数据库服务器及其设置管理的。如果您的站点托管在一个时区的服务器上,而您移动到另一个时区的另一个主机上,那么您的所有时间戳都将是不正确的。使用Unix整数会在应用程序处理时间的任何地方增加一点额外的工作,但它会给您提供最准确和最大的灵活性。