ユーザーが公開プロフィールを編集して、その過程で写真をアップロードできるフォームがあります。ユーザーが写真をアップロードした場合、または写真を変更しないために空白のままにした場合を除いて、すべて正常に機能します。それでも、写真をアップロードしようとして、空の場合はエラーがスローされます...チェックはありますが、ただそれを無視します。
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()関数は、私が作成したカスタムライブラリ内にありますが、ファイルが送信されていない場合は、その関数を呼び出すこともできません。
助けてくれてありがとう!