This PHP class uploads files and manipulates images very easily

Overview

class.upload.php

Homepage : http://www.verot.net/php_class_upload.htm

Demo : http://www.verot.net/php_class_upload_samples.htm

Donations: http://www.verot.net/php_class_upload_donate.htm

Commercial use: http://www.verot.net/php_class_upload_license.htm

What does it do?

This class manages file uploads for you. In short, it manages the uploaded file, and allows you to do whatever you want with the file, especially if it is an image, and as many times as you want.

It is the ideal class to quickly integrate file upload in your site. If the file is an image, you can convert, resize, crop it in many ways. You can also apply filters, add borders, text, watermarks, etc... That's all you need for a gallery script for instance. Supported formats are PNG, JPG, GIF, WEBP and BMP.

You can also use the class to work on local files, which is especially useful to use the image manipulation features. The class also supports Flash uploaders and XMLHttpRequest.

The class works with PHP 5.3+, PHP 7 and PHP 8 (use version 1.x for PHP 4 support), and its error messages can be localized at will.

Install via composer

Edit your composer.json file to include the following:

    {
       "require": {
           "verot/class.upload.php": "*"
       }
    }

Or install it directly:

    composer require verot/class.upload.php

Demo and examples

Check out the test/ directory, which you can load in your browser. You can test the class and its different ways to instantiate it, see some code examples, and run some tests.

How to use it?

Create a simple HTML file, with a form such as:

">
<form enctype="multipart/form-data" method="post" action="upload.php">
  <input type="file" size="32" name="image_field" value="">
  <input type="submit" name="Submit" value="upload">
form>

Create a file called upload.php (into which you have first loaded the class):

$handle = new \Verot\Upload\Upload($_FILES['image_field']);
if ($handle->uploaded) {
  $handle->file_new_name_body   = 'image_resized';
  $handle->image_resize         = true;
  $handle->image_x              = 100;
  $handle->image_ratio_y        = true;
  $handle->process('/home/user/files/');
  if ($handle->processed) {
    echo 'image resized';
    $handle->clean();
  } else {
    echo 'error : ' . $handle->error;
  }
}

How does it work?

You instanciate the class with the $_FILES['my_field'] array where my_field is the field name from your upload form. The class will check if the original file has been uploaded to its temporary location (alternatively, you can instanciate the class with a local filename).

You can then set a number of processing variables to act on the file. For instance, you can rename the file, and if it is an image, convert and resize it in many ways. You can also set what will the class do if the file already exists.

Then you call the function process() to actually perform the actions according to the processing parameters you set above. It will create new instances of the original file, so the original file remains the same between each process. The file will be manipulated, and copied to the given location. The processing variables will be reset once it is done.

You can repeat setting up a new set of processing variables, and calling process() again as many times as you want. When you have finished, you can call clean() to delete the original uploaded file.

If you don't set any processing parameters and call process() just after instanciating the class. The uploaded file will be simply copied to the given location without any alteration or checks.

Don't forget to add enctype="multipart/form-data" in your form tag

if you want your form to upload the file.

Namespacing

The class is now namespaced in the Verot/Upload namespace. If you have the error Fatal error: Class 'Upload' not found, then make sure your file belongs to the namespace, or instantiate the class with its fully qualified name:

namespace Verot\Upload;
$handle = new Upload($_FILES['image_field']);

or

$handle = new \Verot\Upload\Upload($_FILES['image_field']);

How to process local files?

Instantiate the class with the local filename, as following:

$handle = new Upload('/home/user/myfile.jpg');

How to process a file uploaded via XMLHttpRequest?

Instantiate the class with the special php: keyword, as following:

$handle = new Upload('php:'.$_SERVER['HTTP_X_FILE_NAME']);

Prefixing the argument with php: tells the class to retrieve the uploaded data in php://input, and the rest is the stream's filename, which is generally in $_SERVER['HTTP_X_FILE_NAME']. But you can use any other name you see fit:

$handle = new Upload('php:mycustomname.ext');

How to process raw file data?

Instantiate the class with the special data: keyword, as following:

$handle = new Upload('data:'.$file_contents);

If your data is base64-encoded, the class provides a simple base64: keyword, which will decode your data prior to using it:

$handle = new Upload('base64:'.$base64_file_contents);

How to set the language?

Instantiate the class with a second argument being the language code:

