10

PHPのバインドパラメータを使用して、MySQLiPDOでこの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()ではなくdate関数を使用してみてください。

$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 に答える