Форма регистрации и входа php. Форма входа и регистрации с помощью HTML5 и CSS3
Предлагаю вашему вниманию очень простой и функциональный скрипт регистрации и авторизации на сайте
, который состоит из 3-ёх файлах PHP с подключением 2-ух java скриптов, с помощью которых ошибки выводятся в самой форме без перезагрузки страницы.
Скрипт был успешно протестирован на версии PHP 5.3.3
и PHP 5.6.3
Что умеет и имеет скрипт
Регистрировать новых пользователей;
Авторизовывать пользователей и записывать куки на определённый срок (нет необходимости каждый раз авторизовываться);
Показывать и скрывать определённую информацию для авторизованных и не авторизованных соответственно;
Имеет АДМИН ПАНЕЛЬ
, где можно редактировать все данные и удалять пользователей.
Там же DEMO и Админ Панели
1 ШАГ
. Если вы используете скрипт регистрации и авторизации на локалке с помощью DENWER, то изменения в файлах для соединения с базой данных делать не нужно. В противном случае откройте файлы: stayt.php
, classes/Auth.class.php
и adminka/connect.php
, и в самом верху замените данные для связи с базой данных на свои.
2 ШАГ
. Переходим (если используете DENWER) по адресу: http://localhost/Tools/phpmyadmin/ , если на хостинге, то нажимаете Базы Данных, и создаёте новую базу с именем: registr
и сравнение: utf8_general_ci
. Вы можете задать разумеется своё имя, но тогда замените его обязательно в файлах для соединения с базой (см. шаг 1).
3 ШАГ
. Нажмите на созданную базу registr
и затем на верхнюю вкладку SQL
и в появившееся окно для ввода вставьте этот код и нажмите ОК.
CREATE TABLE IF NOT EXISTS `my_users` (`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(255) NOT NULL,
`names` varchar(15) NOT NULL,
`password` varchar(255) NOT NULL,
`salt` varchar(100) NOT NULL,
PRIMARY KEY (`id`)) ENGINE=MyISAM DEFAULT CHARSET=utf8;
Всё! Переходите в браузере по своему адресу, пробуйте и экспериментируйте.
Админ Панель
После того, как вы сделали хоть одну регистрацию, можете перейти в АДМИНКУ. Вход в АДМИН-ПАНЕЛЬ
:
Http://Ваш_сайт.ru/adminka/
Не забудьте запоролить эту папку для безопасности и можно так же переименовать её. При открытие Админ Панели нажмите кнопку ПОИСК
и вам отобразятся все зарегистрированные пользователи, где при нажатие на определённый номер ID
, вам откроются данные пользователя для редактирования.
Можно так же быстро найти пользователя по его E-mail, для этого достаточно ввести в поле для ПОИСКа
известную электронную почту и нажать на кнопку. Кнопкой ДОБАВИТЬ
не советую пользоваться, так как пользователь добавляется в систему без пароля. И не имею понятия зачем её вообще сделали.
На этом всё, что не получается или не понятно, - задавайте вопросы.
Попутно можете попробовать для продажи информации (товаров).
Здравствуйте! Сейчас мы попробуем реализовать самую простую регистрацию на сайте с помощью PHP + MySQL. Для этого на вашем компьютере должен быть установлен Apache. Принцип работы нашего скрипта изображен ниже.
1. Начнем с создания таблички users в базе
. Она будет содержать данные пользователя (логин и пароль). Зайдем в phpmyadmin (если вы создаете базу на своем ПК http://localhost/phpmyadmin/
). Создаем таблицу users
, в ней будет 3 поля.
Я создаю ее в базе mysql, вы можете создавать в другой базе. Далее устанавливаем значения, как на рисунке:
2. Необходимо соединение с этой таблицей.
Давайте создадим файл bd.php
. Его содержание:
$db = mysql_connect ("ваш MySQL сервер","логин к этому серверу","пароль к этому серверу"); mysql_select_db ("имя базы, к которой подключаемся",$db); ?>
Сохраняем bd.php
. Отлично! У нас есть таблица в базе, соединение к ней. Теперь можно приступать к созданию странички, на которой пользователи будут оставлять свои данные.
3. Создаем файл reg.php с содержанием (все комментарии внутри):
Регистрация
Регистрация
4. Создаем файл
, который будет заносить данные в базу и сохранять пользователя. save_user.php
(комментарии внутри):
{ } //если логин и пароль введены, то обрабатываем их, чтобы теги и скрипты не работали, мало ли что люди могут ввести
//удаляем лишние пробелы $login = trim($login); $password = trim($password); // подключаемся к базе // проверка на существование пользователя с таким же логином $result = mysql_query("SELECT id FROM users WHERE login="$login"",$db); if (!empty($myrow["id"])) { exit ("Извините, введённый вами логин уже зарегистрирован. Введите другой логин."); } // если такого нет, то сохраняем данные $result2 = mysql_query ("INSERT INTO users (login,password) VALUES("$login","$password")"); // Проверяем, есть ли ошибки if ($result2=="TRUE") { echo "Вы успешно зарегистрированы! Теперь вы можете зайти на сайт. Главная страница"; } else { echo "Ошибка! Вы не зарегистрированы."; } ?>
5. Теперь наши пользователи могут регистрироваться!
Далее необходимо сделать "дверь" для входа на сайт уже зарегистрированным пользователям. index.php
(комментарии внутри) :
// вся процедура работает на сессиях. Именно в ней хранятся данные пользователя, пока он находится на сайте. Очень важно запустить их в самом начале странички!!! session_start(); ?>
Главная страница
Главная страница
// Проверяем, пусты ли переменные логина и id пользователя if (empty($_SESSION["login"]) or empty($_SESSION["id"])) { // Если пусты, то мы не выводим ссылку echo "Вы вошли на сайт, как гость Эта ссылка доступна только зарегистрированным пользователям"; } else {
В файле index.php
мы выведем ссылочку, которая будет открыта только для зарегистрированных пользователей. В этом и заключается вся суть скрипта - ограничить доступ к каким-либо данным.
6. Остался файл с проверкой введенного логина и пароля. testreg.php (комментарии внутри):
session_start();// вся процедура работает на сессиях. Именно в ней хранятся данные пользователя, пока он находится на сайте. Очень важно запустить их в самом начале странички!!! if (isset($_POST["login"])) { $login = $_POST["login"]; if ($login == "") { unset($login);} } //заносим введенный пользователем логин в переменную $login, если он пустой, то уничтожаем переменную if (isset($_POST["password"])) { $password=$_POST["password"]; if ($password =="") { unset($password);} } //заносим введенный пользователем пароль в переменную $password, если он пустой, то уничтожаем переменную if (empty($login) or empty($password)) //если пользователь не ввел логин или пароль, то выдаем ошибку и останавливаем скрипт { exit ("Вы ввели не всю информацию, вернитесь назад и заполните все поля!"); } //если логин и пароль введены,то обрабатываем их, чтобы теги и скрипты не работали, мало ли что люди могут ввести $login = stripslashes($login); $login = htmlspecialchars($login); $password = stripslashes($password); $password = htmlspecialchars($password); //удаляем лишние пробелы $login = trim($login); $password = trim($password); // подключаемся к базе include ("bd.php");// файл bd.php должен быть в той же папке, что и все остальные, если это не так, то просто измените путь
$result = mysql_query("SELECT * FROM users WHERE login="$login"",$db); //извлекаем из базы все данные о пользователе с введенным логином $myrow = mysql_fetch_array($result); if (empty($myrow["password"])) { //если пользователя с введенным логином не существует } else { //если существует, то сверяем пароли if ($myrow["password"]==$password) { //если пароли совпадают, то запускаем пользователю сессию! Можете его поздравить, он вошел! $_SESSION["login"]=$myrow["login"]; $_SESSION["id"]=$myrow["id"];//эти данные очень часто используются, вот их и будет "носить с собой" вошедший пользователь echo "Вы успешно вошли на сайт! Главная страница"; } else { //если пароли не сошлись
Ну вот и все! Может урок и скучный, но очень полезный. Здесь показана только идея регистрации, далее Вы можете усовершенствовать ее: добавить защиту, оформление, поля с данными, загрузку аватаров, выход из аккаунта (для этого просто уничтожить переменные из сессии функцией unset
) и так далее. Удачи!
Все проверил, работает исправно!
Каждый день пользователи серфят интернет в поисках нужной информации. Большая часть форумов и социальных сетей требует авторизации для получения доступа к данным. Таким способом владельцы сайтов набирают базу пользователей и посещаемость. У вас есть собственный ресурс, но нет постоянного контингента юзеров? Давайте разберемся в том, как сделать регистрацию на сайте.
Регистрация пользователя на проекте означает его заинтересованность в информации на сайте. Но не стоит перегружать процедуру регистрации излишними формами и данными. В последнее время при создании аккаунта на ресурсе используется лишь логин. Пользователь вводит желаемый логин и свой почтовый ящик. Спустя пару минут на указанный электронный адрес приходит письмо с паролем к аккаунту либо ссылка на получение пароля и активацию профиля. Впрочем, большая часть старых сайтов все еще применяет прежнюю схему регистрации аккаунтов, в которой помимо желаемого логина нужно указывать пароль, почтовый ящик, имя и фамилию.
Итак, чтобы не отпугнуть пользователя от формы создания профиля, ее нужно делать одновременно простой и эффективной. Как сделать регистрацию на своем сайте и максимально обезопасить форму от взлома?
Для реализации регистрации на сайте потребуется поддержка PHP и MySQL на хостинге. Если хостинг поддерживает только HTML, то, увы, создать скрипт регистрации на PHP у вас не получится. Весь алгоритм авторизации на сайте можно поделить на несколько этапов:
Пользователь заходит на сайт, открывает форму авторизации.
Если он уже зарегистрирован, то вводит пароль и логин в форме.
Скрипт-обработчик проверяет полученные данные:
если введенная пара логин/пароль верна, то пользователь авторизуется на сайте;
если данные не корректны, то пользователь вновь возвращается на страницу с формой авторизации.
Если пользователь не зарегистрирован, то сайт предлагает ему заполнить специальную форму для создания аккаунта.
Собственно говоря, регистрация представляет собой процесс сохранения данных о пользователе в специальном «месте». В качестве места хранения логинов и паролей пользователей сайта могут быть использованы текстовые файлы с расширением.txt и.dat, XML-файл и база данных. Первые два способа уже изжили себя и считаются небезопасными методами хранения данных, так как любой человек может получить к ним доступ прямо из адресной строки браузера.
Нижеуказанный скрипт регистрации пользователей является самым простым. Вы можете прикрутить к нему капчу, дабы обезопасить себя от авторегистраций, добавить новые поля и многое другое.
Первым делом вам нужно сделать базу данных на своем хостинге через phpMyAdmin. После чего создайте нового пользователя и «привяжите» его к базе данных. К примеру, вы сделали базу с названием «myuserbd», пользователем «myuser» и паролем «myuserpass».
Перейдите в phpMyAdmin, выберите свежесозданную базу данных и выполните следующий запрос к базе (раздел SQL):
В БД «myuserbd» появится новая таблица с названием «users». В таблице имеется 3 строки: ID (ID регистрируемого пользователя), login (логин пользователя) и pass (пароль пользователя).
Теперь нужно связать базу данных и скрипт регистрации. Создаем файл bd.php, вписываем в него нижеприведенный код и указываем название базы, пароль и логин пользователя.
Скрипт регистрации пользователей состоит из 4 файлов:
index.php – главная страница сайта с проверкой информации об авторизации пользователя;
reg.php – страница с формой регистрации пользователя;
testreg.php – файл, отвечающий за проверку данных пользователя;
saveuser.php – сохранение введенных данных в базу.
По желанию вы можете добавить в скрипт свои функции: восстановление забытого пароля, активацию аккаунта через e-mail, защиту от ботов и авторегистраций.
Осталось только с вышеуказанными PHP-файлами, прописать свои данные к БД в файле bd.php и распаковать его на хостинге в корневую папку своего сайта. Как видите, сделать регистрацию на сайте не сложно.
Впрочем, есть более простые способы создания форм регистрации пользователей. В интернете множество готовых скриптов с хорошей защитой, а практически все CMS позволяют пользователям регистрироваться на сайте.
HTML формы — сложные элементы интерфейса. Они включают в себя разные функциональные элементы: поля ввода и
Большая часть информации веб-форм передаётся с помощью элемента . Для ввода одной строки текста применяется элемент , для нескольких строк - элемент
Элемент
Last NameLast NameLast Name
Поля формы можно разделять на логические блоки с помощью элемента