Делаешь страницу регистрации, когда все заполнено правильно, то запускаем сессию и в зависимости от регистр глобал определенным образом регистрируем переменную в сессии с именем пользователя. Потом на каждой странице запускаем сессию. Если нужно запретить часть сайта, то проверяем существование переменой имени пользователя в сессии. Чтобы сделать кнопку выход, нужно сначала уничтожить переменную, в зависимости от способа ее создания и закрыть сессию. Страница авторизации делается аналогично регистрации. Данные пользователя загружаются по по имени из файла или базы данных.
Это алгоритм простых сессий.
Есть ещё куки, но мне пока не было нужды с ними работать. На сколько знаю, из них могут быть дыры xxs. Если ты браузер закроешь, и зайдешь опять, то сессии уже не будет, нужна опять авторизация, а с куками нет.
Если кто напишет про куки, с удовольствием почитаю.