ResponsiveFilemanager
ResponsiveFilemanager copied to clipboard
Warning: mime_content_type(): Empty filename or path
I'm receiving this warning occasionally. Not all the time. And even with this warning, the file is uploaded successfully. I hope you can help me get rid of it. I'm using php7.4 and the uploaded image file name is "WhatsApp Image 2021-12-30 at 10-20-23 AM.jpg". Sometimes I uploaded files are from mobile devices and most of time have Arabic letters in file names.
PHP Warning: mime_content_type(): Empty filename or path in /****/filemanager/upload.php on line 117
PHP Warning: fopen(): Filename cannot be empty in /****/filemanager/UploadHandler.php on line 1089
PHP Warning: fread() expects parameter 1 to be resource, bool given in /****/filemanager/UploadHandler.php on line 1090
PHP Warning: fclose() expects parameter 1 to be resource, bool given in /****/filemanager/UploadHandler.php on line 1091
Code at upload.php at line 117
/*Line 113*/ if ($config['mime_extension_rename']) {
$info = pathinfo($_FILES['files']['name'][0]);
$mime_type = $_FILES['files']['type'][0];
if (function_exists('mime_content_type')) {
/*Line 117*/ $mime_type = mime_content_type($_FILES['files']['tmp_name'][0]);
} elseif (function_exists('finfo_open')) {
$finfo = finfo_open(FILEINFO_MIME_TYPE);
$mime_type = finfo_file($finfo, $_FILES['files']['tmp_name'][0]);
} else {
$mime_type = get_file_mime_type($_FILES['files']['tmp_name'][0]);
}
$extension = get_extension_from_mime($mime_type);
if ($extension == 'so' || $extension == '' || $mime_type == "text/troff") {
$extension = $info['extension'];
}
$filename = $info['filename'] . "." . $extension;
} else {
$filename = $_FILES['files']['name'][0];
}
$_FILES['files']['name'][0] = fix_filename($filename, $config);
Code at UploadHandler.php at line 1089:
protected function imagetype($file_path) {
/*Line 1089*/ $fp = fopen($file_path, 'r');
$data = fread($fp, 4);
fclose($fp);
// GIF: 47 49 46 38
if ($data === 'GIF8') {
return self::IMAGETYPE_GIF;
}
// JPG: FF D8 FF
if (bin2hex(substr($data, 0, 3)) === 'ffd8ff') {
return self::IMAGETYPE_JPEG;
}
// PNG: 89 50 4E 47
if (bin2hex(@$data[0]).substr($data, 1, 4) === '89PNG') {
return self::IMAGETYPE_PNG;
}
if ($data === 'RIFF') {
return self::IMAGETYPE_WEBP;
}
return false;
}