使用PHP将时间戳插入MySQL

时间:2018-07-04 11:12:00

标签: php mysql pdo

我正在尝试使用PHP将时间戳插入MySQL数据库。但是显示错误

  

警告:PDOStatement :: execute():SQLSTATE [HY093]:无效的参数   number:参数未在中定义   /opt/lampp/htdocs/e-exam/user.message.php,第22行

但是

  

第22行是':sent_at'=> $ timestamp

 $timestamp = date('Y-m-d G:i:s');

      //message sending
      $sql3 = "INSERT INTO message(title, content, sender_id, sent_at ) VALUES (:title, :content, :sender_id, :sent_at)";
      $stmt3 = $pdo->prepare($sql3);
      $stmt3->execute(array(
        ':title' => $_POST['title'],
        ':content' => $_POST['content'],
        ':email' => $_SESSION['active_user'],
        ':sent_at' => $timestamp
      ));

请帮助我解决此错误

1 个答案:

答案 0 :(得分:0)

如果只想插入send_at(当前时间),则有一种更简单的方法,首先使用NOW()创建表。

另一种方法是将行更改为此

"INSERT INTO message(title, content, sender_id, sent_at ) VALUES (:title, :content, :sender_id, NOW())";

在查询的 NOW()上花费很多。

您可以尝试查询

select NOW()

结果将是这样 2018-07-04 18:17:49

在mysql中,您可以使用数据类型 datetime