PHP Classes
elePHPant
Icontem

PHP Uploader class: Generate upload forms and handle uploaded files

Recommend this page to a friend!

  Author Author  
Name: Rizza <contact>
Classes: 1 package by
Country: United Kingdom United Kingdom


  Detailed description   Download Download .zip .tar.gz  
This class can generate upload forms and handle uploaded files.

It can generate HTML and JavaScript for a form to upload a single file using AJAX.

The class can also handle the file upload AJAX requests and validates the files, sending them to a given directory.

Details

Uploader-class

The uploader-class attempts to greatly reduce the amount of code required to make uploading files possible in php.

Dependencies include:

- jQuerey - Access to session functionality. (including the use of cookies)

The code required to produce an upload form is as follows:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/skeleton/2.0.4/skeleton.min.css"/>

<?php
//First we require our uploader class
require("/uploader.php");
//Then we create a new instance of the uploader class
$upload=new \uploader\upload(__DIR__."/uploads/",array("image/png","image/jpeg"),"test1","next.php");
//finally we get the html for that segment
echo $upload->get_html_segment();
?>

When the file is uploaded to the server, using ajax, an endpoint has to be available so the file can be validated. It is recommended this php file is not hidden behind any .htaccess rules. The example code for this file is as follows:

<?php
require("/uploader.php");
//Headers cannot be sent before this point
//Simply call the handle upload function and any uploads will be automatically verified (The function will exit on it being called).
\uploader\handle_upload();
?>

The uploader-class

A class to allow for upload of files to specified locations on the given server. Should handle all client and sever side interaction during upload of files via AJAX.This includes:

1. Generation of HTML for client. 2. The handling of JavaScript to send the file to the server. 3. To store session variables so uploads can be accepted and/or validated before being placed at the given directory.


Properties

  • string \$upload_dir The directory to upload files to.
  • int \$upload_id A unique identifier for the class instance.
  • int \$upload_limit The maximum sized files can be uploaded in (in bytes.)
  • string[] \$accepted_datatypes The list of mime types that are acceptable for
  • string \$file_name The name of the file after it has been uploaded (File extention should not be given.)
  • string \$upload_endpoint where the form should point to for file uploads to be allowed.
__construct ( \$dir\_to\_upload\_to, \$accepted\_datatypes, \$file\_name, \$upload\_endpoint, \$max\_size = 52428800 )

string$dir_to_upload_to* gives a specified upload directory string[]$accepted_datatypesA list of the accepted datatypes (must be in mime format without "" wildcards) string$file_name* The file name that should be held as the name of the file upon it being uploaded string$upload_endpoint* The endpoint the upload handle should try to upload information to. number$max_size* maximum accepted size of file uploaded(in bytes)

Things of note:

1. File uploaded automatically overwrite other files. This is true of all defined mime types. 2. Mime-types need to be used carefully , the "*" wildcard cannot be used in any capacity. Only direct mime types can be given. 3. The php_fileinfo extention needs to be enabled.


  Classes of Rizza  >  PHP Uploader class  >  Download Download .zip .tar.gz  >  Support forum Support forum (1)  >  Blog Blog  >  RSS 1.0 feed RSS 2.0 feed Latest changes  
Name: PHP Uploader class
Base name: uploader-class
Description: Generate upload forms and handle uploaded files
Version: -
PHP version: 5
License: The PHP License
 
  Groups   Applications   Files Files  

  Groups  
Group folder image HTTP HTTP protocol clients, headers and cookies View top rated classes
Group folder image PHP 5 Classes using PHP 5 specific features View top rated classes
Group folder image Files and Folders Listing, accessing and manipulating files and folders View top rated classes
Group folder image AJAX Interact with the Web server without page reloading View top rated classes


  Applications that use this package  
No pages of applications that use this class were specified.

Add link image If you know an application of this package, send a message to the author to add a link here.

  Files folder image Files  
File Role Description
Files folder imagedocs (1 file)
Accessible without login Plain text file index.php Example Example script
Accessible without login Plain text file next.php Aux. Auxiliary script
Accessible without login Plain text file README.md Doc. Documentation
Plain text file uploader.php Class Class source

  Files folder image Files  /  docs  
File Role Description
  Accessible without login Plain text file index.md Doc. Documentation

Download Download all files: uploader-class.tar.gz uploader-class.zip
NOTICE: if you are using a download manager program like 'GetRight', please Login before trying to download this archive.