php - 从字符串变量插入日期不起作用
问题描述
我想在我的数据库中插入一个日期。不幸的是,我没有让它使用变量来工作。如果我手动执行它,它就像一个魅力。
// doesn't work
$_POST['name'] = 'Tom';
$_POST['date'] = '2020-05-05';
$sql = "INSERT INTO tbl_user (name, date) VALUES (:name, :date)";
$stmt = $pdo->prepare($sql);
foreach ($_POST as $key => $data) {
$stmt->bindParam(':' . $key, $data);
}
// works
$_POST['name'] = 'Tom';
$sql = "INSERT INTO tbl_user (name, date) VALUES (:name, '2020-05-05')";
$stmt = $pdo->prepare($sql);
foreach ($_POST as $key => $data) {
$stmt->bindParam(':' . $key, $data);
}
PS:我没有收到任何错误,目前我将值手动添加到 $_POST。$key 和 $data 完美匹配。如果我将我的数据库列从 DATE 更改为 VARCHAR(255) 它就像一个魅力。所以它与日期的格式有关,不是吗?
解决方案
推荐阅读
- git - Brew Tap:身份验证失败
- arcgis - 边界框坐标
- c++ - 为什么我会为 SPOJ 上的 GSS1 问题的此代码获取 TLE?(使用段树)
- android - 您的应用未使用 AndroidX - Flutter 不允许我生成 apk
- xaml - 具有 Materialdesigninxaml 样式的按钮的中心边距定义
- python - 计算数据框中的日期列
- io - Ada.Text_IO.End_Of_File 缓冲副作用
- c# - 抄送电子邮件没有收到c#
- c++ - 为什么我的多线程并行求和函数的向量受限于线程数?
- python - 在 postgres 中将列数据类型从 VARCHAR 转换为 ARRAY(使用 Psycopg2)