We’re building a CMS at work and one of the requirements is a half decent file manager. Having seen how easy the wordpress upload tool is, we wanted to replicate it. Clients don’t want to sit there having to individually select and upload 50 files from a folder!
There are a number of options available to do this:
- Using a flash (swf) file to perform the upload
- Using a java applet to perform the upload
- Using an HTML file input box to create a hidden array of file input boxes
My issue with #3 is that you still have to individually select all the files in a folder before clicking upload. If you want to upload 50 files, thats 100 clicks and a case of RSI. So, I ignored #3 entirely.
Ideally, I wanted solution #1, but I found a lot of answers to solution #3, followed by #2. In the end I tried out four different solutions, all open source.
SWFUpload
By far my favourite, and the one we ended up using, this is the same tool wordpress use for their image upload plug
in. It is the most difficult to configure, but its got the most flexibility. SWFUpload uses a .swf file for the actual file uploads, which get posted to a script you specify in the setup. There are then a load of javascript callbacks that allow you to track the progress of files and update your page with the results. All in all, very impressed.
Check it out and download it here: http://www.swfupload.org
There are also demos at: http://demo.swfupload.org
UPDATE: I stumbled across a blog post with a tutorial for creating your own flash file, incase you don’t
want to use SWFUpload. It looks pretty simple, so check it out: Multiple File Upload Using Flash
Continue reading “Selecting and uploading multiple files with one form element, wordpress style”