我正在插入日期。当日期设置时,它起作用,否则,它不起作用。DateBirth类型为日期,默认值为NULL。这是我的PHP$date_birth = isset($_POST['date_birth']) ? $_POST['date_birth'] : NULL;这里是mysql$adding_birth = "INSERT INTO person (DateBirth) VALUES ('$date_birth')";如何获取空的日期字段?
2 回答
回首忆惘然
TA贡献1847条经验 获得超11个赞
您当前正在将 NULL 作为字符串添加到数据库中。您必须将 SQL 命令重写为:
$date_birth = isset($_POST['date_birth']) ? "'" . $_POST['date_birth'] . "'" : 'NULL';
$adding_birth = "INSERT INTO person (DateBirth) VALUES ($date_birth)";
当您在 SQL 前面执行 echo 时,您将得到,在您的情况下为 NULL:
$adding_birth = "INSERT INTO person (DateBirth) VALUES ('NULL')";
正确的是:
$adding_birth = "INSERT INTO person (DateBirth) VALUES (NULL)";
料青山看我应如是
TA贡献1772条经验 获得超8个赞
您需要将NULL
其作为字符串:
$date_birth = isset($_POST['date_birth']) ? $_POST['date_birth'] : 'NULL';
当 PHP 替换查询字符串中的变量时 -$date_birth
被空字符串替换,而您需要字符串 NULL
- 2 回答
- 0 关注
- 107 浏览
添加回答
举报
0/150
提交
取消