Форма авторизации на php

Хранение паролей

По вышеописанной схеме можно создать пароли для нескольких сервисов. Но риск забыть один из них повышается, особенно, если каким-то сервисом вы начнете пользоваться реже. Поэтому мы рекомендуем использовать специальные программы для их хранения: менеджеры паролей.

Менеджер паролей — это специальная программа, которая шифрует ваши электронные ключи в специальном файле-хранилище. Пользуясь такой программой, вам необходимо будет помнить лишь один главный мастер-пароль от хранилища. И, конечно, бережно хранить этот файл, скопировав на разные устройства на случай поломки или потери одного из них. Отныне это будет самым важным для вас файлом.

В качестве примера программы для хранения паролей используем KeePassX.

Скачать эту программу можно на официальном сайте. Аналоги для мобильных устройств можно найти в соответствующих магазинах приложений (Google Play или App Store) при поиске по запросу «KeePass».

Открыв программу, создаете новое хранилище через меню.

Далее программа попросит ввести придуманный вами мастер-пароль, которым вы и будете открывать хранилище.

Нажав в верхнем меню на иконку ключа с зеленой стрелкой, вы можете добавить или создать новый пароль для какого-либо вашего сервиса. Программа имеет встроенный генератор паролей: для его использования нажмите на кнопку «Генеральный».

Создав надежный ключ, вам не надо его запоминать. Для входа в нужный вам сервис его нужно будет копировать из этого хранилища.

Время хранения пароля в буфере обмена ограничено 10 секундами. В настройках этот параметр можно изменить.

Что удобно, программа позволяет хранить не только пароли, а вообще любые ценные и тяжело запоминающиеся текстовые данные. После того, как все изменения внесены, не забудьте сохранить файл хранилища и скопировать его новую версию на основные устройства.

В следующей инструкции мы расскажем о воровстве паролей — фишинге — и о том, как от него защититься.

TeamViewer и другие программы для удалённого доступа

Простой способ организовать удалённый доступ — настроить подключение через такие программы, как TeamViewer. Но производительность таких решений невысокая. А самое главное — это небезопасно:

  • Для каждого сотрудника используется отдельная точка входа: невозможно разобраться в подключении и гарантировать его качество;
  • В стороннем софте могут содержаться уязвимости;
  • Низкие парольные политики. Злоумышленник может просканировать пул доступных адресов TeamVeawer и подобрать пароль.

TeamViewer часто взламывают. Был случай, когда cкомпроментировали его пула адресов: у пользователей заблокировали компьютеры и украли информацию. Однажды мы даже встречались с ситуацией, когда к TeamViewer кто-то подключился и начал отправлять платежи в системе «Банк клиент». Злоумышленник дождался удобного случая и в момент отправки платежа заменил его реквизиты. К счастью, банк заблокировал платеж, и компания не пострадала.

Производители ПО для удаленного доступа не идут на контакт, когда у пользователей возникают проблемы с безопасностью. Людей, которые подключаются к рабочему столу через подобные системы, невозможно вычислить.

TeamViewer и другие программы для удаленного доступа можно использовать только для компьютерной помощи и под контролем. Включайте их на время работ, выключайте сразу после окончания и не оставляйте работающими в остальное время.

REST

Чтобы обеспечить управление ресурсами в вашем приложении (такими, как книги или аккаунты), нужно реализовать программный слой, принимающий запросы и формирующий ответы. Здесь вам доведется поработать с маршрутами (routes) и контроллерами (controllers). Они обеспечивают соблюдение ограничений, накладываемых REST — стилем архитектуры программного обеспечения для распределенных систем.

В типичном приложении на Ruby маршрут выглядит так:

Что в это время происходит в системе:

  1. Приходит запрос на фото с этим маршрутом и передается контроллеру с помощью метода .
  2. Этот метод, обращаясь к ресурсу из базы данных или к другому API, формирует и передает ответ в формате HTML или JSON.
  3. Клиент (в данном случае браузер компьютера) получает ответ и выводит фото на экран.

Запросы могут приходить из многих источников (их называют клиентами). Чаще всего запросы для веб-приложения формируются в форме ввода браузера. Но, если вы пишете бэкенд для мобильного приложения, то клиент — это API приложения, и он посылает запросы GET, POST, PUT, DELETE из приложения.

Вы можете разработать отвечающую на запросы систему, создав API с учетом REST. Такой API называется RESTful, читайте подробнее о нем в подробной статье.

