Quando un utente si registra devi generare un codice univoco e salvarlo nel db associandolo all'utente appena registrato, oltre a questo, nella tabella degli utenti metti un campo da chiamare ad esempio "attivato" in cui di default ci metti 0 che vuol dire no, quando l'utente avrà confermato la registrazione lo cambierai in 1 che vuol dire si.

Alla fine della registrazione mandi all'utente un'email con un link che punta allo script di conferma, al link appendi come parametro il codice, sarà una cosa così
http://www.sito.it/conferma.php?cod=jhfjkdshf89s6fds90

Lo script non farà altro che prendere tale codice, verificare se c'è nella tabella degli utenti e in corrispondenza dell'utente associato modifichi il campo "attivato".

Quando un utente prova a fare il login dovrai verificare, oltre a username e password, che tale utente abbia il campo "attivato" pari a 1.