Как вставить запись с помощью функции MySQL NOW() в MySQLi с параметром привязки?


Мне нужно выполнить этот запрос mysql в MySQLi PDO с параметром привязки в PHP:

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.

Author: hakre, 2012-02-29

2 answers

Это не параметр запроса, поскольку вам не нужно указывать значение в MySQL.

$insert = $mysqli->prepare("INSERT INTO posts (post_name, publish_date) VALUES (?, NOW())");
 26
Author: Hammerite, 2012-02-29 10:16:21

Вероятно, вам следует попробовать использовать функцию даты не СЕЙЧАС()

$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();
 2
Author: smilezjim, 2012-02-29 10:23:53