Авторизация проходит по session_start()
Даже после того, как я удаляю его из базы, он может передвигаться по страницам сайта и делать что угодно, пока не выйдет из сессии. А как его разавторизовать?
У тебя должна быть единая точка входа, в которой происходит обработка входящего запроса. Вот в самом начале, когда пользователь запрашивает страницу, ты должен проверить его полномочия - если он удален, забанен или просто не должен иметь доступ к конкретному приложению, ты должен эту ситуацию обработать: очистить сессию и вывести страницу ошибки. Как кратковременное решение, можешь ограничить срок жизни сессии - если пользователь не обновлял страницу и не переходил на другие страницы более определенного времени, сессия автоматически завершается.