我需要在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
我怎样才能做到这一点 ?提前谢谢。
P.S:日期栏的类型为datatime
。
答案 0 :(得分:27)
它不是查询的参数,因为您不必向MySQL提供值。
$insert = $mysqli->prepare("INSERT INTO posts (post_name, publish_date) VALUES (?, NOW())");
答案 1 :(得分:2)
可能你应该尝试使用日期功能而不是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();