1) should be handled fine by any database. It's why you use a database, in fact. Flat files could have a problem of one record overwriting the other here while a database won't let that happen.
2) This can be a pickle. A. opens page, B. opens same page, A. commits change, B. commits change, B.'s record overwrites A.'s
You can either lock the row of the record, in a database with row level locking, or write your own code to do the equivalent as Vincent suggested.
3) No Commit and Rollback are transactional commands that mySQL doesn't (yet) support. Postgresql does support that and much more.
If you want or need transactions, triggers, stored procedures, row level locking, autolocking, and a couple of other cool features for transactional stuff, postgresql is much better than mysql. But it is not super fast like mysql is. Conversely, it scales to literally thousands of simo connects with a large percent (10%+) beind writes.