0

投稿の時刻をデータベース テーブルに入れようとしていますが、うまくいきません。ここの誰かが私が間違っていることを説明できるかもしれません。

これは私のコードです:

<?php

if (isset($_POST['upload_message'])) {
    $message_title = $_POST['message_title'];
    $message_content = $_POST['message_content'];
}

$table_name = "posts";
$add_query = "INSERT INTO $table_name (name, content, date) VALUES ('$message_title', '$message_content', 'SELECT NOW()')";

if (mysql_query($add_query)) { //executes query and error check
    echo "het artikel staat in de database";
}
else { //error message
    echo "fout bij het toevoegen" . "<br />" . mysql_error();
}

?>

これは私のデータベーステーブルのスクリーンショットです: http://gyazo.com/17019f143eab6e5818752c33824bde29

mysql_error を実行すると、次のメッセージが表示されます。

不正な日時値: 行 1 の列 'date' の 'SELECT NOW()'

4

4 に答える 4

4

SELECT NOW()する必要はありません。NOW()

$add_query = "INSERT INTO $table_name (name, content, date) 
    VALUES ('$message_title', '$message_content', NOW())";

mysqli_またはを使用して、バインドされたパラメータを持つ準備済みステートメントを使用する必要がありますPDO

于 2013-06-06T19:47:56.687 に答える
0

NOW() は mysql 関数です。呼び出すだけで「選択」する必要はありません。

「SELECT NOW()」を「NOW()」だけに置き換えます。

INSERT INTO $table_name (name, content, date) VALUES ('$message_title', '$message_content', 'NOW()')
于 2013-06-06T19:48:04.763 に答える