Прим. перев. Также предлагаем ознакомиться с нашим материалом по этой теме.

Сообщение системы комментирования :

01.09.2021

Форма пока доступна только админу… скоро все заработает…надеюсь…


пожаловаться

22/03/2021 10:24 ВиталийЗдравствуйте.У «Второй полноценной регистрации» есть ошибка. При входе, указывая не верный логин или пароль, вместо сообщения об ошибке, отображается «1». Можете поправить?
ответить


пожаловаться

23/03/2021 02:09 МаратСпасибо, за сообщение! В архив попал вариант, который был на тестировании и там остались некоторые переменные, которые нужно было удалить!Надеюсь, что все ошибки удалены! Архив обновлен!И самое интересное, что 52 человека до вас — ничего не сказали…Скачали, тыркнулись.. не работает…Ну и хрен с ним… приколисты!

ответить

пожаловаться

24/03/2021 06:05 ВиталийНе стоит обижаться, люди могут не понимать что ошибка не критична. Может быть до конца не изучали работу.

ответить

пожаловаться

24/03/2021 11:01 МаратДа что вы!? За что обижаться то?Вы тот редкий человек, который смог написать! Вы молодец!Человек, же который не написал об ошибке… просто странное отношение к скачанному, вроде бы нужному скрипту… просто сказать, что там ошибка… — нет! У нас нет времени… У нас нет клавиатуры. Клавиатура есть, но пользоваться ею я не умею. Просто не хочу…И не в коем случае, я не осуждаю — это их право…

ответить

Работа с Open Source

Вы столкнетесь с тем, что уже существующие пакеты не выполняют необходимые задачи или делают это некорректно. Тем не менее, всегда есть возможность подстроить под себя их функционал, поэтому учитесь работать с чужим исходным кодом. Полезные советы:

  • читайте документацию и ищите ответы в ней, прежде чем задавать вопросы;
  • посетите официальную страницу пакета на GitHub или Bitbucket, просмотрите открытые и решенные проблемы, и, возможно, вы найдете пулл реквест, в котором будет необходимая функциональность;
  • также вы можете сами реализовать необходимую функциональность и отправить ее авторам, внеся свой вклад в развитие Open Source. Если ваш код не приняли, просто используйте свою версию вместо исходного пакета;
  • если вы все-таки вынуждены писать свои функции с нуля, то убедитесь, что вы создаете их для универсального применения, чтобы другие тоже могли их использовать.

Проблемы, с которыми сталкиваются микросервисная аутентификация и аутентификация

В микросервисной архитектуре приложение разбивается на несколько микросервисных процессов, и каждая микрослужба реализует бизнес-функцию модуля в исходном монолитном приложении. После разделения приложения каждый запрос доступа к микросервису должен пройти аутентификацию и аутентификацию. Если вы обратитесь к реализации одного приложения, вы столкнетесь со следующими проблемами:

  • Аутентификация и логика аутентификации должны обрабатываться в каждой микрослужбе, и эту часть общей логики необходимо многократно реализовывать в каждой микрослужбе. Хотя мы можем использовать базу кода для повторного использования части кода, это приведет к тому, что все микросервисы будут полагаться на конкретную базу кода и ее версию, что повлияет на гибкость выбора языка / инфраструктуры микросервисов.
  • Микросервисы должны следовать принципу единой ответственности. Микросервис обрабатывает только единственную бизнес-логику. Общая логика аутентификации и аутентификации не должна помещаться в реализацию микросервиса.
  • Чтобы в полной мере использовать преимущества архитектуры микросервисов и реализовать масштабируемость и отказоустойчивость микросервисов, лучше всего, чтобы микросервисы не имели состояния. Поэтому не рекомендуется использовать сеанс в качестве решения с отслеживанием состояния.
  • Аутентификация и проверка подлинности в микросервисной архитектуре включают более сложные сценарии, в которых пользователи получают доступ к приложениям микросервисов, сторонние приложения получают доступ к приложениям микросервисов, а также взаимный доступ между несколькими микросервисами в приложении. Каждый сценарий Для обеспечения гарантии необходимо рассмотреть следующие схемы проверки подлинности безопасность приложения.


Три сценария проверки подлинности микросервисов и проверки подлинности

Кнопка ВЫЙТИ

Если пользователь авторизован и находится на сайте, обязательно нужно прописать кнопку «Выйти», при нажатии на которую должно происходить удаление, полное уничтожение данной сессии, чтобы никто не смог работать под ней больше до следующей авторизации. За удаление сессии отвечает встроенная (базовая) функция session_destroy();

