Действительно. Проблема была не в авторизации,
Если пользователь ранее входил в аккаунт. и выполнил sql injection то его пропустит, что тоже странно, так как сессия удаляется после выхода с аккаунта:
session_start();
unset($_SESSION['username']);
session_destroy();
header('Location: index.php');
?>