我有一个嵌套的if (isset)
,但它似乎并没有像我预期的那样工作。我也试过了if (!empty)
。请参阅下面的代码。
if (isset($_POST['submit'])){
if(isset($_FILES['userFile'])){
//upload file, make tumbnail, then put info to the the tables on the database
//header location
} else if (isset($_POST['comment'])){
//put info to the tables on the database
//header location
} else {
die("you didn't write a comment or upload a file");
}
}
我的目的是让用户在没有评论的情况下上传图片,或者在不上传图片的情况下让他或她发表评论,显然不会让用户发送空表格。我搜索了一下,但我没有找到关于嵌套isset或空的很多信息。
我是否在正确的轨道上?如果是这样;我怎样才能使这个工作?
因为当我在不设置userFile
的情况下尝试上述代码时,它仍然会从userFile
部分给出错误,部分如下所示:
if($imagesize2 > $max_size2) {
die("your file is bigger than max size");
} else if($safe_imagetype2 =='image/jpeg' || $safe_imagetype2 =='image/png' || $safe_imagetype2 == 'image/jpg' || $safe_imagetype2 == 'image/gif') {
move_uploaded_file($safe_uploadTmp2, "./images/$safe_uploadName2");
} else {
die("it must be gif, jpg or png");
}
任何帮助表示感谢。
答案 0 :(得分:2)
这就是你要找的东西。
if(isset($_FILES['userFile']) && strlen($_FILES['userFile']['inputNAME']) > 1)
答案 1 :(得分:2)
您应该以这种方式检查the error during the file upload:
if (isset($_FILES['userFile']) && UPLOAD_ERR_OK == $_FILES['userFile']['error']) {
// The file has been uploaded successfully
}