Joomla! is a Content Management System. You should definitely read that full Wikipedia article, but here's an excerpt:
The basic idea is that it is a web application that facilitates the creation of website content through the collaboration of a team of individuals, each responsible for a particular facet of publishing the site.
Your needs seem to be much simpler, but I suggested Joomla! because it seems to me that your requirements are a subset of what Joomla! does and if you can just use the subset of Joomla! that you need, it make be less work than building a bunch of functionality from scratch. It's the same kind of thinking that leads people to use WordPress for publishing a static website.
Free unique IP and $67 off with promo code [color=#CC0000]FLENSFREEIP67[/color] or use [color=#CC0000]FLENS97[/color] for $97 off. Click here for more options