我有一个表单,用户可以在其中编辑他们的公共个人资料并在此过程中上传图片。一切正常,除了当用户上传照片或只是将其留空而不更改它时,它仍然会继续并尝试上传它并在它为空时抛出错误......我确实有一个检查,但是它只是忽略它。
if(isset($_FILES['userfile']))
{
$file_name = $this->session->userdata('user_id');
$img = $this->custom_lib->img_upload('./upload/user/', $file_name);
$user_pic = 'upload/user/'.$file_name.$img['file_ext'];
} else {
$user_pic = 'upload/default.png';
}
我认为问题出在 if 语句中,但我看不出它可能是什么。如果我确实选择了一张图片,它会很好地上传它并且一切正常。如果我将图像字段留空(不选择文件)而不是这样做:
$user_pic = 'upload/default.png';
它尝试上传一个文件......它不存在......然后它抛出一个错误。img_upload() 函数在我制作的自定义库中,但是如果没有提交文件,甚至不应该调用该函数。
我很感激任何帮助!