Ti rispondo per esperienza diretta. Sto lavorando su un progetto grosso vagamente simile a quello che dici.
Lascia perdere, mi sto pentendo amaramente sia di avere scelto MySQL sia di avere scelto il PHP.
Il PHP e' inadatto a progetti di grosse dimensioni secondo me. E' possibile farlo funzionare senza problemi curando maniacalmente il codice ma rimane comunque un lavoro estenuante. Inoltre, il fatto che sia interpretato e non compilato rende il betatesting un disastro. Ti dimentichi un ; in una riga su un software di 5000 righe e finche' non va in esecuzione non te ne rendi conto. In pratica, dovresti testare da capo ogni funzionalita' ogni volta: e' una assurdita'.
Quanto a MySQL, piu' lo uso piu' lo disprezzo. Ha delle limitazioni che non stanno ne' in cielo ne' in terra (in particolare integrita' referenziale e stored procedures) per applicativi di dimensioni anche solo medie.
Io sto cercando di migrare verso Java dopo una dura scuola su PHP, che trovo comodissimo e velocissimo per fare piccole cose, ma che per il resto, piu' passa il tempo piu' mi convinco che sia una ciofeca.