我不想显示所有的代码,但我正在用php验证所有的数据,一切都像往常一样工作,直到这个变量一直给我同样奇怪的响应:
$ABN = $_POST['ABN'];
我使用POST方法获取变量,并使用
if(empty($ABN)) {
$msg .= '<br> ABN Needed';
$proceed = false;
}
所以,在你说这篇文章显然没有给我任何数据之前,我使用了:
var_dump($ABN);
它给我的输入和我在表单上输入的一样,所以很明显这不是空的?
string(11) "-the-value-i-am-passing-in"
我已经检查了我的所有代码,并确保$ABN没有在其他地方设置为null,甚至移动了代码,因此代码中的序列现在是一个接一个,但这个问题仍然存在。有人知道为什么会发生这样的事情吗?
$ABN = $_POST['ABN'];
var_dump($ABN);
if(empty($ABN)) {
$msg .= '<br> ABN Needed';
$proceed = false;
}
发布于 2018-05-28 20:12:33
尝试在实际的post变量上使用isset()
,并进一步使用is_null()
。
$ABN = isset($_POST['ABN']) ? $_POST['ABN'] : null;
if(is_null($ABN)) {
$msg .= '<br> ABN Needed';
$proceed = false;
}
发布于 2018-05-29 07:02:50
(代表问题作者发布了解决方案)。
我将if(empty()){}
更改为if(!isset()){}
。谢谢你David的解决方案。
https://stackoverflow.com/questions/50566090
复制相似问题