I'm not sure how quickly you want everything to work, but what you are attempting is a pretty complex process. If you have the time and grumption then you could custom build your website. An alternative would be to use a Content Management System platform and build around that. There are a number of options for CMS's, but essentially they all contain the engine for building a site like you are talking about. The php and sql relationships are predefined and they allow you to concentrate on the content. Some of the more popular CMS's also allow for pretty quick customisation.
If you want to invest some time and get good results I would personally install WordPress and opt for a theme like this one. It has a huge amount of sales and really what you get is someone elses experience trouble-shooting all the nooks and crannies of running a site like this you probably haven't thought of.
There would be a learning curve, but in my experience Wordpress is pretty user friendly and a theme like this one would have a lot of support questions already answered. It would be unlikely that you would come across a situation that hadn't already been experienced and solved. Wordpress is free although you do need a web host that always for a SQL database (very common) and you sound like you are already familiar with this requirement anyway.