программный код………………

advertisement
Лабораторная работа 4. РНР. Регистрация на сайте
Используемые функции:
идентификатор соединения = mysql_connect(имя сервера, логин_БД,
пароль_БД) - для определения имени сервера используйте элемент
глобального массива $_SERVER['SERVER_NAME'], полную информацию о
глобальных массивах можно просмотреть, вызвав функцию phpinfo();
mysql_select_db(имя базы данных, идентификатор соединения);
результат запроса = mysql_query(текст запроса)
mysql_fetch_array(результат запроса);
isset (переменная) – проверка на существование переменной;
unset (переменная) – уничтожение переменной;
empty(переменная) – проверка на «пустоту»;
stripcslashes (переменная) - удаляет экранирование символов (\n, \r ...,
восемеричное и шестнадцатиричное представление;
htmlspecialchars (переменная) - преобразует специальные символы в
HTML сущности, например, '&' (амперсанд) преобразуется в '&'
trim(переменная) - удаляет пробелы из начала и конца строки;
1. В каталог базы данных, созданной на лабораторной работе №2, добавьте
новую таблицу Users (Пользователи) с полями id_p, login, password. Поле
id_p (id пользователя) должно содержать последовательность целых чисел –
«счётчик» типа INT с флагом AUTO_INCREMENT.
2. Создайте файл bd.php, содержащий функции соединения с сервером и
базой данных. Файл подключается с помощью оператора include в другие
файлы.
3. На сайт, созданный на лабораторной работе №3, добавьте файл reg.html
для ввода логина и пароля пользователя. Он может быть выполнен в виде
«выезжающей» панели, или модального окна, открывающейся по ссылке
(кнопке меню) и т.п. Возможно использование дополнительных эффектов
при помощи технологии jQuery. Атрибуты тега <form action=reg.php
method=POST>.
4. Создайте файл reg.php для обработки вводимых пользователем данных.
Порядок команд в файле:
<?php
//подключение файла bd.php;
………………программный код………………
//проверка на существование переменной $login, полученной из файла
reg.html;
………………программный код………………
//переопределение переменной с использованием глобального массива
$_POST;
………………программный код………………
//проверка на «пустоту» и уничтожение переменной, если в неё не передано
значение;
………………программный код………………
//аналогичная проверка (3 оператора) для переменной $password
………………программный код………………
//если пользователь не ввел логин или пароль, то выводим сообщение и
формируем ссылку «Назад»
………………программный код………………
//если логин и пароль введены, то обрабатываем их c использованием
функций stripslashes(); htmlspecialchars(); trim();
………………программный код………………
// проверка на существование пользователя с таким же логином
……SQL-запрос, выбирающий пользователя с логином $login…
………………выполнение запроса………………
// если такой логин зарегистрирован, то выводим сообщение и формируем
ссылку «Назад»
………………программный код………………
// если такого нет, то сохраняем данные
………SQL-запрос для добавления записи в таблицу Users……
// проверяем, есть ли ошибки и выводим сообщение о регистрации на сайте
………………программный код………………
else //сообщение о неудачной регистрации
………………программный код………………
?>
5. Добавьте в таблицу User поле для хранения фотографии пользователя и
дополните программный код файлов reg.html и reg.php, чтобы пользователь
имел возможность загружать свою фотографию.
Для
загрузки
изображаний
можно
использовать
инструкцию
type="file" name="ufile" \><input type="submit" value="Загрузить" \>
6. Выведите таблицу User на экран.
<input
Download