$handle = new Upload($_FILES['image_field'], 'fr_FR');
$handle = new Upload('/home/user/myfile.jpg', 'fr_FR');

How to output the resulting file or picture directly to the browser?

Simply call process() without an argument (or with null as first argument):

$handle = new Upload($_FILES['image_field']);
header('Content-type: ' . $handle->file_src_mime);
echo $handle->process();
die();

Or if you want to force the download of the file:

process(); die();">
$handle = new Upload($_FILES['image_field']);
header('Content-type: ' . $handle->file_src_mime);
header("Content-Disposition: attachment; filename=".rawurlencode($handle->file_src_name).";");
echo $handle->process();
die();

Troubleshooting

If the class doesn't do what you want it to do, you can display the log, in order to see in details what the class does. To obtain the log, just add this line at the end of your code:

echo $handle->log;

Your problem may have been already discussed in the Frequently Asked Questions : http://www.verot.net/php_class_upload_faq.htm

Failing that, you can search in the forums, and ask a question there: http://www.verot.net/php_class_upload_forum.htm. Please don't use Github issues to ask for help.

Processing parameters

Note: all the parameters in this section are reset after each process.

File handling

  • file_new_name_body replaces the name body (default: null)
$handle->file_new_name_body = 'new name';
  • file_name_body_add appends to the name body (default: null)
$handle->file_name_body_add = '_uploaded';
  • file_name_body_pre prepends to the name body (default: null)
$handle->file_name_body_pre = 'thumb_';
  • file_new_name_ext replaces the file extension (default: null)
$handle->file_new_name_ext = 'txt';
  • file_safe_name formats the filename (spaces changed to _, etc...) (default: true)
$handle->file_safe_name = true;
  • file_force_extension forces an extension if there isn't any (default: true)
$handle->file_force_extension = true;
  • file_overwrite sets behaviour if file already exists (default: false)
$handle->file_overwrite = true;
  • file_auto_rename automatically renames file if it already exists (default: true)
$handle->file_auto_rename = true;
  • dir_auto_create automatically creates destination directory if missing (default: true)
$handle->dir_auto_create = true;
  • dir_auto_chmod automatically attempts to chmod the destination directory if not writeable (default: true)
$handle->dir_auto_chmod = true;
  • dir_chmod chmod used when creating directory or if directory not writeable (default: 0777)
$handle->dir_chmod = 0777;
  • file_max_size sets maximum upload size (default: upload_max_filesize from php.ini)
$handle->file_max_size = '1024'; // 1KB
  • mime_check sets if the class check the MIME against the allowed list (default: true)
$handle->mime_check = true;
  • no_script sets if the class turns scripts into text files (default: true)
