Basically, the server needs to host a database. Users can add a new posting via the phone app, which contains two text fields, email, a numeric identifier, and a picture. The postings are then sync’d back to the listing page of the phone app.
I was going to go with a private virtual server with MySql, but I don’t know where to start with the design of this. Do I use Python or PHP? Do I use SOAP? What would you use to build this out?
Unless you really want to manage your own database and server-side code, you may be better off using a service like Parse that runs the database for you and lets you store objects via simple API calls from your Android code. I have not used Parse in particular so you may want to get other opinions about them.
If you are intent on rolling your own server, a VPS is a reasonable way to do it. There is no “best” language to use here, so if you have no experience with any, I would choose whatever language you want to learn. There is no better way to learn a language than through necessity.