Для правильного вопроса надо знать половину ответа
1. Получить список файлов из папки.
2. Получить список файлов из базы.
3. Отсортировать оба списка по алфавиту (можно прямо на шагах 1 и 2, но надо чтобы порядок сортировки был одинаковым).
4. Построчно сравнивать списки, отмечая те строки, которые есть только в одном списке.
Для правильного вопроса надо знать половину ответа
Нормальных вариантов не так много - админка на https для сайта на http, site/admin,admin.site/, кнопка или ссылка на странице.
А извращаться можно по разному, например ввод какого-нибудь кода в поле одной из форм на сайте, привязка к ip администраторов, ручное задание кукиса, несколько невидимых областей на странице по которым нужно кликнуть в определённом порядке...
Для правильного вопроса надо знать половину ответа
Чтбы понять, что там, всё равно придётся сначала скачать файл. А дальше можно его как угодно анализировать, например через finfo в php. Можно сначала получить заголовок через запрос HEAD, убедиться, что файл существует и определить его объём.
И уж конечно никакие полученные от клиента данные не должны писаться в базу без контроля. Как минимум mysqli::bind.