Code

Simple File Sharer

Simple File Sharer

By
Cart 571 sales
Recently Updated

Simple File Sharer – 23.02 February 5th 2023

allows you to run your own file sharing service – out of the box

Installation Video

Don’t miss the new SFS Module Multiple Users Mod for the Simple File Sharer

– ready to add other languages

Browser Facts regarding SFS 3.x

click on image for details (updated on November 8th 2014)

Features

- single file upload and sharing
- multiple files upload and sharing (since 1.4)
- drag and drop or just select file(s)
- autoupload
- progressbar and progress numbers
- mail sharing, ability to send to more than one recipient by closing the success message
- admin interface with dashboard, various charts and possibility to manage uploaded files
- ready to use ajax contact form
- built on bootstrap 2.3.2 (1 theme) and 3.2.0 (17 themes)
- responsive (since 1.4)
- ready to use faqs module
- easy to change frontend languages (English, Deutsch (Sie), Deutsch (Du) included)
- possibility to block list of extensions
- possibility to allow list of extensions
- possibility to disable direct file downloads (IP or session based), or to disable the protection
- display expiration date of files on download or deletion page
- autodelete depending on age
- autodelete depending last download (since 1.2)
- countdown X seconds befor download is possible (since 1.2)
- reporting files function (since 1.2)
- image preview of uploaded images (since 1.2)
- bandwidth throtteling on downloads (since 1.3)
- supporting mod_xsendfile (since 1.3)
- maximum age of downloads by uploader (since 1.6)
- maximum number of downloads by uploader (since 1.6)
- CAPTCHA protection (since 1.64)
- QR Codes (since 2.0)
- Bitly Short Urls (since 2.0)
- SFS internal Short Urls (since 3.50)
- HTML emails (since 2.0)
- Social Sharing [since 2.1]
- Copy to Clipboard function [since 2.1]
- Display Upload Speed, estimated and elapsed Upload-Time [since 2.15]
- file descriptions [since 2.20]
- possibility to leave message for downloaders on download-page [since 2.20]
- file locking [since 2.20]
- multiple email recipients [New since 2.21]
- Adfly Short Urls (since 2.23)
- Google Short Urls (since 2.24) removed with SFS 3.30
- possibility to just allow admins to upload (since 2.26)
- ....

Requirements

- mysql 5.6 and mysql 8.x tested successful with MariaDB in the past, but not supported officially
- Apache - php 8.x (8.1.14) tested successful with Apache (and nginx, but not officially supported)
- working php mail function (usually a standard)
- enabled mod_rewrite and the possibility to use them (.htaccess)
- GD library for image previews and CAPTCHA module
- optional: mod_XSendFile (optional – meant for downloads of huge files) more info to mod_xsendfile: https://tn123.org/mod_xsendfile/

known but intercepted issues

- Safari browsers on Windows platforms are not able to upload multiple files at once – SFS turns multiple upload support for Safari browsers on Windows platforms automatically off – single uploads works although
- Drag and Drop functionality doesn’t work on Internet Explorer Versions smaller as 10.0 (incl. MSIE10.0 with compatibility mode = MSIE7.0) – SFS just displays another message without the drag and drop information on upload page

Filesize Hints

The main troublemaker
The maximum used filesize is depending on various circumstances. And the filesize you set here will be recalculated to avoid upload troubles (if you set a higher value as your webserver?s config allows).

These are post_max_size and upload_max_filesize

Values for the two settings above can be set in the php.ini (or maybe inside your .htaccess if the webserver’s config allows this) – usually this should be enough

If you’re running PHP as FastCGI (FCGI) you might have to adapt FcgidMaxRequestLen too, more on http://www.howtoforge.com/apache2-mod_fcgid-http-request-length-exceeds-maxrequestlen

