如何检查图像是否与其他表单数据一起提交

bla*_*elt 2 php codeigniter codeigniter-2

我有一个用户注册表单,上传图像与其他表单元素是可选的.因此,有时用户可能无法将图像与其他数据一起上传.

现在问题是即使用户没有上传图像,以下代码总是回显文件已上传

您能否请您告诉我如何检查图像是否是由用户提交并使其回显/显示"未上传"如果没有上传?

提前致谢 :)

在我的控制器文件中

extract($_POST); // <<This is to retrieve all form data at once

if(isset($_FILES['userfile'])){
    echo"file uploaded";
} else{
    echo "Not Uploaded";
}
Run Code Online (Sandbox Code Playgroud)

这是在我的视图文件中

<input type="file" class="" name="userfile" size="20" />
Run Code Online (Sandbox Code Playgroud)

Fos*_*sco 16

每个PHP文档:

如果表单中没有选择上传文件,PHP将返回$ _FILES ['userfile'] ['size']为0,$ _FILES ['userfile'] ['tmp_name']为无.

来源:http://www.php.net/manual/en/features.file-upload.post-method.php

所以你的条件可以改为:

if(isset($_FILES['userfile']) && $_FILES['userfile']['size'] > 0){
     echo"file uploaded";
} else echo "Not Uploaded" ;
Run Code Online (Sandbox Code Playgroud)