嗨,大家好,我能插入这个吗
date_default_timezone_set(Asia/Hong_Kong);
$date = date('"m/d/Y H:i:s"');
代替
"INSERT INTO date_time(`submitted_time`) VALUES (NOW())"
因为我的问题是使用时间NOW()
或CURRENT_TIMESTAMP()
给我不正确的时间
即时通讯这样做,但当我查看数据库时,这就是被插入的内容 0000-00-00 00:00:00.0
date_default_timezone_set('Asia/Manila');
if(isset($_POST['submit'])) {
$date = date('"m/d/Y H:i:s"');
$query = "INSERT INTO `date_time`(`submitted_time`)
VALUES('$date')";
if($conn->query($query)) {
echo "success";
} else {
echo "error";
}
}
如果您实际上要插入生成的日期时间,请执行此操作。
注意:日期的格式必须Y-m-d H:i:s
与MYSQL理解为DateTime数据类型的格式相同
date_default_timezone_set('Asia/Manila');
if(isset($_POST['submit'])) {
$query = "INSERT INTO `date_time` (`submitted_time`) VALUES(?)";
$stmt = $conn->prepare($query);
// note the DateTime must be in this format to store correctly on a MYSQL database
$dt = date('Y-m-d H:i:s');
$stmt->bind_param('s', $dt);
$status = $stmt->execute();
if(!$status) {
echo $stmt->error;
exit;
}
echo "success";
}
如果要查看,请以表示层的工作方式向用户显示日期时间的其他任何格式,以将其重新格式化为特定于区域设置的格式。
您的脚本有遭受SQL注入攻击的风险看看Little Bobby Tables发生了什么,即使您转义了输入,也不安全!使用准备好的参数化语句
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句