HEX
Server: Apache/2.4.46 (Ubuntu)
System: Linux localhost 5.11.0-49-generic #55-Ubuntu SMP Wed Jan 12 17:36:34 UTC 2022 x86_64
User: root (0)
PHP: 7.4.16
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/html/s3-file-server/api-upload-new.php
<?php
$baseUrl = "https://storage.fieldblaze.com/";

$response = array();
if(isset($_POST['file_move'])){

    $CrmId = isset($_POST['CrmId']) ? $_POST['CrmId'] : '';
    $folderName = isset($_POST['folderName']) ? $_POST['folderName'] : '';
    $file_name = $_FILES["file"]["name"];
    $file_name_tmp = $_FILES["file"]["tmp_name"];
    $check = getimagesize($file_name_tmp);

    $extension = pathinfo($file_name, PATHINFO_EXTENSION);
    $imageName = generateRandomString();
    $newFileName = $imageName . '-' . time() . '.' . $extension;

    $file_ext = $extension;
    $file_ext = strtolower($file_ext);

    //Prevent upload of certain files that can cause security issues
    if($file_ext=="php" || $file_ext=="html"){
        $response['errorcode'] = "201";
        $response['errormessage'] = "Invalid extenstion";
    }
    else
    {
        $file_error = 0;
        if($file_ext == "png" || $file_ext == "jpg" ||$file_ext == "jpeg" ||$file_ext == "gif" ||$file_ext == "bmp"){
            $file_dir = "uploads/img/";
        }
        elseif ($file_ext == "mp4" ||$file_ext == "avi" ||$file_ext == "mkv" ||$file_ext == "mpeg" ||$file_ext == "mov") {
            $file_dir = "uploads/vid/";
        }
        elseif ($file_ext == "mp3" ||$file_ext == "flac") {
            $file_dir = "uploads/aud/";
        }

        if($folderName)
        {
            $create_folder = __DIR__."/".$CrmId."/". $file_dir.$folderName.'/';
        }
        else
        {
            $create_folder = __DIR__."/".$CrmId."/". $file_dir;
        }


        $file_destination = $create_folder . $newFileName;

        if(!file_exists($create_folder)){
			mkdir($create_folder, 0777, true);
			echo "You create directory successfully $create_folder";
		}

        if (move_uploaded_file($file_name_tmp, $file_destination)) {
            $msg = "The file ". htmlspecialchars( basename($file_name)). " has been uploaded.";

            if($folderName)
            {
                $newFileURL =  $baseUrl.$CrmId."/". $file_dir.$folderName.'/'.$newFileName;
            }
            else
            {
                $newFileURL =  $baseUrl."".$CrmId."/". $file_dir . $newFileName;
            }


            $response['errorcode'] = "200";
            $response['errormessage'] = "Uploaded - ".$msg;
            $response["fileUrl"] = $newFileURL;
          } else {
           // echo "Sorry, there was an error uploading your file.";
            $newFileURL =  '';
            $response['errorcode'] = "201";
            $response['errormessage'] = "File has not uploaded";
            $response['fileUrl'] = $newFileURL;
          }

    }
    echo json_encode($response);
}


if(isset($_POST['file_move2'])){

    $CrmId = isset($_POST['CrmId']) ? $_POST['CrmId'] : '';
    $file_name = $_FILES["file"]["name"];
    $file_name_tmp = $_FILES["file"]["tmp_name"];
    $check = getimagesize($file_name_tmp);

    $extension = pathinfo($file_name, PATHINFO_EXTENSION);
    $imageName = generateRandomString();
    $newFileName = $imageName . '-' . time() . '.' . $extension;

    $file_ext = $extension;
    $file_ext = strtolower($file_ext);

    //Prevent upload of certain files that can cause security issues
    if($file_ext=="php" || $file_ext=="html"){
        $response['errorcode'] = "201";
        $response['errormessage'] = "Invalid extenstion";
    }
    else
    {
        $file_error = 0;
        if($file_ext == "png" || $file_ext == "jpg" ||$file_ext == "jpeg" ||$file_ext == "gif" ||$file_ext == "bmp"){
            $file_dir = "uploads/img/";
        }
        elseif ($file_ext == "mp4" ||$file_ext == "avi" ||$file_ext == "mkv" ||$file_ext == "mpeg" ||$file_ext == "mov") {
            $file_dir = "uploads/vid/";
        }
        elseif ($file_ext == "mp3" ||$file_ext == "flac") {
            $file_dir = "uploads/aud/";
        }


        $create_folder = __DIR__."/".$CrmId."/". $file_dir;

        $file_destination = $create_folder . $newFileName;

        if(!file_exists($create_folder)){
			mkdir($create_folder, 0777, true);
			echo "You create directory successfully $create_folder";
		}

        if (move_uploaded_file($file_name_tmp, $file_destination)) {
            $msg = "The file ". htmlspecialchars( basename($file_name)). " has been uploaded.";

            $newFileURL =  url()."/".$CrmId."/". $file_dir . $newFileName;
            $response['errorcode'] = "200";
            $response['errormessage'] = "Uploaded - ".$msg;
            $response['url'] = $newFileURL;
          } else {
           // echo "Sorry, there was an error uploading your file.";
            $newFileURL =  '';
            $response['errorcode'] = "201";
            $response['errormessage'] = "File has not uploaded";
            $response['url'] = $newFileURL;
          }

    }
    echo json_encode($response);
}



function generateRandomString($length = 30) {
    $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
    $charactersLength = strlen($characters);
    $randomString = '';
    for ($i = 0; $i < $length; $i++) {
        $randomString .= $characters[random_int(0, $charactersLength - 1)];
    }
    return $randomString;
}

function url(){
    if(isset($_SERVER['HTTPS'])){
        $protocol = ($_SERVER['HTTPS'] && $_SERVER['HTTPS'] != "off") ? "https" : "http";
    }
    else{
        $protocol = 'http';
    }

    $currentDir =  basename(__DIR__);
    return $protocol . "://" . $_SERVER['HTTP_HOST']."/".$currentDir."/";
}
?>