Разработка системы входа в систему с использованием PHP и MySQL

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

Основная система входа в систему обычно имеет 3 элемента:

1. Элемент, который позволяет пользователю зарегистрировать предпочтительный идентификатор входа и пароль

2. Компонент, который позволяет системе проверять и аутентифицировать пользователя при последующем входе в систему.

3. Компонент, который отправляет пароль пользователя на зарегистрированный адрес электронной почты, если пользователь забывает пароль

Такая система может быть легко создана с использованием PHP и MySQL.

================================================== ==============

Компонент 1 — Регистрация

Компонент 1 обычно реализуется с использованием простой HTML-формы, содержащей 3 поля и 2 кнопки:

1. Предпочтительное поле для входа в систему

2. Поле предпочитаемого пароля

3. Правильный адрес электронной почты

4. Отправить кнопку

5. Кнопка сброса

Предположим, такая форма закодирована в файле с именем register.html. Следующий фрагмент кода HTML является типичным примером. Когда пользователь заполняет все поля, страница register.php вызывается, когда пользователь нажимает кнопку Отправить.

[form name=»register» method=»post» action=»register.php»]

[input name=»login id» type=»text» value=»loginid» size=»20″/][br]

[input name=»password» type=»text» value=»password» size=»20″/][br]

[input name=»email» type=»text» value=»email» size=»50″/][br]

[input type=»submit» name=»submit» value=»submit»/]

[input type=»reset» name=»reset» value=»reset»/]

[/form]

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

@mysql_connect ("localhost", "mysql_login", "mysql_pwd") или die ("Не удается подключиться к БД!");

@mysql_select_db ("tbl_login") или умереть ("Невозможно выбрать БД!");

$ sql = "INSERT INTO login_tbl (логин, пароль и адрес электронной почты) VALUES (". $ loginid. ",". $ password. ",". $ email. ")";

$ r = mysql_query ($ sql);

if (! $ r) {

$ err = mysql_error ();

печатать $ err;

выхода ();

}

Фрагмент кода предполагает, что таблица MySQL, используемая для хранения регистрационных данных, называется tbl_login и содержит 3 поля — поля loginid, password и email. Значения переменных $ loginid, $ password и $ email передаются из формы в register.html с использованием метода post.

================================================== ==============

Компонент 2 — Проверка и аутентификация

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

Обычно это делается с помощью простой формы HTML. Эта HTML-форма обычно имеет 2 поля и 2 кнопки:

1. Логин ID поля

2. Поле пароля

3. Отправить кнопку

4. Кнопка сброса

Предположим, что такая форма закодирована в файле по имени genticate.html. Следующий фрагмент кода HTML является типичным примером. Когда пользователь заполняет все поля, pagehenticate.php вызывается, когда пользователь нажимает кнопку Отправить.

[form name=»authenticate» method=»post» action=»authenticate.php»]

[input name=»login id» type=»text» value=»loginid» size=»20″/][br]

[input name=»password» type=»text» value=»password» size=»20″/][br]

[input type=»submit» name=»submit» value=»submit»/]

[input type=»reset» name=»reset» value=»reset»/]

[/form]

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

@mysql_connect ("localhost", "mysql_login", "mysql_pwd") или die ("Не удается подключиться к БД!");

@mysql_select_db ("tbl_login") или умереть ("Невозможно выбрать БД!");

$ sql = "ВЫБЕРИТЕ loginid ОТ login_tbl ГДЕ loginid = & # 39;". $ loginid. "& # 39; и пароль = & # 39;". $ пароль. «& # 39; '

$ r = mysql_query ($ sql);

if (! $ r) {

$ err = mysql_error ();

печатать $ err;

выхода ();

}

if (mysql_affered_rows () == 0) {

print "такого входа в систему нет. попробуйте еще раз. ";

выхода ();

}

еще {

выведите «успешно вошли в систему.»;

// продолжить выполнение функций сайта — например, представить информацию пользователю

}

Подобно компоненту 1, фрагмент кода предполагает, что таблица MySQL, используемая для хранения регистрационных данных, называется tbl_login и содержит 3 поля — поля loginid, password и email. Значения переменных $ loginid и $ password передаются из формы в authentication.html с использованием метода post.

================================================== ==============

Компонент 3 — я не помню пароль

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

Обычно это делается с помощью простой формы HTML. Эта HTML-форма обычно содержит 1 поле и 2 кнопки:

1. Логин ID поля

2. Отправить кнопку

3. Кнопка сброса

Предположим, такая форма закодирована в файле с именем Forgot.html. Следующий фрагмент кода HTML является типичным примером. Когда пользователь заполняет все поля, страница Forgot.php вызывается, когда пользователь нажимает кнопку Отправить.

[form name=»forgot» method=»post» action=»forgot.php»]

[input name=»login id» type=»text» value=»loginid» size=»20″/][br]

[input type=»submit» name=»submit» value=»submit»/]

[input type=»reset» name=»reset» value=»reset»/]

[/form]

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

@mysql_connect ("localhost", "mysql_login", "mysql_pwd") или die ("Не удается подключиться к БД!");

@mysql_select_db ("tbl_login") или умереть ("Невозможно выбрать БД!");

$ sql = "ВЫБЕРИТЕ пароль, электронная почта с login_tbl ГДЕ loginid = & # 39;". $ loginid. «& # 39; '

$ r = mysql_query ($ sql);

if (! $ r) {

$ err = mysql_error ();

печатать $ err;

выхода ();

}

if (mysql_affered_rows () == 0) {

print "такого входа в систему нет. попробуйте еще раз. ";

выхода ();

}

еще {

$ row = mysql_fetch_array ($ r);

$ password = $ poem[«password»];

$ email = $ poem[«email»];

$ subject = "ваш пароль";

$ header = "from: you@yourdomain.com";

$ content = "ваш пароль". $ пароль;

почта ($ email, $ subject, $ row, $ header);

распечатать «Письмо, отправленное вам с паролем»;

}

Подобно компоненту 1, фрагмент кода предполагает, что таблица MySQL, используемая для хранения регистрационных данных, называется tbl_login и содержит 3 поля — поля loginid, password и email. Значение переменной $ loginid передается из формы в Forgot.html с помощью метода post.

================================================== ==============

приложение

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