<?php echo $error;?>
переменная $error не была определена, поэтому нотис.<?php echo $_POST['login'];?>
который тоже не определен.header("Location: /im");
Undefined index: login in /var/www/html/index.php on line 194
PHP Notice: Undefined variable: error in /var/www/html/index.php on line 192
Response header name 'Location ' contains invalid characters, aborting request
header("Location : /im");
думаем что же в ней не так Задание не для Junior, в описании сказано, что нельзя использовать готовые фреймворки, но не сказано, что нельзя использовать отдельные пакеты.Значит этот вопрос стоило задать тому кто давал задание. В моем понимании запрет на фреймворки без запрета на пакеты - бесмысленный.
Способность быстро решить задачу с учетом всех требований
вы считаете, что в 2020 году изобретать велосипеды и писать приложение на PHP не используя composer и готовые библиотеки - это нормально?
Мне кажется одно другому не мешает. Или качественно собрать собственный микрофреймворк может каждый?Как вы сами написали - это тестовое задание, а не реальный проект.
Это как раз несложно. Добавляете в ваш ключ какой-то разделитель, после него добавляете случайное значение длиной которую вы считаете достаточной для защиты от подбора.
Тут есть противоречие с исходной задачей.
Если это сервис КОРОТКИХ ссылок - вам должно быть пофиг на перебор.
Если это какой-то прокси - забейте на все эти конвертации и делайте
md5($url . соль)