我有一个带有输入类型文件的表单,并且不必上传。但是在发生提交操作后,我想检查控制器部分,如果文件输入是空的。我有一个以下的视图页面和控制器,但该方法对我不起作用。
这是表格填写页面
<form enctype="multipart/form-data" method="post"
action="<?php echo site_url('welcome/do_upload');?>">
username:<input type="text" name="username">
<p>upload file</p>
<input type="file" name="image">
<input type="submit" name="submit" value="submit">
</form>
这是我试图检查文件是否被选中上传的控制器。
if(isset($_FILES['image'])){
echo( "image selected");
} else {
echo("image not selected");
}
结果的输出始终是&#34;选择的图像&#34;虽然我没有选择任何图像
答案 0 :(得分:1)
提交 FORM
时出错 $_FILES['image']
将永远被创造,无论如何使你的条件成真。
您在这里检查错误的条件,您要做的是当用户上传文件时。您可能要做的是检查$_FILES['image']['name']
长度是> 0
还是$_FILES['image']['size']
是> 0
。
示例,代码不用于生产,仅用于测试。
if ( strlen($_FILES['image']['name']) > 0){
//yeahhhh!
}