Another maybe useful information if webserver is set up with suPHP enabled:
christibond said
“In .htaccess should add this line : suPHP_ConfigPath /home/<user>/etc/php.ini This should be the path to the custom php.ini , if the account is set up with suPHP enabled.”
nginx (not officially supported) – adapting of client_max_body_size maybe needed – more information in the readme.pdf 7.b

Changelog

Current Version SFS 23.02 February 5th 2023

Update information/instructions are included

Updates 23.02 February 5th 2023

  • [improved]: supersmall update (don’t stop on mysql error AND consider not set HTTP_USER_AGENT (Bots) to avoid error messages)

Updates V3.70 March 20th 2022

  • [improved]: code fixes allover and updated to support PHP8 (8.1.3)

Updates V3.60 June 6th 2021

  • [security update]: fix for php uploads, system could be abused when knowing ID of specific files

Updates V3.57 November 23rd 2020

  • [updated]: bitly integration to V4.0 … bitly API 3.0 support ended September 2020

Updates V3.56 August 12th 2020

  • [improved]: added some entries for dynamic and short existing URLs to robots.txt
  • [added]: possibility to get QR-Code for download urls inside admin interface
  • [updated]: all bootstrap files to latest V3.4.1
  • [updated]: solical likes to latest
  • [added]: information about expected files removal (cleaup function) to the admin files table in the backend
  • [added]: possibility to set mysql port in config – only needed when using non-default ports
  • [improved]: some useful information will be displayed into console.log for debugging issues when using the download delay

Updates V3.55.1 April 22nd 2020 a.k.a. V3.55

not really a need for an own version number for this update

  • [improved]: version number in backend comes now from database

