我有以下几行:
if ( (empty($_FILES["userFile1"]) ) or ( empty($_FILES["userFile2"]) ) or ( empty($_FILES["userFile2"]) ) ) {
header("Location: " . "/");
}
// required fields
$required = array("userName", "userAddress", "userEmail");
// Loop over field names, make sure each one exists and is not empty
$error = false;
foreach ($required as $field) {
if (empty($_POST["$field"])) {
$error = true;
}
}
// if error occurs
if ($error === true) {
header("Location: " . "/");
}
但是即使用户没有上传所有三个文件,或者即使用户将字段留空,脚本仍然会继续执行(我可以通过脚本后面的副作用来判断)。由于这些所做的唯一事情就是重定向用户,显然这两项检查都没有通过。
但如果字段为空或文件未上传,为什么检查不起作用?