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

Мне нужно выполнить этот запрос MySQL в PDO MySQLi с параметром связывания в 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

Как я могу это сделать? Заранее спасибо.

PS: тип столбца даты datatime,

2 ответа

Решение

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

$insert = $mysqli->prepare("INSERT INTO posts (post_name, publish_date) VALUES (?, 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();
Другие вопросы по тегам