В одном файле vhod.php у меня не получилось прописать функцию удаления сессии по клику, то бишь, по нажатию кнопки «Выйти», поэтому пришлось для работы кнопки ВЫЙТИ прописать для неё отдельный скрипт в отдельном файле close.php Для этого мы просто создаём html-форму с одной кнопкой «Выйти», в атрибуте action прописываем ссылку на обработчик этой кнопки, на файл close.php (пример выше уже был указан). А вот в файле-обработчике прописываем закрытие сессии по логину и дальнейшее её полное уничтожение. Пример:

unset($_SESSION);//закрытие сессии по логину 
session_destroy();//удаление сессии

Полностью файл close.php имеет такую структуру:

<?php 
session_start();//открытие сессии 
unset($_SESSION);//закрытие сессии по логину 
session_destroy();//удаление сессии 
header("Location: http://lora.in.ua/php-uroki/avtorizaciya/vhod.php");//Перенаправление на эту страницу после нажатия кнопки ВЫЙТИ 
?>

Характеристики популярных VPN-сервисов

На данный момент на рынке представлены разнообразные сервисы, которые предлагают пользователям возможности для безопасного и анонимного использования интернета. Рассмотрим наиболее популярные из них.

NordVPN – один из лучших ВПН сервисов на рынке

NordVPN

NordVPN имеет 5200 серверов в 60 странах мира. Это обеспечивает стабильный доступ к интернету даже в Китае, в котором установлен глобальный Firewall. NordVPN один из немногих VPN-хостеров, который может разблокировать Netflix в тех странах, где стриминговый сервис официально не работает.

NordVPN – платная программа, стоит 5 долларов в месяц, но в то же самое время предоставляет 7-дневную пробную версию без каких-либо ограничений, чтобы пользователи могли по достоинству оценить функционал. Также действует 30-дневная гарантия возврата потраченных средств, если VPN не устроил.

NordVPN представлен на всех популярных мобильных и настольных операционных системах.

Hotspot Shield – удобный способ обхода блокировок

Hotspot Shield

Hotspot Shield — это сервис, который дает возможность бесплатно пользоваться лучшим VPN сервисом с ограничением в 500 мегабайт трафика в день. Бесплатный тариф обеспечивает подключение только к одному серверу в Соединённых Штатах Америки. К сожалению, стриминговые сервисы вроде Netflix и HBO блокируют доступ от Hotspot. Однако, данный VPN доступен пользователям в том числе и в виде дополнения для браузеров Google Chrome, Opera, Firefox и всех модификаций, выполненных на движке Chromium. Это позволяет удобно активировать его одним нажатием прямо из обозревателя интернета в тот момент, когда необходимо посетить запрещенный в стране сайт.

У приложения есть функция добавления сайтов в белый список. Эта опция автоматически включает VPN, в тот момент, когда пользователь заходит на заблокированный ресурс. Зашифрованное соединение будет лишь на тех вкладках, на которых оно необходимо.

Платная версия ценой 6 долларов даст возможность подключить к аккаунту до 5 верифицированных устройств пользователя, в том числе мобильных, на базе ОС Android и iOS. Пропадет лимит доступного дневного трафика, а также не будут показываться рекламные сообщения.

TunnelBear – достойная альтернатива Hotspot Shield

TunnelBear

TunnelBear – VPN-сервис, который также доступен на всех популярных платформах. Программа предоставляет гораздо меньше трафика, чем Hotspot Shield – всего 500 мегабайт в месяц. Дополнительный гигабайт можно получить при условии написания о компании в социальной сети Twitter.

В 2018 году сервис был куплен McAfee. McAfee – компания, которая занимается обеспечением информационной безопасности. У фирмы есть свой собственный антивирус, а также программы для мониторинга интернет-трафика на домашних компьютерах. McAfee зарегистрирована на территории США, что заставляет ее подчиняться местным законам, в том числе соглашении о слежке и шпионаже, принятыми еще во времена холодной войны.

При этом, несмотря на минусы, бесплатная версия не будет показывать пользователю назойливую рекламу. Покупка полной за 5$ снимет все ограничения и даст возможность использовать сервера в 20 странах.

Справочник security-архитектора: обзор подходов к реализации аутентификации и авторизации в микросервисных системах +17

  • 09.11.20 10:29


