theres really not much you cant do with php/mysql, i guess your descision really should come down to what your comfortable with.
php/mysql would satisfy your requirements easily, but so would just about any of the other server-side techs out there. do you know php? do you know any other server-side language?
your best bet is to go with what you know. if you dont know any, then php is as good a starting point as any other.