Во-первых чекать пустые ли логин и пароль фунциями isset/empty.
Во вторых - вы инициализируете сессию в страницах ЛК? Если нет - это нужно делать так же как и раньше -
session_start();
В третьих - Экранирование строк.
Поможет оно тут или нет - сказать сложно, но в любом случае - его добавлять нужно даже если не хочется. Если нужно не стимулятор, то базе данных может придти конец. Подробнее можно почитать загуглив что такое SQL-Инъекция.
$login=$connection->escape_string($login);
$password=$connection->escape_string($password);
Все пункты выше так или иначе обезопасят сайт или приложение, но причина в пункте 1.
Мы перезаписываем логин и пароль на пустые, пока в лог ошибок пишется что-то типа "переменная $_POST['login'] НЕ СУЩЕСТВУЕТ!", т.к она не существует при переходе, опять-же назад.
Надеюсь, что мой ответ пригодится хоть кому-то, кто работает с PHP.