Di tanta pazienza.

A parte gli scherzi.
Progetta (su carta va benissimo) di quante sezioni deve essere il tuo sito.
Per ognuna delle sezioni dinamiche, cerca di capire quali possano essere modificate dai singoli utenti.
Cerca di prevedere le azioni che ogni singolo utente può fare o meno per interagire con il database.
Questo ti aiuterà anche alla strutturazione del database.

Un mio consiglio personale.
Cerca di sviluppare una sezione per volta.
Per capirci: se prevedi che gli utenti possano gestire la pubblicazioni di news, di novità e una galleria di immagini, cerca di iniziare con una sezione e di portarla a termine prima di passare all'altra.
Fai molti test, cerca di hackare i tuoi stessi script e vedi se reggono.
Cerca di inserire nel DB caratteri che ti possono creare problemi di visualizzazione e vedi come reagisce.

... E questo è solo per iniziare!
Buon lavoro.