One of the key upgrades to the PhotoGallery System is improving the way photos can be added. At the moment, the system is pretty basic and simply uploads the files individually using <input type="file"> input boxes.
There are various systems out there on commercial sites. Some of these include complex plug-ins that allow drag-and-drop, FTP utilities, and applets. These are all somewhat of a nuisance and require the user to download various bits and pieces to get them working. For a solution, I wanted something that would allow for multiple file uploads, be easy to use, and take a minimum amount of time to develop.
The quick and easy solution that I’m strongly leaning toward is actually incredibly simple. PHP has an excellent set of ZIP File functions. I quickly tested them last weekend and it’s as simple as compiling PHP with zip support, and using the little snippet of demo code on the PHP site. All the user will have to do is take all of the photos they want to upload, place them in a zip file, and upload the zip file to the website. Server-side, the photos are extracted from the zip file, processed, and a wizard allows the user to enter photo information. While not every end user knows how to zip a file, most do, and it’s relatively easy to learn. The only other concern is for Apple or Unix users, though there are functions out there for .sit and .tar files that I could incorporate later.
Has anyone else come up with a bulk-file uploading system, or have alternative ideas or suggestions?