$handle->no_script = false;
  • allowed array of allowed mime-types (or one string). wildcard accepted, as in image/* (default: check init())
$handle->allowed = array('application/pdf','application/msword', 'image/*');
  • forbidden array of forbidden mime-types (or one string). wildcard accepted, as in image/* (default: check init())
$handle->forbidden = array('application/*');

Image handling

  • image_convert if set, image will be converted (possible values : ''|'png'|'webp'|'jpeg'|'gif'|'bmp'; default: '')
$handle->image_convert = 'jpg';
  • image_background_color if set, will forcibly fill transparent areas with the color, in hexadecimal (default: null)
$handle->image_background_color = '#FF00FF';
  • image_default_color fallback color background color for non alpha-transparent output formats, such as JPEG or BMP, in hexadecimal (default: #FFFFFF)
$handle->image_default_color = '#FF00FF';
  • png_compression sets the compression level for PNG images, between 1 (fast but large files) and 9 (slow but smaller files) (default: null (Zlib default))
$handle->png_compression = 9;
  • webp_quality sets the compression quality for WEBP images (default: 85)
$handle->webp_quality = 50;
  • jpeg_quality sets the compression quality for JPEG images (default: 85)
$handle->jpeg_quality = 50;
  • jpeg_size if set to a size in bytes, will approximate jpeg_quality so the output image fits within the size (default: null)
$handle->jpeg_size = 3072;
  • image_interlace if set to true, the image will be saved interlaced (if it is a JPEG, it will be saved as a progressive PEG) (default: false)
$handle->image_interlace = true;

Image checking

The following eight settings can be used to invalidate an upload if the file is an image (note that open_basedir restrictions prevent the use of these settings)

  • image_max_width if set to a dimension in pixels, the upload will be invalid if the image width is greater (default: null)
$handle->image_max_width = 200;
  • image_max_height if set to a dimension in pixels, the upload will be invalid if the image height is greater (default: null)
$handle->image_max_height = 100;
  • image_max_pixels if set to a number of pixels, the upload will be invalid if the image number of pixels is greater (default: null)
$handle->image_max_pixels = 50000;
  • image_max_ratio if set to a aspect ratio (width/height), the upload will be invalid if the image apect ratio is greater (default: null)
$handle->image_max_ratio = 1.5;
  • image_min_width if set to a dimension in pixels, the upload will be invalid if the image width is lower (default: null)
$handle->image_min_width = 100;
  • image_min_height if set to a dimension in pixels, the upload will be invalid if the image height is lower (default: null)
$handle->image_min_height = 500;
  • image_min_pixels if set to a number of pixels, the upload will be invalid if the image number of pixels is lower (default: null)
$handle->image_min_pixels = 20000;
  • image_min_ratio if set to a aspect ratio (width/height), the upload will be invalid if the image apect ratio is lower (default: null)
$handle->image_min_ratio = 0.5;

Image resizing

  • image_resize determines is an image will be resized (default: false)
$handle->image_resize = true;

The following variables are used only if image_resize == true

  • image_x destination image width (default: 150)
$handle->image_x = 100;
  • image_y destination image height (default: 150)
$handle->image_y = 200;

Use either one of the following

  • image_ratio if true, resize image conserving the original sizes ratio, using image_x AND image_y as max sizes if true (default: false)
$handle->image_ratio = true;
  • image_ratio_crop if true, resize image conserving the original sizes ratio, using image_x AND image_y as max sizes, and cropping excedent to fill the space. setting can also be a string, with one or more from 'TBLR', indicating which side of the image will be kept while cropping (default: false)
$handle->image_ratio_crop = true;
  • image_ratio_fill if true, resize image conserving the original sizes ratio, using image_x AND image_y as max sizes, fitting the image in the space and coloring the remaining space. setting can also be a string, with one or more from 'TBLR', indicating which side of the space the image will be in (default: false)
$handle->image_ratio_fill = true;
  • image_ratio_x if true, resize image, calculating image_x from image_y and conserving the original sizes ratio (default: false)
$handle->image_ratio_x = true;
  • image_ratio_y if true, resize image, calculating image_y from image_x and conserving the original sizes ratio (default: false)
$handle->image_ratio_y = true;
  • image_ratio_pixels if set to a long integer, resize image, calculating image_y and image_x to match a the number of pixels (default: false)
$handle->image_ratio_pixels = 25000;

And eventually prevent enlarging or shrinking images

  • image_no_enlarging cancel resizing if the resized image is bigger than the original image, to prevent enlarging (default: false)
$handle->image_no_enlarging = true;
  • image_no_shrinking cancel resizing if the resized image is smaller than the original image, to prevent shrinking (default: false)
$handle->image_no_shrinking = true;

Image effects

The following image manipulations require GD2+

  • image_brightness if set, corrects the brightness. value between -127 and 127 (default: null)
$handle->image_brightness = 40;
  • image_contrast if set, corrects the contrast. value between -127 and 127 (default: null)
$handle->image_contrast = 50;
  • image_opacity if set, changes the image opacity. value between 0 and 100 (default: null)
$handle->image_opacity = 50;
  • image_tint_color if set, will tint the image with a color, value as hexadecimal #FFFFFF (default: null)
$handle->image_tint_color = '#FF0000';
  • image_overlay_color if set, will add a colored overlay, value as hexadecimal #FFFFFF (default: null)
$handle->image_overlay_color = '#FF0000';
  • image_overlay_opacity used when image_overlay_color is set, determines the opacity (default: 50)
$handle->image_overlay_opacity = 20;
  • image_negative inverts the colors in the image (default: false)
$handle->image_negative = true;
  • image_greyscale transforms an image into greyscale (default: false)
$handle->image_greyscale = true;
  • image_threshold applies a threshold filter. value between -127 and 127 (default: null)
$handle->image_threshold = 20;
  • image_pixelate pixelate an image, value is block size (default: null)
$handle->image_pixelate = 10;
  • image_unsharp applies an unsharp mask, with alpha transparency support (default: false)
$handle->image_unsharp = true;
  • image_unsharp_amount unsharp mask amount, typically 50 - 200 (default: 80)
$handle->image_unsharp_amount = 120;
  • image_unsharp_radius unsharp mask radius, typically 0.5 - 1 (default: 0.5)
$handle->image_unsharp_radius = 1;
  • image_unsharp_threshold unsharp mask threshold, typically 0 - 5 (default: 1)
$handle->image_unsharp_threshold = 0;

Image text

  • image_text creates a text label on the image, value is a string, with eventual replacement tokens (default: null)
$handle->image_text = 'test';
  • image_text_direction text label direction, either 'h' horizontal or 'v' vertical (default: 'h')
$handle->image_text_direction = 'v';
  • image_text_color text color for the text label, in hexadecimal (default: #FFFFFF)
$handle->image_text_color = '#FF0000';
  • image_text_opacity text opacity on the text label, integer between 0 and 100 (default: 100)
$handle->image_text_opacity = 50;
  • image_text_background text label background color, in hexadecimal (default: null)
$handle->image_text_background = '#FFFFFF';
  • image_text_background_opacity text label background opacity, integer between 0 and 100 (default: 100)
$handle->image_text_background_opacity = 50;
  • image_text_font built-in font for the text label, from 1 to 5. 1 is the smallest (default: 5). Value can also be a string, which represents the path to a GDF or TTF font (TrueType).
$handle->image_text_font = 4; // or './font.gdf' or './font.ttf'
  • image_text_size font size for TrueType fonts, in pixels (GD1) or points (GD1) (default: 16) (TrueType fonts only)
$handle->image_text_size = 24;
  • image_text_angle text angle for TrueType fonts, in degrees, with 0 degrees being left-to-right reading text(default: null) (TrueType fonts only)
$handle->image_text_angle = 45;
  • image_text_x absolute text label position, in pixels from the left border. can be negative (default: null)
$handle->image_text_x = 5;
  • image_text_y absolute text label position, in pixels from the top border. can be negative (default: null)
$handle->image_text_y = 5;
  • image_text_position text label position withing the image, a combination of one or two from 'TBLR': top, bottom, left, right (default: null)
$handle->image_text_position = 'LR';
  • image_text_padding text label padding, in pixels. can be overridden by image_text_padding_x and image_text_padding_y (default: 0)
$handle->image_text_padding = 5;
  • image_text_padding_x text label horizontal padding (default: null)
$handle->image_text_padding_x = 2;
  • image_text_padding_y text label vertical padding (default: null)
$handle->image_text_padding_y = 10;
  • image_text_alignment text alignment when text has multiple lines, either 'L', 'C' or 'R' (default: 'C') (GD fonts only)
$handle->image_text_alignment = 'R';
  • image_text_line_spacing space between lines in pixels, when text has multiple lines (default: 0) (GD fonts only)
$handle->image_text_line_spacing = 3;

Image transformations

  • image_auto_rotate automatically rotates the image according to EXIF data (JPEG only) (default: true, applies even if there is no image manipulations)
$handle->image_auto_rotate = false;
  • image_flip flips image, wither 'h' horizontal or 'v' vertical (default: null)
$handle->image_flip = 'h';
  • image_rotate rotates image. Possible values are 90, 180 and 270 (default: null)
$handle->image_rotate = 90;
  • image_crop crops image. accepts 4, 2 or 1 values as 'T R B L' or 'TB LR' or 'TBLR'. dimension can be 20, or 20px or 20% (default: null)
$handle->image_crop = array(50,40,30,20); OR '-20 20%'...
  • image_precrop crops image, before an eventual resizing. accepts 4, 2 or 1 values as 'T R B L' or 'TB LR' or 'TBLR'. dimension can be 20, or 20px or 20% (default: null)
$handle->image_precrop = array(50,40,30,20); OR '-20 20%'...

Image borders

  • image_bevel adds a bevel border to the image. value is thickness in pixels (default: null)
$handle->image_bevel = 20;
  • image_bevel_color1 top and left bevel color, in hexadecimal (default: #FFFFFF)
$handle->image_bevel_color1 = '#FFFFFF';
  • image_bevel_color2 bottom and right bevel color, in hexadecimal (default: #000000)
$handle->image_bevel_color2 = '#000000';
  • image_border adds a unicolor border to the image. accepts 4, 2 or 1 values as 'T R B L' or 'TB LR' or 'TBLR'. dimension can be 20, or 20px or 20% (default: null)
$handle->image_border = '3px'; OR '-20 20%' OR array(3,2)...
  • image_border_color border color, in hexadecimal (default: #FFFFFF)
$handle->image_border_color = '#FFFFFF';
  • image_border_opacity border opacity, integer between 0 and 100 (default: 100)
$handle->image_border_opacity = 50;
  • image_border_transparent adds a fading-to-transparent border to the image. accepts 4, 2 or 1 values as 'T R B L' or 'TB LR' or 'TBLR'. dimension can be 20, or 20px or 20% (default: null)
$handle->image_border_transparent = '3px'; OR '-20 20%' OR array(3,2)...
  • image_frame type of frame: 1=flat 2=crossed (default: null)
$handle->image_frame = 2;
  • image_frame_colors list of hex colors, in an array or a space separated string (default: '#FFFFFF #999999 #666666 #000000')
$handle->image_frame_colors = array('#999999',  '#FF0000', '#666666', '#333333', '#000000');
  • image_frame_opacity frame opacity, integer between 0 and 100 (default: 100)
$handle->image_frame_opacity = 50;

Image watermark

  • image_watermark adds a watermark on the image, value is a local filename. accepted files are GIF, JPG, BMP, WEBP, PNG and PNG alpha (default: null)
$handle->image_watermark = 'watermark.png';
  • image_watermark_x absolute watermark position, in pixels from the left border. can be negative (default: null)
$handle->image_watermark_x = 5;
  • image_watermark_y absolute watermark position, in pixels from the top border. can be negative (default: null)
$handle->image_watermark_y = 5;
  • image_watermark_position watermark position withing the image, a combination of one or two from 'TBLR': top, bottom, left, right (default: null)
$handle->image_watermark_position = 'LR';
  • image_watermark_no_zoom_in prevents the watermark to be resized up if it is smaller than the image (default: true)
$handle->image_watermark_no_zoom_in = false;
  • image_watermark_no_zoom_out prevents the watermark to be resized down if it is bigger than the image (default: false)
$handle->image_watermark_no_zoom_out = true;

Image reflections

  • image_reflection_height if set, a reflection will be added. Format is either in pixels or percentage, such as 40, '40', '40px' or '40%' (default: null)
$handle->image_reflection_height = '25%';
  • image_reflection_space space in pixels between the source image and the reflection, can be negative (default: null)
$handle->image_reflection_space = 3;
  • image_reflection_color reflection background color, in hexadecimal. Now deprecated in favor of image_default_color (default: #FFFFFF)
$handle->image_default_color = '#000000';
  • image_reflection_opacity opacity level at which the reflection starts, integer between 0 and 100 (default: 60)
$handle->image_reflection_opacity = 60;

Values that can be read before calling process()

  • file_src_name Source file name
  • file_src_name_body Source file name body
  • file_src_name_ext Source file extension
  • file_src_pathname Source file complete path and name
  • file_src_mime Source file mime type
  • file_src_size Source file size in bytes
  • file_src_error Upload error code
  • file_is_image Boolean flag, true if the file is a supported image type

If the file is a supported image type (and open_basedir restrictions allow it)

  • image_src_x Source file width in pixels
  • image_src_y Source file height in pixels
  • image_src_pixels Source file number of pixels
  • image_src_type Source file type (png, webp, jpg, gif or bmp)
  • image_src_bits Source file color depth

Values that can be read after calling process()

  • file_dst_path Destination file path
  • file_dst_name_body Destination file name body
  • file_dst_name_ext Destination file extension
  • file_dst_name Destination file name
  • file_dst_pathname Destination file complete path and name

If the file is a supported image type

  • image_dst_type Destination file type (png, webp, jpg, gif or bmp)
  • image_dst_x Destination file width
  • image_dst_y Destination file height

Requirements

Most of the image operations require GD. GD2 is greatly recommended

Version 1.x supports PHP 4, 5 and 7, but is not namespaced. Use it if you need support for PHP <5.3

Version 2.x supports PHP 5.3+, PHP 7 and PHP 8.

Comments
  • Can't upload without setting

    Can't upload without setting "action" on form

    when using $_SERVER['REQUEST_METHOD'] == 'POST' to handle my POST requests I simply can't instantiate a new object but I can grab my $_FILES normally (I thought thats basically what it needs to make a new object) why is that?

    opened by nulligor 15
  • IOS direct upload orientation?

    IOS direct upload orientation?

    Still having trouble with pictures shot on IOS10 with iPhone6 in portrait mode. After upload without first editing photo shows up as landscape. Should this be working properly in latest release?

    opened by wbroeke 14
  • Chrome image/x-ms-bmp problem

    Chrome image/x-ms-bmp problem

    Chrome doesn't properly handle image/x-ms-bmp mime type (see https://bugs.chromium.org/p/chromium/issues/detail?id=449489)

    It's a quick fix, if you have something better do as you want.

    opened by G4Zz0L1 12
  • Base64 Decode issue.

    Base64 Decode issue.

    Hello.

    This is probably the simplest question/issue you will ever answer but i'm stuck and cannot see what i am doing wrong regarding base64 and mimetype

                    $formData = [
                        'avatar' => $_POST['imagebase64'],
                        'pin' => $_SESSION['upin'],
                    ];
    
                    list($type, $formData['avatar']) = explode(';', $formData['avatar']);
                    list(, $data) = explode(',', $formData['avatar']);
    
                    $handle = new upload('base64:' . $formData['avatar']);
                    if ($handle->uploaded) {
                        $handle->file_new_name_body = '12345';
                        $handle->image_resize = true;
                        $handle->image_x = 200;
                        $handle->image_y = 200;
                        $handle->file_max_size = '2097152'; // 2MB
                        $handle->allowed = array('image/jpeg', 'image/png', 'image/gif');
                        $handle->process('uploads/users/');
                        if ($handle->processed) {
                            if ($this->auth->updateUserProfileImage($formData)) {
                                startHelp::flash('message', 'profile image changed', 'alert alert-success mb-0');
                                startHelp::redirect('user/settings#profile-picture');
                                $handle->clean();
                                die();
                            }
    
                            die(LANG['something-went-wrong']);
                        } else {
                            echo 'error : ' . $handle->error;
                            echo $handle->log;
                            die();
                        }
                    }
    

    This is the code but it wont upload due to the Base64 not showing the mime. See the error log below:

    system information

    • class version : 0.35dev
    • operating system : WINNT
    • PHP version : 7.2.13
    • GD version : 2.1.0
    • supported image types : png jpg gif bmp
    • open_basedir : no restriction
    • upload_max_filesize : 2M (2097152 bytes)
    • language : en_GB source is a base64 string of length 88762
    • requires a temp file ... file created temp file is: C:\Users\Jack\AppData\Local\Temp\4a485e3a90577a8cbba4df3f47c31895
    • local file OK determining MIME type
    • Checking MIME type with Fileinfo PECL extension MAGIC path defaults to C:\xampp\php/extras/magic Fileinfo PECL extension failed (finfo_open)
    • Checking MIME type with UNIX file() command UNIX file() command not availabled
    • Checking MIME type with mime.magic file (mime_content_type()) MIME type detected as application/octet-stream by mime_content_type()
    • MIME validated as application/octet-stream
    • Flash may be rewriting MIME as application/octet-stream
    • Try to guess MIME type from file extension (): doesn't look like anything known source variables
    • You can use all these before calling process() file_src_name : base64 file_src_name_body : base64 file_src_name_ext : file_src_pathname : C:\Users\Jack\AppData\Local\Temp\4a485e3a90577a8cbba4df3f47c31895 file_src_mime : application/octet-stream file_src_size : 88762 (max= 2097152) file_src_error : 0 process file to uploads/users/\
    • file size OK
    • script renamed as base64.txt!
    • error: Incorrect type of file.

    What am i doing wrong? Thankyou very much.

    This is the mime type: data:image/jpeg;base64,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

    opened by jackttcoms 11
  • mime_content_type(): Can only process string or stream arguments

    mime_content_type(): Can only process string or stream arguments

    sometimes , specially in laravel : $this->file_src_pathname , in line 2484 class.upload.php , is not string and to use mime_content_type function , we should change that to string , because of that I change line 2484 to :

    $this->file_src_mime = mime_content_type(strval($this->file_src_pathname));

    and it's done

    opened by datomegasherly 10
  • A non well formed numeric value encountered in...

    A non well formed numeric value encountered in...

    I use this code: https://www.verot.net/php_class_upload_forum.htm?php_class_upload_forum_thread_id=4617 to upload file from url, all works well, but in server logs I have errors like this: [Wed Jan 04 13:49:59.888705 2017] [fcgid:warn] [pid 30490:tid 139711553021696] [client 79.187.5.129:54907] mod_fcgid: stderr: PHP Notice: A non well formed numeric value encountered in /home/domains/mydomain/public_html/scripts/class.upload.php on line 2720, referer: http://mydomain/administrator/index.php?go=edit_page&id=7

    class.upload.php, 2720 line is: $size *= 1024;

    How can I solve this problem?

    opened by spokospace 10
  • Photos Auto Rotating

    Photos Auto Rotating

    Hey there.

    We are experiencing photos uploaded from a camera that are rotating when they shouldn't be. Swapping from portrait to landscape.

    This is happening even IF we specify $handle->image_auto_rotate = false;

    What else could be causing this to happen?

    opened by scottiericho 9
  • Animated gifs stopped working in latest version

    Animated gifs stopped working in latest version

    Hello!

    There seems to be a problem with animated gifs on latest version 0.34dev. When I'm uploading animated gifs, it converts them to static images keeping only the first frame after processing, even when mage_resize is set to false and no other manipulations are set.

    Animated gifs are working fine on version 0.33dev and older.

    My settings:

    $upload = new Upload($_FILES['new-image']);
    $upload->file_overwrite = true;
    $upload->file_auto_rename = false;
    $upload->mime_check = true;
    $upload->no_script = true;
    $upload->file_max_size = '20M';
    $upload->allowed = ['image/*'];
    $upload->image_resize = false;
    

    PHP version: 7.0.11

    It happens with any animated gif image I tried, e.g. https://gif-avatars.com/img/150x150/happy-cat.gif

    bug 
    opened by Mad182 9
  • When resize = true, the upload is too slow

    When resize = true, the upload is too slow

    I've implemented the script, but when the resize option is true, the upload seems to be too slow to finish, even in localhost. I'm using wamp server with gd2 activated. There's any solution for this?

    opened by tiagomaker 9
  • Add  more mime types

    Add more mime types

    Hello, First of all thank you for everything you do, it's really amazing !

    I just saw that when I transform XLSX files into CSV with Microsfot Excel into semicolon separator, that the "mime type" became text/x-c instead of text/csv.

    Suddenly it is automatically refused during the upload.

    When searching, there are even other mime types for CSV files like : text/x-c text/x-csv text/comma-separated-values text/x-comma-separated-values application/csv application/x-csv

    Currently, to allow them, I have to add them manually in $handle->allowed[]

    Could you add them by default in your class?

    Thank you.

    opened by SpiderNeo1 8
  • Invalid character use in regular expressions

    Invalid character use in regular expressions

    In class.upload.php regular expressions sometimes make use of character sets, e.g.

    if (preg_match("/^([\.-\w]+)\/([\.-\w]+)(.*)$/i", $this->file_src_mime)) { 
       ...
    }
    

    The problem is that \w is not a valid use in regexp character sets, and issues PHP warnings if executed.

    Could you please rewrite these (multiple) regexp's in a new version? Thx in advance.

    opened by ReneBakkerBBIT 8
  • PSR-7 UploadedFileInterface support

    PSR-7 UploadedFileInterface support

    Is this library support PSR-7 UploadedFileInterface ? I want to integrate it with slim framework 4 that is using that interface when a file is uploaded

    opened by realrecordzLab 2
  • auto rotation problem

    auto rotation problem

    Around line 3300 where exif jpeg rotation occurs, i tested it with simple mobile phone images, and my server dropped a timeout (30s). Can you change the pixel by pixel method to php imagerotate function? Thats much faster. Thanks

    opened by syddiqua 1
  • open_basedir restriction

    open_basedir restriction

    Hi there, is it possible to override the tmp path to avoid acces violations caused by open_basedir restrictions? Something like $this->handle->custom_path = 'my_new_temp_path'; This would help a lot.

    opened by labby 9
Very easy to use a current limiting component, the code is very simple, based on the webman framework.

Very easy to use a current limiting component, the code is very simple, based on the webman framework.

nsp-team 13 Dec 29, 2022
A web app for the resolution of a mobile game in wich you have 4 images and a list of letters, then a few boxes to fill with the word connecting the four images.

4images_1mot_solutions A web app for the resolution of a mobile game in wich you have 4 images and a list of letters, then a few boxes to fill with th

FOTSO Claude 3 Jan 13, 2022
The best announcer for PocketMine-MP 4.0 servers, make messages for your users very easily

BroadcastACM The best announcer for PocketMine-MP 4.0 servers, make messages for your users very easily. Make the best announcements for your server w

fernanACM 3 May 30, 2022
Exploiting and fixing security vulnerabilities of an old version of E-Class. Project implemented as part of the class YS13 Cyber-Security.

Open eClass 2.3 Development of XSS, CSRF, SQLi, RFI attacks/defences of an older,vulnerable version of eclass. Project implemented as part of the clas

Aristi_Papastavrou 11 Apr 23, 2022
Allows generate class files parse from json and map json to php object, including multi-level and complex objects;

nixihz/php-object Allows generate class files parse from json and map json to php object, including multi-level and complex objects; Installation You

zhixin 2 Sep 9, 2022
Basic class library to read, write and view files using PHP.

File Basic class library to read, write and view files using PHP. Supported PHP Versions Build Status (dev) Main Aim of The Library The main aim of th

WebFiori 2 May 13, 2022
Optimizes class loading performance by generating a single PHP file containing all of the autoloaded files.

Class Preloader for PHP This tool is used to generate a single PHP script containing all of the classes required for a specific use case. Using a sing

Class Preloader 356 Nov 26, 2022
This project is very diverse and based upon many languages and libraries such as C++, Python, JavaScript, PHP and MQTT

ADMS-Real-time-project This project is very diverse and based upon many languages and libraries such as C++, Python, JavaScript, PHP and MQTT Advance_

Nitya parikh 1 Dec 1, 2021
Provide CSV, JSON, XML and YAML files as an Import Source for the Icinga Director and optionally ship hand-crafted additional Icinga2 config files

Icinga Web 2 Fileshipper module The main purpose of this module is to extend Icinga Director using some of it's exported hooks. Based on them it offer

Icinga 25 Sep 18, 2022
Perch Dashboard app for exporting content to (Kirby) text files and Kirby Blueprint files

toKirby Perch Dashboard app for exporting content to (Kirby) text files and Kirby Blueprint files. You can easily install and test it in a few steps.

R. Banus 4 Jan 15, 2022
An online system to keep digitized form of employee personal files (staff personal files)

An online system to keep digitized form of employee personal files (staff personal files).

p r o c e s s o r 2 Jun 18, 2022
AI PHP is a wrapper for rubix ml to make AI very approachable

AI PHP Rubix Wrap A wrapper for Rubix ML to make it very approachable Example: $report = RubixService::train($data, 'column_with_label'); Where co

null 15 Nov 5, 2022
Very flexible git hook manager for php developers

CaptainHook CaptainHook is an easy to use and very flexible git hook library for php developers. It enables you to configure your git hook actions in

CaptainHook 812 Dec 30, 2022
A FREE Wordpress Plugin to compress and convert images using cwebp, jpegoptim and optipng.

Squidge Is FREE WordpPress Plugin built for developers in mind compressing and convert images using jpegoptim, optipng, cwebp, and libavif. It's extre

Ainsley Clark 23 Dec 10, 2022
BreadBooru is a light, quick, and easy to setup imageboard with themes, images, and video support

BreadBooru a bad imageboard, that has nothing to do with (dan/gel)booru, and yet still has booru in the name BreadBooru is a light, quick, and easy to

bread 2 Jan 22, 2022
File Upload widget with multiple file selection, drag&drop support, progress bar, validation and preview images, audio and video for jQuery

File Upload widget with multiple file selection, drag&drop support, progress bar, validation and preview images, audio and video for jQuery. Supports cross-domain, chunked and resumable file uploads. Works with any server-side platform (Google App Engine, PHP, Python, Ruby on Rails, Java, etc.) that supports standard HTML form file uploads.

Sebastian Tschan 31.1k Dec 30, 2022
Doogle is a search engine and web crawler which can search indexed websites and images

Doogle Doogle is a search engine and web crawler which can search indexed websites and images, and then use keywords to be searched later. Written pri

Zepher Ashe 9 Jan 1, 2023
A hacky PHP script to download posts, images, videos and framework grading from Parent Zone

ParentZoneDownloader A hacky PHP script to download posts, images, videos and framework grading from Parent Zone Pre-Requisites Tested on PHP 7.4, but

null 2 Sep 6, 2021