AlexanderBarabanov

#527098

Хабрахабр

2000

Информационная безопасность, Блог компании Huawei

Контейнеризация, CI/CD, оркестрация, микросервисы и agile-процессы – это облако тегов, которое теперь находится в словаре security-инженеров. Микросервисная модель и сопутствующие технологии привели к многообразию подходов в реализации архитектуры безопасности современных решений, и единого подхода к ее построению пока еще не видно. Зато есть технологические лидеры в области микросервисной разработки, есть известные недостатки конфигурации и уязвимости в реализации разных архитектурных подходов, и есть огромное количество «лучших практик» для построения надежной архитектуры. В данном материале, подготовленном на основе исследовательской статьи, опубликованной совместно с Денисом Макрушиным (makrushin) из команды Advanced Security Research исследовательской лаборатории Huawei Advanced Software Technology Lab, мы разберем типовые архитектурные подходы к реализации аутентификации и авторизации в микросервисных системах, их преимущества и недостатки. И сделаем это для того, чтобы у архитекторов безопасности была возможность сфокусироваться на реализации требуемой модели, а не на многочасовых поисках нужной информации.

Цели исследования

Архитектура микросервисов все чаще используется для проектирования и внедрения прикладных систем как в облачных, так и в локальных инфраструктурах, крупномасштабных приложениях и сервисах. Достаточно изучить Хабр на предмет различных практик, связанных с разработкой распределенных и отказоустойчивых систем, чтобы убедиться в повсеместном внедрении микросервисной модели.

На этапах разработки и внедрения программного продукта необходимо решить множество проблем безопасности. Основополагающими требованиями, над которыми ломает голову aрхитектор безопасности (Application Security Architect – роль в крупной продуктовой компании, которая еще не избавляет от технических задач Security Engineer’a, но которая уже добавляет высокоуровневые проблемы, связанные с архитектурой и процессами) и которые должны быть решены на этапе проектирования, являются аутентификация и авторизация (для краткости, АА)

Поэтому архитекторам безопасности приложений крайне важно понимать и правильно использовать существующие архитектурные шаблоны для реализации АА в системах, основанных на микросервисах. Цель нашего исследования заключалась в том, чтобы выявить такие шаблоны и дать архитектору безопасности рекомендации по их возможному использованию

Исследование проводится с учетом трех ключевых вопросов:

  • о каких архитектурных шаблонах реализации АА сообщалось в исследованиях систем на основе микросервисов?
  • какие преимущества и недостатки имеют существующие архитектурные шаблоны?
  • что должен учитывать архитектор безопасности приложений при выборе шаблонов для реализации аутентификации и авторизации в системах на базе микросервисов?

В ходе исследования мы провели обзор основных электронных библиотек научных статей, мы также просмотрели стандарты безопасности, презентации на крупных конференциях по безопасности и локальных тематических митапах (привет, OWASP Moscow Meetup).

Итогом стали следующие результаты:

  • систематизация современных моделей АА для систем, основанных на микросервисах;
  • рекомендации архитектору по безопасности приложений по выбору подходящего архитектурного шаблона (вот эту информацию лучше читать в полном тексте исследования).

Архитектурные модели реализации АА

Мы провели декомпозицию функций АА (если собираешься стать архитектором безопасности приложений, то добавляй сложные слова и термины в свою коллекцию – возможно, они пригодятся на совещаниях) на основе характеристик типовых микросервисных приложений и определили следующий список подфункций безопасности (Рисунок 1): пограничная авторизация (edge-level authorization), авторизация на уровне сервиса (service-level authorization), пробрасывание идентификатора внешнего субъекта (external entity identity propagation), межсервисная аутентификация (service-to-service authentication). Затем мы рассмотрели основные электронные базы данных и библиотеки, а также стандарты безопасности и презентации на основных конференциях по безопасности с целью выявления существующих архитектурных схем.Рисунок 1. Подфункции аутентификации и авторизации в системах на базе микросервисов

Разберем основные модели и их схемы.

Формы авторизации и регистрации

Форма авторизации обычно располагается на главной странице, либо она может быть на всех страницах сайта. Для
формы регистрации, в основном, создаётся отдельная страница. Мы создадим всего одну страницу, на которой будут
обе формы, и на неё же будут выводиться данные пользователя. Пока на ней будет только HTML код, но мы сразу
сделаем PHP файл, потому что в дальнейшем это будет скрипт. Назовём его formreg.php.
Код страницы будет такой:

