10

我需要在 PHP 中使用绑定参数在 MySQLi PDO 中执行这个 mysql 查询:

mysql_query("INSERT INTO `posts` (post_name,publish_date) VALUES ($post_name,NOW()) ")

我使用这样的脚本,但它没有正确插入 publish_date。

$publish_date = 'NOW()';
$insert = $mysqli->prepare("INSERT INTO posts (post_name,publish_date) VALUES (?,?)");
$insert->bind_param("ss", $post_name $publish_date);
$insert->execute();

它将记录插入到这样的publish_date列中:0000-00-00 00:00:00

我该怎么做?提前致谢。

PS:日期列的类型是datatime.

4

2 回答 2

30

它不是查询的参数,因为您不必向 MySQL 提供值。

$insert = $mysqli->prepare("INSERT INTO posts (post_name, publish_date) VALUES (?, NOW())");
于 2012-02-29T10:16:21.960 回答
4

可能您应该尝试使用日期函数而不是 NOW()

$publish_date =date("Y-m-d H:i:s");
$insert = $mysqli->prepare("INSERT INTO posts (post_name,publish_date) VALUES (?,?)");
$insert->bind_param("ss", $post_name $publish_date);
$insert->execute();
于 2012-02-29T10:22:07.377 回答