Storing images using a database record that holds a path to the actual image file allows you to do much more, such as store an alt text column, or any other useful information in the database as well. You will of course need to create a good content management system around that idea in order to be able to make fast and easy changes to already uploaded images.
I usually keep one table for all of my images that has the id, filename, alt_text, width, and height, then reference that table in all of my other tables that might need images attached. I also store extra stuff like resize method information, so that the next time they upload an image for that same field, you can grab and set the default values automatically for any resizing information they need to enter.
You may also want to store the image's alignment, although I usually put this in to the table that links to the image table. This allows for you to set it up so that users may easily re-use already uploaded images in other areas of the website without uploading a second copy of that image.