formreg.php:

12345678910
111213141516171819202122
<?php header('Content-type: text/html; charset=utf-8'); ?>
<!DOCTYPE html>
<html>
<head>
<title>Страница</title>
<meta charset="utf-8">
</head>
<body>
<p>Авторизация:</p>
<form action="authorization.php" method="post">
  <input name="login" placeholder="Логин">
  <input type="password" name="password" placeholder="Пароль">
  <input type="submit" value="Войти">
</form>
<p>Регистрация:</p>
<form action="registration.php" method="post">
  <input name="login" placeholder="Логин">
  <input type="password" name="password" placeholder="Пароль">
  <input type="submit" value="Зарегистрароваться">
</form>
</body>
</html>

Создание формы авторизации

Теперь перейдем непосредственно к самой авторизации. Создайте файл с названием mylogin.html со следующим содержанием:

   
   <?php
        mysql_connect ("localhost", "root","");//пишите свои настройки
        mysql_select_db("test") or die (mysql_error());//и свою бд
        mysql_query('SET character_set_database = utf8'); 
        mysql_query ("SET NAMES 'utf8'");
        error_reporting(E_ALL); 
        ini_set("display_errors", 1);
        session_start();//не забываем во всех файлах писать session_start
   if (isset($_POST) && isset($_POST)){
    //немного профильтруем логин
        $login = mysql_real_escape_string(htmlspecialchars($_POST));
    //хешируем пароль т.к. в базе именно хеш
        $password = md5(trim($_POST));
     // проверяем введенные данные
    $query = "SELECT user_id, user_login
            FROM users
            WHERE user_login= '$login' AND user_password = '$password'
            LIMIT 1";
    $sql = mysql_query($query) or die(mysql_error());
    // если такой пользователь есть
    if (mysql_num_rows($sql) == 1) {
        $row = mysql_fetch_assoc($sql);
                //ставим метку в сессии 
                $_SESSION = $row;
                $_SESSION = $row;
                //ставим куки и время их хранения 10 дней
                setcookie("CookieMy", $row, time()+60*60*24*10);
                
   }
    else {
        //если пользователя нет, то пусть пробует еще
                header("Location: mylogin.html"); 
    }
   }
   //проверяем сессию, если она есть, то значит уже авторизовались
   if (isset($_SESSION)){
        echo htmlspecialchars($_SESSION)." <br />"."Вы авторизованы <br />
        Т.е. мы проверили сессию и можем открыть доступ к определенным данным";
   } else {
        $login = '';
        //проверяем куку, может он уже заходил сюда
        if (isset($_COOKIE)){
                $login = htmlspecialchars($_COOKIE);
        }
        //простая формочка
        print <<<      html
   <form action="mylogin.html" method="POST">
                Логин <input name="login" type="text" value = $login><br>
                Пароль <input name="password" type="password"><br>
                <input name="submit" type="submit" value="Войти">
        </form>
   html;

   }
   ?>

Примечание! Если вдруг у Вас отказывает работать парсер php, т.е. на экран Вам выводится сам код php, то у Вас просто на всего не включена обработка php в файлах html. Настройки делаются в файле конфигурации web сервера httpd.conf (если apache):

   
   AddType application/x-httpd-php .php .html

В IIS в окне «Добавление сопоставления модуля» (Add Module Mapping) добавьте к *.php еще и *.html через запятую. Это если Вы делаете у себя дома на своем web сервере, а если Вы все это делаете у хостера, то Вам придется писать им и просить внести необходимые изменения, у некоторых хостеров они уже сделаны.

Нравится13Не нравится13

Сессии

Мы уже умеем сохранять информацию для пользователя между посещениями страницы с помощью кук. Но зачем же нам ещё сессии, и для чего они нужны?
Сессии, они же сеансы, это, по сути, просто удобная обёртка над куками. Они также позволяют хранить данные, релевантные пользователю, но с некоторыми отличиями и ограничениями:

  • Данные хранятся не произвольное время, а только до закрытия вкладки с веб-страницей.
  • Чтобы сессии работали, в начале каждого сценария надо вызывать функцию .
  • Доступный объём для хранения информации намного больше.

Запись и чтение информации при использовании сессий выглядит просто как работа со специальным массивом .

Как устроены сессии

  1. PHP генерирует уникальный идентификатор браузера.
  2. Идентификатор сохраняется в специальную куку и передаётся с каждым запросом.
  3. Все данные, которые записываются в сессию, PHP автоматически сохраняет в специальном файле на сервере.

