当代码运行时,如何将准备好的语句的时间戳添加到MySQL数据库中?

17 浏览
0 Comments

当代码运行时,如何将准备好的语句的时间戳添加到MySQL数据库中?

我想添加一个可以同时插入的“当前”日期/时间戳,以便我可以跟踪用户创建帐户的时间。我需要编写/引用一个函数来获取当前日期吗?还是已经有一个已知的函数,我只需要引用它?我是php新手,抱歉。

0
0 Comments

问题的出现原因是需要在运行代码时将一个时间戳添加到MySQL数据库的准备语句中。

解决方法是使用MySQL的内置函数NOW()来获取当前时间,并将其与预处理语句一起使用。

以下是解决方法的代码示例:

$stmt = $conn->prepare("INSERT INTO users (username, created) VALUES (?, NOW())");

$stmt->bind_param("s", $_POST['username-reg']);

$stmt->execute();

通过将NOW()函数作为值传递给预处理语句的相应字段,可以将当前时间戳添加到MySQL数据库中。在上述代码中,我们使用bind_param()方法将$_POST['username-reg']的值绑定到预处理语句中的占位符?。然后,使用execute()方法执行预处理语句,将值插入数据库中。

通过使用上述代码,我们可以解决将预处理语句的时间戳添加到MySQL数据库的问题。

0
0 Comments

问题出现的原因是想要在代码运行时向MySQL数据库中的准备语句(prepared stmt)添加时间戳(timestamp)。解决方法是利用MySQL的时间戳初始化特性。可以通过在表中添加一个带有"default current_timestamp"选项的"timestamp"列来实现。然后在插入数据时忽略该列,数据库会自动设置时间戳。如果还希望在记录被修改时更新时间戳,可以在列的定义中添加"on update current_timestamp"。

0