Updates V3.55 April 17th 2020

  • [fixed]: re-declaration of SFS class occurred when trying to access non existing files
  • [fixed]: some filedrop issues solved, in particular not longer to possible to add new files to current upload session by drag and drop when adding is disabled in backend
  • [improved]: in backend the multiple file uploads section (Uploads) has been revised – “Add Files to current Session” should be possible even when multiple uploads are disabled
  • [fixed]: twitter sharing links on upload pages

    Updates V3.51 March 17th 2020

    • [fixed]: fixed some issues coming with the shorturls
      • abuse link, abuse key and abuse message
      • single upload – password protection, max age, max number of downloads
      • multi & single uploads – file descriptions
    • [added]: using shortlink in admin dashboard on last file link if shortkey is set
    • [added]: using shortlink in admin dashboard on file listings if shortkey is set
    • [improved]: added info for nginx users (still not officially supported by SFS) to setup file regarding the new shortkeys

    Updates V3.50 March 15th 2020

    • - fixed: another php fixes and modifications allover (warnings and notices from the SFS Error Logger)
    • - added: really short urls for downloads – old urls are be still accessible
    • - improved: statics in the backend are now a bit more comfortable to read and organize
    • - removed: sharing options for google+ removed, it’s not avail for public

    Updates V3.30 April 25th 2018

    • - fixed: some smaller php fixes and modifications allover (warnings and notices from the SFS Error Logger)
    • - added: showing message that javascript is required if javascript is disabled
    • - removed: Google’s URL shortener because of it’s conceivable end

    Updates V3.29 February 20th 2018

    • - fixes: some smaller php fixes and modifications allover
    • - fixed: mistakenly changed CSS class name in last version prevents from deleting error_log_entries (short snippet to fix was released some weeks ago)
    • - fixed: tables sorting issues on admin’s files tab
    • - improved: added 404 error when trying to report non existing file
    • - refined: image detection for thumbnail generation

    Updates V3.28 December 7th 2017

    • - fixed: some smaller fixes and modifications allover
    • - added: link to report error log entries

    Updates V3.27 November 23rd 2017

    • database fix: adding autoincremental value to primary key of the erro_log table

    Updates V3.26 November 20th 2017

    • adapted: only_full_group_by adaptations for mysql-servers >= 5.7
    • fixed: google shortener has switched their URLs from http to https – which has prevented from back conversion when needed (download number/age restrictions, password protection after shortening) – are considered to bitly and adfly too – if they are ever switch to https
    • changed: storing the PHP warnings/deprecated/undefined/error and info messages now to database instead of sending them through email
    • added: grouped PHP error messages now avail in admins settings tab with the ability to delete log entries
    • improved: only showing max downloads and max download age on upload page if options are set by admin
    • another smaller fixes and modifications

    Updates V3.25 November 11th 2017

    • fixed: allover fixes of some variable and key definitions which causes some troubles on some installations recently
    • checked: PHP7.x (PHP7.0.x) supported
    • added: PHP error reporter which sends notifications to admin_mail if there are some invisible errors occur which could trouble functionality
    • another smaller fixes and modifications

    Updates V3.2 November 4th 2017

    • added: confirmation modal when removing mods
    • added: confirmation modal when uninstalluing mods
    • improved: make module accessible by click through the modules table too
    • improved: added back link to modules side nav
    • modified: wider modals for individual modals for installation, uninstallation and removal instructions
    • improved: visual fix for multiple reciepients – the addresses are (more) readable now
    • modified: extended SFS-config by InstDirServer
    • layout fixes: no margin to top headlines in administration
    • fixed: added IPv6 support for the integrated download protection
    • removed: JS-less fallback for contact and abuse form
    • removed: JS-less fallback for files table in SFS administration
    • improved: some security sanctions for all JS/PHP/AJAX-functions to ensure that only operations within site are allowed
    • fixed: auto-definition of diretcories on windows servers should work correct now …
    • improved: filesize-calculator can now handle 232 or 264 B Filesizes by bypassing limited PHPs intval()

    Updates V3.1 September 13th 2017

    • fixed: added “404/File not Found” response header code for 404 pages (such as file not found)
    • added: preparation for SFS module installations – modules coming soon …

    Updates V3.0 RC 2 April 19th 2017

    • fixed: data for the uploaded files within the admin area were not displayed
    • fixed: setup.php redirection was not correctly working on root directory installations

    Updates V3.0 RC 1 April 7th 2017

    • upgrade: replaced Flash using ZeroClipboard with clipboard.js
    • upgrade: extended the admin interface, now most of the config settings can be defined in the web interface
    • modified: a bunch of changes under the hood

    Updates V2.29 Oct 27th 2016

    • upgrade: updated all themes and JS-Libraries to Bootstrap 3.3.7
    • upgrade: updated icon framework to Font Awesome 4.7.0

    Updates V2.28 Oct 15th 2016

    • small update to preserve QR-Code feature after Google has changed their Chart-API-URLs

    Updates V2.27 Dec 22nd 2016

    • improved: added some security checks for direct uploads (“hidden feature”) to prevent
      - uploads of more files than allowed
      - uploads of files with unwanted/unallowed extensions
      - uploades of oversized files

    Updates V2.26 Dec 31st 2015

    • updated: to Bootstrap 3.3.6
    • updated: to Font Awesome 4.5.0
    • fixed: added connection resource $db for mysqli_error/mysqli_errno to get detailed debugging information on SQL-errors
    • added: robots.txt to protect from unwanted indexing operations from search engines
    • improved: replacing of eventually occurring backslashes with simple slashes in pathgenerations on windows servers (in some rare cases)
    • improved: hiding already considered mysql connection troubles during setup routine
    • improved: direct downloads of admin’s won’t be counted anymore (download and traffic counter)
    • added: possibility to only allow uploads for logged SFS administrator

    Updates V2.25 April 20th 2015

    • updated: jquery file upload plugin (JS) to 9.9.3
    • updated: to Bootstrap 3.3.4
    • added; responsive behaviour for admin files table
    • improvement: “rebuilt” auto-re-calculation of upload size limit (based on php’s post_max_size and upload_max_filesize)
    • fixed: admin statspage » considering time changes (summer/standard time switch) (step 2, winter»summer)
    • smaller fixes
    • smaller improvements: extended mail header information and added possibility to use additional_parameters (http://php.net/manual/de/function.mail.php)

    Updates V2.24 February 6th 2015

    • updated: updated deprecated usage of php-mysql to php-mysqli
      make sure to update all your mysql-regarding modifications to mysqli or update other just differences by hand or go on with SFS 2.23.01
    • fixed: another Android-Blackberry-IOS fixes again (i.e. Download counter)
    • some corrections: bgcolor in admin’s filestable, Bootswatch’ Yeti & Readable adaptions
    • added: google ShortUrl Support (as site owner you can choose between adfly, google and bitly, or disable shortener)
    • update: updated to Font Awesome 4.3.0
    • update: updated to Bootstrap 3.3.2

    Updates V2.23 January 21st 2015

    • fixed: multiple mailto email addresses weren’t removed after successfully sent multiple file upload imformation
    • fixed: Android-Download-Troubles with XSendFile
    • fixed: some Android Device-Browser-Combos were not identified as Android devices, considered them now
    • correction: displayed useless “max_file_uploads” instead of essential “upload_max_filesize” on justUpload.php
    • added: adfly Support (as site owner you can choose between adfly and bitly, or disable shortener)
    • update: updated to Font Awesome 4.2.0
    • update: updated to Bootstrap 3.3.1

    Updates V2.22 November 17th 2014

    • fixed: admin statspage -> considering time changes (summer/standard time switch) (step 1, summer->winter)
    • changed: dynamic javascript variables only accessible through POST method
    • fixed: admin filestable -> removed line with wrong linked css file

    Updates V2.21 November 5th 2014

    • fixed (minor): added missing dev file ZeroClipboard.min.map (no impact on functionality)
    • changed: removed html-conversion on faqs.php – now you’re able to use HTML-Tags in faqs.lang.php
    • fixed (minor): admin filestable -> displaying correct title when hovering delete button
    • fixed (minor): admin filestable display troubles on IE 8
    • fixed: admin filestable -> sorting/searching by/for filenames was refering to the crypted filenames (SFS 2.15) – fixed now
    • fixed (optical): admin filestable -> wrap superlong filenames (CSS ellipses)
    • fixed: when removing description of single uploaded items success message was be shown 3 times (whyever ) – fixed now
    • added: possibility to send upload information to multiple recipients at once
    • improved/added: eleborated hidden SFS feature when dragging files to upload success/result pages
    • improved: considered some MSIE in-compatibilities
    • changes: showing Upload API errors now, if they’re happen, but bypassed its main internal validation
    • fixed: considering hours in upload estimations
    • improved: removing orphan database entries of non existing files automatically when running cleanUp (shouldn’t happen, but just in case …)
    • added: admin filestable -> added information about max downloads and deletion date on hovering filename

    Updates V2.20 October 10th 2014

    this will be most likely the last version with detailed update instructions from 1.x to 2.x

    • fixed: replaced crypted with real filenames on filesgroup page
    • added: possibility to add files to current upload session
    • improved: some status messages can be translated with the language files now
    • added: possibility to add short description to each uploaded file
    • added: possibility to show sent message on download pages too
    • added: file name on download pages now part of the HTML-Title
    • added: possibility to protect files from beeing autodeleted inside the administration
    • improved: detailed and tailored nginx informations to setup routines – nginx is not officially supported
    • some smaller fixes and corrections

    Updates V2.17 September 26th 2014

    • fixed (again): new issue occured with Android’s doublecall of download links ( more on http://code.google.com/p/android/issues/detail?id=1978 )
    • added: mysql timezone helper, to correct time differences between Webserver and Database-Server
    • added: showing message when finishing upload (especially for bigger files on slower servers – when moving uploaded file into target directory)
    • improved: language switcher is dynamic now
    • changed: using “readfile” instead of “fpassthru” for image previews now
    • fixed: removed HTML Warnings on HTML CODE

    Updates V2.16 September 23rd 2014

    • fixed: crypted filenames instead of the origin ones were shown in the emails
    • fixed: removed dashed lines from multiple upload mails when sending no message
    • improved: disabling send-button and showing animated icon when sending download information

    Updates V2.15 September 16th 2014

    • additional optical fix: super long image names fix on download and deletion pages for NON-Image-downloads too
    • fixed: removed mistakenly used PHP “short open tags” (admin/files)
    • added: displaying upload speed
    • added: displaying estimated time and elapsed time during upload
    • optical fix: truncating superlong file names on dashboards “The Last File”-section
    • added: uploaded files will be named on server with a crypted name
    • optimized: using origin filename to display on dashboards “The Last File”-section instead of used name on server
    • optimized: using origin filename to display on admin’s files table instead of used name on server

    Updates V2.1 August 23rd 2014

    • optical fix: super long image names fix on download and deletion pages
    • added: copy to clipboard function for flash enabled devices
    • added: social shares on download pages
    • added: social shares after uploads (multiple and single uploads)
    • optical fix: optical corrections for the datatables inside the administration
    • improvement: jquery uploader using RENAME for moving instead of COPY to move file into it’s target directory (faster and spacesaving)
    • fixed: datatables fix for staying on same page when deleting items

    Updates V2.01 August 19th 2014

    • fixed: fixed footer width on smaller devices (responsive issue)
    • fixed: button (follow link) functionality was not given on filesgroup page

    Updates V2.0 August 16th 2014

    • Initial release based on SFS 1.63*
    • improved: updated the whole project to Bootstrap 3.2.0 with 17 themes
    • improved: nicier layout (as I think )
    • added: possibility to generate Bitly short URLS
    • added: possibility to generate scanable QR-Codes
    • added: CAPTCHA protection for contact and abuse form
    • added: HTML Emails instead of plain text ones
    • improved: updated various javascript plugins
    • refinement: allover

    Updates V1.63 February 22nd 2014

    • fixed: MSIE download click button doesn’t work on some versions of MSIE
    • improved: disconnect when trying to reconnect to lost mysql connections

    Updates V1.62 January 12th 2014

    • fixed: an old version of the setup routine was used (1.55) with SFS 1.61

    Updates V1.61 January 6th 2014

    • fixed: combination of disabled autodeletion (delDays set to -1) and enabled user defined deletion caused deletion of all files
    • added: information about maximum downloads on download page if set by uploader

    Updates V1.6 December 27th 2013

    • refinement: layout modifications for Smartphones
    • fixed: androids double calls URLs http://code.google.com/p/android/issues/detail?id=1978
      Session or password protected downloads were not possible
    • fixed: download has started information after clicking donload button
    • refinement: maximum filesize (database field) was 2GB, now maximum filesizes up to 8 Exabytes are possible
    • added: uploaders can now define the maximum age of uploaded files
    • added: uploaders can now define the maximum number of downloads for uploaded files
    • refinement: automatically database reconnection if needed (mysql server has gone …)

    Updates V1.55 October 22nd 2013

    • fixed: combination of download timer and password protection stopped working with SFS 1.53

    Updates V1.54 October 17th 2013

    • fixed: overall stats stops at 2GB totals, now values up to 8 Exabytes are possible
      update calculates approximate values for the previous up- and downloads

    Updates V1.53 October 5th 2013

    • fixed: download troubles on Microsoft Internet Explorer when using the download timer

    update information included

    Updates V1.52 October 4th 2013

    • fixed: upload button was not clickable everywhere on safari browsers
    • fixed: safari on Windows platforms is not able to handle multiple file uploads
      so the multi upload will be disabled autmomatically for Safari Browsers on Windows platforms
    • fixed: drag and drop for Safari Browsers on Windows platforms
    • fixed: added missing language keys to german language files
    • refinement: moved all multi-upload resets to config.php
    • refinement: disabled drag and drop functionality for Microsoft Internet Explorer lower 10.0

    update information included

    Updates V1.51 September 19th 2013

    • fixed: re-upload after cancel with cancel button was only possible on multiple uploads
    • fixed: JS debug message
    • added filesize progress in bytes during upload ( Size uploaded / Size to upload)

    update information included

    Updates V1.5 September 11th 2013

    • added cancel button to break current upload process
    • added: stats data for deleted files are avail after deletion furthermore (admin dashboard)
    • added TB and PB for file size calculations
    • added support for utf encoded mail subjects
    • refinement: origin filenaming for downloads through XSendFile
    • refinement: additional file existing check

    update information included

    Updates V1.42 August 21st 2013

    • fixed: on multiple uploads the displaying of the downloadlinks was shown too early (after the first upload), this effect was visualy when uploading multiple greater files

    update information included

    Updates V1.41 August 10th 2013

    • fixed: removed XSendFile Debug Message from download handler
    • refinement: displaying date without time for deletion point of time

    update information included

    Updates V1.4 July 29th 2013

    • added .htaccess directory browsing protection for not secured installations
    • added possibility to use [delDays] in the mails for the users
    • added possibility to upload multiple files
      – can be turned on/off in the config
      – number of max files can be defined in config
      – link to group of files will be generated
    • added to administration: external source for the files datatables
    • added to the administration: possibility to bypass confirm dialog on file deletion
    • added protection of mistaken leaving the “Upload succeeded” site without saving or sending download links
    • added possibility to disable autodeleter
    • added responsive behaviour by default with fix for the max-width effect
    • fixed generating preview image for PNG files
    • added enhanced direct download protection, should now work for higher usage too
    • added naming download files with the original one during the download process
    • added transforming of download button after download has started (preventing of double call the download page by clicking the download button twice)
    • fixed inside the administration: chart generation w/o enough data for calculations (i.e. just one file type, just one day) – next fix

    update information included

    Updates V1.3 June 21st 2013

    • fixed cleanUp function, it was deleting from database just regarding time of upload
    • max upload size in byte now multiplicated with 1024 * 1024 instead of 1000 * 1000
    • cutting (ellipsis) supperlong file names on
      – download page (headline)
      – delete page (headline)
      – name of last file table on admin’s dashboard#
    • G (Gigabyte) values of post_max_size and upload_max_filesize are possible now too, no need to convert to Megabyte any longer
    • supporting mod_xsendfile for Apache2/Apache2.2 – built to handle download of bigger files w/o running into performance troubles (https://tn123.org/mod_xsendfile/ )
    • bandwidth throtteling(define the kbps in the config)
    • no memory usage any longer on dowloads, so memory_limit doesn’t have to be increased
    • sorting by upload time desc in admin’s file table by default
    • updated to Bootstrap v2.3.2 (shift and middle click corrections for Firefox)

    update information included

    Updates V1.11 Apr 23rd 2013

    • added number of days remaing until deletion to delete and download page
    • added drop down menue with language switcher
    • fixed bug on displaying expiration date

    update information included

    Updates V1.1 Apr 21st 2013

    • added missing possibility to logout from admin interface
    • admin area: new strategy to display filetypes in the pie chart
    • fix for too long filenames (extensions were cutted)
    • added possibility to disable direct downloads via IP or SESSION, can be disabled too
    • list of filextensions can be denied
    • list of filextensions can be allowed
    • percentage values are displayed inside the progressbar too
    • added age information to download and deletion page

    update information included

    1st Release V1.0 Apr 19th 2013

Credits and used plugins

by
by
by
by
by
by

Tell us what you think!

We'd like to ask you a few questions to help improve CodeCanyon.

Sure, take me to the survey