Codeigniter upload unallowed file not producing error
我在使用这个基于 CI 文档中的示例的简单 Codeigniter 图像上传时遇到了问题。
出了什么问题:
1.) 如果上传的文件类型不正确,它不会返回错误。它将我所有的 post 变量设置为 null 并继续处理。
2.) 我能够上传 .sql 和一些(但不是全部).exe 文件,即使允许的文件类型仅限于 jpg、gif 和 png。
因此,拒绝允许的文件类型并不是常见的问题,而是过于宽容,并且没有在应该返回错误时返回。
1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
$photo = $this->input->post("photo");
$config[‘upload_path’] = ‘./profile_img/’; $this->load->library(‘upload’, $config); if(isset($_FILES[‘userfile’]) && $_FILES[‘userfile’][‘size’] > 0){ $data = array( $this->user_model->update($data, $this->ion_auth->get_user_id()); |
奇怪的是,解决方案是在错误条件下的第一次重定向之后插入 exit()。
显然,这种行为是这样的,即使发现错误条件,重定向也会被忽略,并且脚本的其余部分会被执行。显然是 CI 中的一个令人费解且难以找到的错误。
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/268471.html