se la struttura è molto grande usa un framework possibilmente un buon framework. Bene o male ogni framework fornisce un buon sistema per la gestione della login (integrando anche l'uso del db per la gestione della session) e, nei framework maturi, i sistemi sono testati da migliaia di utenti e quindi abbastanza debuggati