Пояснительная записка (1206274), страница 5
Текст из файла (страница 5)
Поле Номер заказа (order_id) – является первичным ключом таблицы.
Поле Номер клиента (customer_id) – является внешним ключом таблицы, а также первичным ключом таблицы Клиенты (customer_id).
Поле Номер доставки (dostavka_id) – является внешним ключом таблицы, а также первичным ключом таблицы Доставка (dostavka_id).
Таблица 3.4 – Orders
| Название | Код | Тип |
| Номер заказа | order_id | Числовой (int) |
| Номер клиента | customer_id | Числовой (int) |
| Дата заказа | date | Дата/Время (datetime) |
| Номер доставки | dostavka_id | Числовой (tynyint) |
| Статус заказа | status | Перечисление (enum) |
| Примечание | prim | Текстовый (text) |
Таблица Характеристика. Данная таблица является справочником, содержащая в себе виды доставки (таблица 3.5).
Поле Номер доставки (Id) – является первичным ключом таблицы.
Таблица 3.5 – Dostavka
| Название | Код | Тип |
| Номер доставки | dostavka_id | Числовой (tinyint) |
| Название доставки | name | Текстовый (varchar) |
Таблица Клиенты. Данная таблица содержит в себе список клиентов, зарегистрированных пользователей и сделавших заказ гостей (таблица 3.6).
Поле Номер клиента (customer_id) – является первичным ключом таблицы.
Поле Номер роли (id_role) – является внешним ключом таблицы, а также первичный ключом таблицы Роли (roles).
Таблица 3.6 – Customers
| Название | Код | Тип |
| Номер клиента | customer_id | Числовой (int) |
| ФИО | name | Текстовый (varchar) |
| | | Текстовый (varchar) |
| Номер телефона | phone | Текстовый (varchar) |
| Адрес | address | Текстовый (varchar) |
| Логин | login | Текстовый (varchar) |
| Пароль | password | Текстовый (varchar) |
| Номер роли | id_role | Числовой (tinyint) |
Таблица Роли. Данная таблица содержит в себе список предоставляемых ролей (таблица 3.7)
Поле Номер роли (id_role) – является первичным ключом таблицы.
Таблица 3.7 – Roles
| Название | Код | Тип |
| Номер роли | id_role | Числовой (tinyint) |
| Название | name_role | Текстовый (varchar) |
Таблица Связи. Данная таблица является справочником и содержит в себе разную полезную информацию для клиентов (таблица 3.8).
Поле Номер связи (link_id) – является первичным ключом таблицы.
Поле Номер информера (id_informer) – является внешним ключом таблицы, а также первичный ключом таблицы Информационные блоки (Informers).
Таблица 3.8 – Links
| Название | Код | Тип |
| Номер связи | link_id | Числовой (tinyint) |
| Название | link_name | Текстовый (varchar) |
| Номер информера | parent_informer | Числовой (tinyint) |
| Номер позиции связи | links_position | Числовой (tinyint) |
| Ключевые слова | keywords | Текстовый (varchar) |
| Описание | description | Текстовый (varchar) |
| Текст | text | Текстовый (text) |
Таблица Информационные блоки. Данная таблица содержит в себе список информационных блоков (таблица 3.9).
Поле Номер информера (informer_id) – является первичным ключом таблицы.
Таблица 3.9 – Informers
| Название | Код | Тип |
| Номер информера | informer_id | Числовой (tinyint) |
| Название | informer_name | Текстовый (varchar) |
| Позиция информера | informer_position | Числовой (tinyint) |
Таблица Новости. Данная таблица является справочником и содержит в себе список новостей (таблица 3.10)
Поле Номер новости (news_id) – является первичным ключом таблицы.
Таблица 3.10 – News
| Название | Код | Тип |
| Номер новостей | news_id | Числовой (int) |
| Заголовки новостей | title | Текстовый (varchar) |
Окончание таблицы 3.10
| Название | Код | Тип |
| Ключевые слова | keywords | Текстовый (varchar) |
| Описание | description | Текстовый (varchar) |
| Описание новостей | anons | Текстовый (text) |
| Текст | text | Текстовый (text) |
| Дата | date | Дата (date) |
Таблица Страницы. Данная таблица является справочником и содержит в себе список страниц и информацию о текстах находящиеся в них. (таблица 3.11)
Поле Номер страницы (page_id) – является первичным ключом таблицы.
Таблица 3.11 – Pages
| Название | Код | Тип |
| Номер страниц | page_id | Числовой (tinyint) |
| Заголовок | title | Текстовый (varchar) |
| Ключевые слова | keywords | Текстовый (varchar) |
| Описание | description | Текстовый (varchar) |
| Позиция | position | Числовой (tinyint) |
| Текст | text | Текстовый (text) |
На рисунке 3.1 показана полная схема базы данных разрабатываемого интернет-магазина. На ней изображенны таблицы базы данных и связи между ними. Все таблицы риведенны к третьей нормальной форме. База данных была разработанна в СУБД MySQL.
Рисунок 3.1 – Схема базы данных
4 Практическая часть
4.1 Выбор и обоснование технологии проектирования
Объектная Модель Документа (DOM) – это программный интерфейс (API) для HTML и XML документов. DOM предоставляет структурированное представление документа и определяет то, как эта структура может быть доступна из программ, которые могут изменять содержимое, стиль и структуру документа. Представление DOM состоит из структурированной группы узлов и объектов, которые имеют свойства и методы. По существу DOM соединяет веб-страницу с языками описания сценариев либо языками программирования.
Веб-страница – это документ. Документ может быть представлен как в окне браузера, так и в самом HTML-коде. В любом случае, это один и тот же документ. DOM предоставляет другой способ представления, хранения и управления этого документа. DOM полностью поддерживает объектно-ориентированное представление веб-страницы, делая возможным её изменение при помощи языка описания сценариев наподобие JavaScript.
Стандарты W3C DOM и WHATWG DOM формируют основы DOM, реализованные в большинстве современных браузеров. Многие браузеры предлагают расширения за пределами данного стандарта, поэтому необходимо проверять работоспособность тех или иных возможностей DOM для каждого конкретного браузера.
Следует заметить, что DOM может применяться не только в веб-страницах, но и к любым других документам. В частности, она может использоваться с любыми словарями XML, причем одним из таких словарей является HTML, а точнее, XHTML.
DOM является развивающимся стандартом и разбит на три уровня. Первый уровень является первой версией стандарта и пока что единственной законченной. Он состоит из двух разделов: первый является ядром и определяет принципы манипуляции со структурой документа (генерация и навигация), а второй посвящен представлению в DOM элементов HTML, определяемых одноименными тегами.
Второй и третий уровни описывают модель событий, дополняют таблицы стилей, проходы по структуре.
DOM документ представляется в виде древовидной структуры являющейся одной из наиболее употребительных структур в программировании. Это обеспечивает унифицированный способ навигации по документу.
В модели DOM к элементу можно обратиться непосредственно по его идентификатору id, воспользовавшись методом getElementById объекта Document.
Для получения коллекции всех элементов, соответствующих какому-либо тегу, используется метод объекта Document – getElementsByTagName. Например, var a = document.getElementsByTagName("TD") присвоит переменной a коллекцию всех элементов <td>. Обратите внимание, что имя элемента следует писать прописными буквами ("TD"). Рассмотрим пример использования метода getElementsByTagName.
Чтобы воспользоваться преимуществом древовидной структуры, принятой в DOM для представления документа, следует использовать навигационные атрибуты.
4.2 Выбор и обоснование средств разработки
Выбирая инструментальное средство разработки, я, прежде всего, принял во внимание все имеющиеся в наличии ресурсы и требования к разрабатываемой системе.
Проанализировав, я пришел к выводу, что наиболее надежными средствами будут:
PHP
phpMyAdmin – веб-приложение с открытым кодом, написанное на языке PHP и представляющее собой веб-интерфейс для администрирования СУБД MySQL. PHPMyAdmin позволяет через браузер и не только осуществлять администрирование сервера MySQL, запускать команды SQL и просматривать содержимое таблиц и баз данных. Приложение пользуется большой популярностью у веб-разработчиков, так как позволяет управлять СУБД MySQL без непосредственного ввода SQL команд, предоставляя дружественный интерфейс.
На сегодняшний день PHPMyAdmin широко применяется на практике. Последнее связано с тем, что разработчики интенсивно развивают свой продукт, учитывая все нововведения СУБД MySQL. Подавляющее большинство российских провайдеров используют это приложение в качестве панели управления для того, чтобы предоставить своим клиентам возможность администрирования выделенных им баз данных.
Приложение распространяется под лицензией GNU General Public License и поэтому многие другие разработчики интегрируют его в свои разработки, например XAMPP, Denwer, AppServ, Open Server.














