bè può essere in php come in altri linguaggi...
prima cosa e saper php.
Poi bisogna avere un idea su come gestire gli utenti, cioè vuoi salvarli su database oppure no (la prima senza dubbio la migliore, quindi bisogna avere a conoscenza anche come interfacciare php con il database)

-creare un form di login, solitamente user e password

-il form indirizza ad una pagina di controllo, che appunto controlla se i dati immessi nel form corrispondano ad un utente registrato nel database.

-se i dati risultano uguali, si creano la sessione dell'utente (e qui si deve decidere se salvare le sessioni su database o no)

-create le sessioni l'utente avrà accesso a determinate pagine che il programmatore ha deciso di rendere accessibili a solo chi ha effettuato il login (e poi bisogna studiare anche il fatto che se si vuole dare diversi tipi di autorizzazione, bisogna gestire dei livelli per gli utenti)

e questo è proprio il succo del discorso. poi bisogna stare attenti alla sicurezza quindi le password devono essere per lo meno criptate per esempio con MD5 ma ci sono altri metodi... le sessioni... e vabbè poi bisogna stare attenti alle query di controllo sopratutto..


articoli utili:
Sicurezza
http://php.html.it/guide/leggi/121/g...urezza-di-php/
http://php.html.it/articoli/lista/39/sicurezza-di-php/