我正在尝试使用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
));
请帮助我解决此错误
答案 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