【发布时间】:2017-07-29 15:41:48
【问题描述】:
我的 php 表单中的 输入字段 有问题。它看起来像:
<input type="number" name="tmax" max="99" min="-99" placeholder="Temperatura max.">
我想检查 字段 是否为空。但问题是 php 认为 0 为空。
if (empty($_POST['tmax'])) {
$tmax = null;
}else {
$tmax = $_POST['tmax'];
}
如果用户将 输入字段 留空,则该值被视为“null”,这非常有效。但是如果用户写了0,这是表单中的一种可能,也被视为空。
我还在 SQL 中将默认设置为 null,但问题是,如果输入为空,程序会在表中插入 0。
解决方案:
这个解决方案对我来说很好:
if ($_POST['tmax'] == "") {
$tmax = null;
}else {
$tmax = $_POST['tmax'];
}
还有is_numeric()
if (is_numeric($_POST['tmax'])) {
$tmax = $_POST['tmax'];
}else {
$tmax = 'null';
}
【问题讨论】:
-
度数为0时尝试创建自定义语句