(Б) для получения белых регистрирующих операций, как показан в следующем коде (реализован на бревне)
Во-вторых, для достижения регистрации
1. Схема:
Lable {дисплей: встроенная-флекс; ширина: 30px; высота: 30px;} // достижения автоматического выравнивания поля ввода, в противном случае неравномерно.
2. Идеи
а) разумность данные аутентификации:
1. Когда форма представляется (onsubmit атрибут), с помощью JS из document.getElementById ( «ID»). Value для получения паролей учетных записей
2. str.trim () == «» подтверждение не является пустым, str.indexOf ( «») определяет, является ли имя пользователя без пробелов
Анализируя два pwd1 == pwd2 же пароль, pwd.length <8 определяет, длина пароля не менее 8
3. выше, не выполнены, то предупреждение, и возвращает ложь, отрицание автора
б) проверить, что имя пользователя повторяется:
По имени атрибута в форме, чтобы оставлять фон regist_judge), используя $ _POST [ «имя»] для получения значения отправки формы, на $ mysqli_result = db-> запрос ( «SQL оператор Найти») информация хранится в таблицах базы данных БД, в в то время как = $ mysqli_result (fetch_array (MYSQL_ASSOC)) получения первого сообщения (3-> 2-> 1) $ ряду с $ строки [ 'пользователя'] == $ имя пользователя определяет, существует ли уже имя пользователя в базе данных
я) Повтор:
Заголовок () указывает на экран входа в систему, и $ _SESSION [ «флаг»] передается сообщение об отказе регистрации, интерфейс регистрации для предупреждения (пользователя информация об отказе Логин);
б) не будет повторяться:
если ($ судьи = $ db-> запрос ($ SQL вставить заявление) === истина) // эхо генерации метки, вставленный успешно использоваться для перехода на экран входа в систему
в) повторение процесса Имя пользователя:
После того, как фон возвращает интерфейс регистрации, используя, если (Исеть ($ _ SESSION [ «флаг»])) определяет, имеется ли в Флаге, существует затем повторяется имя пользователя, эхо JS в Alert (), а также с помощью отключенного (_ SESSISON [ «флага $ «]) уничтожить его
код
regist.php // регистрация интерфейс
<? PHP session_start (); если ( Исеть ( $ _SESSION [ 'флаг' ])) { эхо "< 'текст / JavaScript' скрипт типа => оповещения ( '用户名已存在') </ скрипт>" ; снята с охраны ( $ _SESSION [ 'флаг' ]); } ?> <! DOCTYPE HTML PUBLIC "- // W3C // DTD XHTML 1.0 Transitional // EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <HTML XMLNS = "http://www.w3.org/1999/xhtml"> <голова> <META HTTP-эквив = "Content-Type" содержание = "текст / html; кодировка = UTF-8" /> метка {ширина : 80px; дисплей: встроенная-флекс; высота: 30px;} .registall {граница: 10x твердой розовая; ширина: 600px, высота: 300px; маржа: 200px авто; границы: 2px твердая розовая, коробка-тень: 0 0 5px 0 # ааа; границы радиуса: 30px;} .regist .submit {позиция: относительная; слева: 115px; сверху: 10px; ширина: 75px; высота: 27px;} .regist {ширина: 300px; поле: 20px авто;} .registall .title {размер шрифта: 23px; цвет: розовые; выравнивания текста: центр; край дно: 20px; маржа-топ: 38px;} </ стиль> <типа скрипта = "текст / JavaScript"> функция судья () { вар имя пользователя = document.getElementById ( "имя пользователя"). стоимость; вар password1 = document.getElementById ( "password1"). значение; вар . password2 = document.getElementById ( "password2") значение; / * Анализ данных действителен * / IF (имя пользователя == '' || имя пользователя. TRIM () = = '') предупреждение ( "имя пользователя не может быть пустым" ); еще IF (username.indexOf ( "") = - 1) Alert (! "имя пользователя не может содержать пробелы" ), в остальное IF (password1 == '' | | password2 == ''. || password1 обивка . () == '' || password2 обивка () == '' ) Предупреждение ( "пароль не может быть пустым" ); еще если (Password1! =password2) Предупреждение ( "два пароля должны совпадать" ), в другой ПЧ . (password1.length <8) Alert ( "не меньше , чем длина пароля 8." ); еще возвращение к истине , вернуться к ложным ; } </ SCRIPT> </ HEAD> <тело> <DIV класс = "registall"> <DIV класс = "заголовок"> регистрация интерфейс </ DIV> <форма класс = "REGIST" Action = "regist_judge.php" Method = "POST" onsubmit = «возвращение судьи ( ); «> <метка> имя пользователя: </ метка> <Идентификатор = имя входного "имя пользователя" = тип "имя пользователя" = "текст" заполнителем = " Введите имя пользователя" /> </ BR> <метка> Пароль: </ метка> <в поле ВХОД указанное выше ID = имя "Password1" = "password1" Тип = "пароль" заполнитель = " длина пароля превышает 6." /> </ BR> <метка> подтвердить пароль: </ метка> <INPUT ID = имя = типа "password2" "password2" = "пароль" заполнитель = "Пожалуйста , введите пароль еще раз" /> </ BR> <вход типа = "Передать" значение = "зарегистрирован" класс = "Передать" /> </ form> </ DIV> </ body> </ html>
regist_judge.php // решение интерфейса Войти
<? PHP session_start (); включают в себя ( "connect.php" ); $ имя пользователя = $ _POST [ "имя пользователя" ]; $ password1 = $ _POST [ "password1" ]; $ password2 = $ _POST [ "password2" ]; $ sql_judge = "выберите имя пользователя из user_msg , где имя пользователя = '{ $ имя пользователя }'" ; $ mysqli_result = $ дб -> запрос ( $ sql_judge ); в то время как ( $ строка = $ mysqli_result ->fetch_array (MYSQL_ASSOC)) {
/ * определяется , есть ли имя пользователя * / IF ( $ строка [ 'имя пользователя'] == $ имя пользователя ) { $ _SESSION [ 'флага'] = 1. ;
заголовок ( "МЕСТОНАХОЖДЕНИЕ: regist.php" ) ; Выход (); } } $ SQL = "вСТАВИТЬ user_msg (имя пользователя, пароль) значения ( '{ $ имя пользователя }', '{ $ password1 }')" ;
// в базу данных IF ( $ Судите = $ DB -> Запрос ( $ SQL ) === истина ) { эхо "нет <br/> <DIV стиль = 'выравнивания текста: центр;'>注册成功<br/> <br/> <сильный> < 'login.php' A HREF = стиль = "текст-отделка: нет; Font- размер: 20px; цвет: розовый; '>登录</a> </ STRONG> </ DIV> " ; } ?>