
- •«Разработка системы управления содержанием Internet-ресурса»
- •1. Создание бд.
- •2. Создание файла с параметрами соединения с бд.
- •3. Создание приложения для доступа к бд
- •4. Создание контроллера
- •5. Использование аутентификации.
- •6. Создание учетной записи пользователя.
- •7. Организация взаимодействия в рамках сессии
Задание на лабораторную работу № 8
«Разработка системы управления содержанием Internet-ресурса»
Цель работы: совместное применение средств PHP и MySQL для создания сайта
В ходе работы предстоит разработать БД для хранения в ней информации о книгах, а также приложение, предоставляющее удобный интерфейс для сопровождения созданного каталога.
1. Создание бд.
Запустите клиент командной строки в среде XAMPP.
Введите следующую команду mysql
mysql –h localhost –u root –p
При появлении на экране приглашения «Enter password» введите пароль. Пароль по умолчанию для пользователя root – пустая строка.
Создайте в командной строке приложения XAMPP базу данных MySQL, введя строку
CREATE DATABASE store;
Введите запрос
USE store;
Создайте в командной строке MySQL таблицы, используя приведенный ниже фрагмент кода
CREATE TABLE books (title_id INT NOT NULL AUTO_INCREMENT,
title VARCHAR (150) character set cp1251,
pages INT,
PRIMARY KEY (title_id));
CREATE TABLE authors (author_id INT NOT NULL AUTO_INCREMENT,
title_id INT NOT NULL,
author VARCHAR (125) character set cp1251,
PRIMARY KEY (author_id));
Конструкция character set cp1251 при определении символьных полей предписывает установить соответствующую таблицу кодировки для вводимых символьных данных. Альтернативный способ указания таблицы кодировки после определения всей таблицы, а не для каждого символьного поля, не гарантирует корректность сохранения строк.
2. Создание файла с параметрами соединения с бд.
Создайте файл db_login.php, внутри которого установите разметку php кода <?php ?>. Пространство между тегами <?php и ?> и заполните следующим содержанием.
$db_host='localhost';
$db_database='store';
$db_username='root';
$db_password=' ';
$connection=@mysql_connect($db_host, $db_username, $db_password);
if(!$connection) {
die("Невозможно подключиться к БД: ".mysql_error());
}
else {
echo("Подключение осуществлено: "."строка ".__LINE__. " файла ".__FILE__);
}
$db_select=mysql_select_db($db_database,$connection);
if(!db_select) {
die("Невозможно выбрать БД: ".mysql_error());
}
Посредством префикса «$» в PHP вводятся переменные. После префикса следует уникальное в рамках программы имя переменной. Так как PHP не является строго типизированным языком, как C и Java, то тип переменной определяется интерпретатором по присваиваемому значению. Строки соединяются между собой посредством оператора «.»
Функция mysql_connect() устанавливает соединение с сервером MySQL. Следующие значения по умолчанию установлены для отсутствующих параметров: server = 'localhost:3306'(имя сервера:3306 – номер порта), username = имя пользователя владельца процесса сервера и password=''. В качестве аргументов этой функции указываются имя базы данных и необязательный дескриптор соединения. Возвращает указатель на соединение с MySQL в случае успешного выполнения, или false – в противном случае. Соединение с сервером будет закрыто при завершении исполнения сценария, если до этого оно не будет закрыто с помощью функции mysql_close().
Символ «@» перед вызовом функции mysql_connect() блокирует вывод стандартного сообщения об ошибке соединения. В стандартном выводе о проблемах соединения указывается путь к БД, что может быть использовано посторонним для ознакомления с данными или их повреждения.
Функция mysql_select_db() выбирает указанную базу данных на сервере, на который ссылается переданный указатель. Если параметр указателя опущен, используется последнее открытое соединение. Если нет ни одного открытого соединения, функция попытается соединиться с сервером аналогично функции mysql_connect(), вызванной без параметров.
Функция die() выводит указанное в качестве аргумента сообщение и прекращает выполнение сценария.
В PHP предусмотрены некоторые преопределенные константы, такие как _ _FILE_ _ и _ _LINE_ _, возвращающие имя исполняющегося в данный момент PHP-файла и номер строки исполняемого кода соответственно. В файле db_login.php данные константы используются для локализации источника ошибки в программе.
Функция mysql_error() возвращает текст ошибки выполнения последней операции с MySQL или пустую строку в случае успешного выполнения обращения к БД.