php - Responsive File Manager upload issues -


i've been running responsive file manager recently, both on local machine hosted server , have received different issues each, despite code being same. these issues related uploading of files - tested files have been jpeg files, jpeg files larger 2 mb not able uploaded.

shared issues:

for both local machine & hosted server, if uploaded image exceeds 8mb, receive following error message:

the uploaded file exceeeds max size allowed.

local machine issues:

for local machine only, if uploaded image greater 2mb less 8mb, receive following error message:

warning: mime_content_type(): empty filename or path in c:\xampp\htdocs\project\webroot\3rdparty\responsive file manager\filemanager\upload.php on line 92.

where line 92 refers specific line within set of if statements:

if ( ! empty($_files) || isset($_post['url'])) {     if(isset($_post['url'])){         $temp = tempnam('/tmp','rf');         $handle = fopen($temp, "w");         fwrite($handle, file_get_contents($_post['url']));         fclose($handle);         $_files['file']= array(             'name' => basename($_post['url']),             'tmp_name' => $temp,             'size' => filesize($temp),             'type' => explode(".", strtolower($temp))         );     }      $info = pathinfo($_files['file']['name']);     $mime_type = $_files['file']['type'];     if (function_exists('mime_content_type')){         $mime_type = mime_content_type($_files['file']['tmp_name']); //line 92     } } 

i receive error well:

file extension not allowed. (@c:\xampp\htdocs\project\webroot\3rdparty\responsive file manager\filemanager\upload.php#260) 

which refers set of if statements:

if ( ! empty($_files) || isset($_post['url'])) {     else // file ext. not in allowed list     {         response(trans("error_extension").adderrorlocation(), 406)->send(); //line 260          exit();     } } 

server issues:

on server, 2 issues replaced single error:

not enough memory (@/home/site/public_html/webroot/3rdparty/responsive file manager/filemanager.upload.php#241) 

which refers set of if statements:

if ( ! empty($_files) || isset($_post['url'])) {     if (in_array(fix_strtolower($extension), $ext))     {         if ($is_img)         {             $memory_error = false;             if ( $extension != 'svg' && !create_img($targetfile, $targetfilethumb, 122, 91))             {                 $memory_error = true;             }             // not enough memory             if ($memory_error)             {                 unlink($targetfile);                 response(trans("not enought memory").adderrorlocation(), 406)->send(); //line 241                 exit();             }         }     } } 

attempts far:

i've looked @ following:

  • with file extensions issue on local machine, checked allowed file extensions in config.php file, both formats of jpeg there:

'ext_img' => array( 'jpg', 'jpeg', 'png', 'gif', 'bmp', 'tiff', 'svg' ), //images

meanwhile in include\mime_type_lib.php, both formats of jpeg there:

$mime_types = array(     'jpeg'    => 'image/jpeg',     'jpg'     => 'image/jpeg', ) 
  • on local machine, increased upload_max_filesize 128m. meanwhile on server, used cpanel's php settings same thing. additionally in config.php file, changed maxsizeupload setting match above changes follows:

'maxsizeupload' => 128,

  • i did check against latest version of config.php , upload.php see if versions outdated, wasn't case.

try this:

if ( ! empty($_files) || isset($_post['url'])) {     if(isset($_post['url'])){         if(false === ($temp = tempnam('/tmp','rf'))){             response(trans("failed create temporary file").adderrorlocation(), 406)->send();             exit();         }         $handle = fopen($temp, "w");         fwrite($handle, file_get_contents($_post['url']));         fclose($handle);         $explurl = explode(".", basename($_post['url']));         $suffix = array_pop($explurl);         $_files['file']= array(             'name' => basename($_post['url']),             'tmp_name' => $temp,             'size' => filesize($temp),              // type should mime-type not file suffix             'type' => $suffix,             'error' => upload_err_ok         );     }      if($_files['file']['error'] !== upload_err_ok){         response(trans("error upload code: ".$_files['file']['error']).adderrorlocation(), 406)->send();         // error code list: http://php.net/manual/en/features.file-upload.errors.php         exit();     }      if(empty($_files['file']['tmp_name'])){         response(trans("error upload").adderrorlocation(), 406)->send();         exit();     }      $info = pathinfo($_files['file']['name']);     $mime_type = $_files['file']['type'];     if (function_exists('mime_content_type')){         $mime_type = mime_content_type($_files['file']['tmp_name']);     } } 

Comments

Post a Comment