Originally Posted by SirDice
You basically have 2 options as far as hosting is concerned.. One is dedicated hosting, here you'll rent a full server and you get full access to the machine to do whatever you want. The other is called shared hosting, with this you just get a bit of space on a server. This server is shared with others like you. Shared is cheaper but is usually a bit more limited as to what can be run on it. Looking at what you want to do I think shared hosting will do for now.
Things to look for are email (you'll probably want to send/receive email on your domain name), database (sometimes you have to pay extra for this)..
And about the content.. You need to create it.. Or hire someone that can do it for you. Hosting providers only give you a place and the infrastructure to run your site.