views:

21

answers:

2

First note, im not asking for code, more insight on the process flow.

i have a client who is a photographer. he takes pictures of his clients.

he wants to be able to upload them to his site, via web interface.

he also wants a directory for each client.

i.e. www.photographer.com/clientname

pictures will be retouched and resized jpgs.

what is the best method for storing those images .. mysql?

what method should i use to have my client be able to create new directories on the web server?

from there i would essentally list the jpgs out by file name, and hyperlink them to the acutal image that the client would click on.

thoughts and ideas are appreciated.

+1  A: 

Does your client want actual directories on the server? Or does he simply want a directory-like URL? If it's the latter, I would use a CMS or mod_rewrite to abstract those URLs. You can have your own system of directories for image storage, and store only their filenames/paths in the database.

A CMS would also make your life and his life a lot easier. I know the more popular ones (drupal, joomla, wordpress) have various image galleries/storage systems you can add in, some allowing multiple simultaneous file uploads, which is not the easiest thing to implement from scratch.

Unless your client wants to upload everything via FTP, it's probably best not to ask his opinion about the directories, because he probably won't know the difference. I think your best bet is to implement the URL system he wants, along with an easy system for him to add/remove images. A well-implemented CMS would make it even easier and offer far more features than FTP, because that's what they were designed for. It would also be less error-prone, because it will have safeguards against deleting directories, etc.

...Or if you want to reinvent the wheel, you could write your own CMS. Either way, it's best to abstract the storage process and let the client access the site through the controls you set up, which will also let him attach more meaning and functionality to the information he's storing.

willell
+1  A: 

here are some recommendations: - store the image files on disk. have a unique id assigned to the image files. these unique id(s) can be mapped to each client in a database. - to create new directories you can either create them manually or have someone with admin access create them. having an admin access to the site makes it more secure. the admin can create a new director for the client and thereby enable settings for them to access them. - having a user-based access would enable a client to view only those files that are specific to him/her

deepsat