Благодаря существованию сессий в PHP, мы можем сохранять любые данные так же просто, как присваивать их переменным. Но, в отличие от переменных, эти данные будут сохраняться для пользователя между запросами в пределах сеанса.

Перепишем сценарий для подсчета посещений, но теперь используем сессии:

Request tracker

Request Tracker — система учёта и отслеживания заявок уровня предприятия с открытым исходным кодом, позволяющая управлять задачами, проблемами, и внешними запросами от пользователей. Система написана на объектно-ориентированном языке Perl.

Эта система начала разрабатываться еще с 1996 года, имеет Русский язык, поддержку учета рабочего времени. Еще она:

  • имеет оптимизированный интерфейс под мобильные устройства
  • имеет Dashboards и настраиваемые графики
  • имеет поддержку PGP
  • имеет гибкую настраиваемую отчетность и SLA
  • может интегрироваться с другими системами авторизации пользователей
  • имеет интерфейс самообслуживания
  • имеет свою базу знаний
  • мощная система прав пользователей

На удивление, версия SaaS не предлагается, но зато предлагается услуга хостинга с установкой RT.

Все подробности об этой системе можно посмотреть тут: https://www.bestpractical.com/rt/

Создание API для входа пользователей

В приведенном ниже коде установим заголовки, чтобы файл знал откуда должен поступить запрос и какой тип данных принимается

Откроем файл api/login.php и поместим в него следующий код

Мы сравним электронную почту пользователя и пароль из базы данных, поэтому нам нужно подключение к БД.

Нам также нужно создать экземпляр пользовательской таблицы, это позволит нам проверить, существует ли электронная почта, и прочитать хешированный пароль.

Замените комментарий // здесь будет соединение с БД в файле login.php следующим кодом:

Создание файла конфигурации (ядра)

Файл login.php не будет работать без файла core.php. Этот файл содержит общие настройки / переменные нашего приложения.

У нас есть переменные, используемые нашей библиотекой JWT для кодирования и декодирования токена. Значение $key должно быть вашим собственным и уникальным секретным ключом.

iss — адрес или имя удостоверяющего центра

aud — имя клиента для которого токен выпущен

iat — время, когда был выпущен JWT

nbf — время, начиная с которого может быть использован (не раньше, чем)

Вы также можете использовать exp — идентифицирует время истечения срока действия токена

Откроем api/config/core.php и добавим следующий код

Скачайте библиотеку PHP-JWT c GitHub’а

Скопируйте содержимое библиотеки в api/libs/

Тест входа в систему

Введём следующий URL запрос

В Body вставьте следующее значение JSON

Нам нужно сохранить сгенерированный JWT чтобы потом его использовать для проверки

Для проверки на неудачный вход в систему измените значение пароля на 222 (это неверный пароль)

Итоги

Мы сделали простейшую регистрацию с PDO или же подготовленными запросами. Сейчас нет проверок на существование пользователей, то есть можно создать несколько одинаковых логинов, что ни есть хорошо, конечно же, но для понимания принципов сойдет. Так же, перед каждым отдельным сообщением пришлось добавить «

В реальном проекте нужно добавлять отдельную шапку и там прописать это один раз и забыть.

Вы наверное заметили что мы не сделали страницу выхода из аккаунта. Да, так и есть, попробуйте сделать ее сами. Оставлю только подсказку, сессию можно удалить с помощью функции «session_destroy()», что будет означать что мы вышли из аккаунта.

3.72/5 (25)

Вывод:

Я не стал делать всё за вас, так как программист должен сам учится всё делать и уметь находить информацию, также надо сказать, что эта статья сделана для начинающим PHP разработчикам, поэтому, более опытным, эта статья вряд ли поможет.

В будущем я напишу более продвинутую статью, о том как сделать систему авторизации и регистрации на PHP, но используя уже более продвинутые технологии.

Также рекомендую:

  • Как сделать регистрацию на PHP через email
  • PHP или Python, что лучше учить для Web разработчики в 2020
  • Как выучить язык PHP с нуля и максимально эффективно
  • Почему язык PHP не любят программисты, с чем связано
Рейтинг
( Пока оценок нет )
Editor
Editor/ автор статьи

Давно интересуюсь темой. Мне нравится писать о том, в чём разбираюсь.

Понравилась статья? Поделиться с друзьями:
Люкс-хост
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: