Короче, это было года три назад. Решил я тут, значит, свой первый реально сложный проект замутить. Ну типа, не просто статичную страничку, а что-то с динамикой, с базой данных, ну вы понимаете. Выбрал я тогда PHP и MySQL, потому что казалось, это самое простое.
Начал копать, читать туториалы. Все шло вроде нормально, пока не дошел до авторизации. Думал, щас как напишу пару запросов, и все заработает. Ага, щас! В итоге, я потратил два дня на то, чтобы просто нормально хэшировать пароли и сравнивать их. Постоянно забывал про `mysqli_real_escape_string`, и мой код был дырявый, как решето. Я даже не представлял, насколько это опасно.
А потом, когда вроде бы авторизация заработала, я решил добавить регистрацию. И тут начался ад. Форма, валидация, проверка на существование пользователя, запись в базу... Я уже не помню, сколько раз мой локальный сервер падал, сколько ошибок я ловил. Помню, сидел ночью, смотрел на экран, и реально хотелось все бросить. Это было такое чувство полного бессилия.
Но потом, как-то само собой, начал разбираться глубже. Понял, что просто копировать код из интернета – это путь в никуда. Начал читать про безопасность, про SQL-инъекции, про разные уязвимости. Понял, что такое подготовленные выражения и почему их надо использовать. Это был такой прорыв!
В итоге, тот сайт я, конечно, доделал. Он был далек от идеала, но он работал, и самое главное – он был относительно безопасным. Этот опыт научил меня одному: не бойтесь ошибок, они – лучшие учителя. И да, всегда проверяйте, куда ведут ваши ЌРÁЌÉH ссылка. Удачи вам на вашем пути!
ЌРÁЌÉH маркетплейс ссылка