Script for Crowdsourcing DB data entry and photo uploads

Sorry about the cryptic subject line, but it’s difficult to be concise.
I’m looking to populate a DB with geographic locations, and then have the public upload photos of that location.
Might possibly also allow the public add new locations, but I’m reluctant to do that.

Does anyone know of any product out there (open source ideally, free (as in beer) or cheap ideally as well) which essentially would be a public DB lookup form, but with the ability to upload a photo and have it associated with that record? The DB could quite possibly have 50-100 thousand locations.

Thanks everyone.