По уровню вопроса конечно понятно что гениальности от кода ждать не стоит, но все же...
Для начала пару занудных замечаний:
1)
if($query = $db->query("SELECT `login`, `password` FROM `admin`")){
Не стоит выбирать
все записи из таблицы, если вам нужна одна, та где логины совпадают. Это в целом плохая практика, но еще хуже когда такой подход будет применен к большой таблице. SQL для этого и придуман чтобы так не делать. Так же, если у вас есть таблица пользователи, не нужно дублировать функционал, перенесите админов туда же, указав им уровень доступа или роль.
2) пароли в бд должны быть соответствующе зашифрованы, используйте соответствующие функции password_hash() и password_verify() при создании и проверке пароля.
3) Больше совет, чем инструкция: испльзуйте один стиль обрамления кодовых блоков везде, либо текстовые конструкции типа if - endif, либо везде фигурные скобки. Второе предпочтительнее.
Что касается собственно вопроса, есть несколько вариантов, самый кривой из которых уже написал сеньор
Sergei Parfenov. При неверном логине код просто продолжается формой и вы имеете все данные о проверке, включая правильность/неправильность пароля. Стоит отметить что в данном случае блок проверки логина нужно обрамить проверкой метода запроса и вызывать ее только в случае если метод запроса POST (как это сделать - задание на дом).
Второй вариант более адекватный, так как первый имеет ряд недостатков.
1) В начале формы создаем переменные в сессии: $_session['message'] и $_session['old'] с пустыми значениями
2) В блоке проверки логина $_session['old'] присваиваем значения пришедшие из формы $_POST.
3) Если в ходе проверки у нас возникли ошибки, пишем сообщение об ошибке в $_session['message'].
4) Выполняем переадресацию. В форме сначала переносим в переменную
$message = $_session['message']??'';
; и $_session['message'] очищаем. Тоже самое делаем с $old, не забывая что там обычно массив;
5) Переносим в поля формы старые значения там где это нужно из $old;
6) Проверяем что лежит в $message, если там что-то есть - выводим сообщение об ошибке.
Профит.