Добавлен: 01.04.2023
Просмотров: 1001
Скачиваний: 27
Пользователь взаимодействует с Microsoft Access и разрабатывает приложение базы данных, используя ряд объектов.
СУБД MySQL - свободная система управления базами данных. MySQL является собственностью компании Oracle Corporation, получившей ее вместе с поглощенной Sun Microsystems, которая осуществляет разработку и поддержку приложения. Распространяется под GNU General Public License и под собственной коммерческой лицензией, на выбор. Кроме этого разработчики создают функциональность по заказу лицензионных пользователей, именно благодаря такому заказу почти в самых первых версиях появился механизм репликации.
Эта система управления базами данных с открытым кодом была создана как альтернатива коммерческим системам. MySQL с самого начала была очень похожей на mSQL, однако со временем она все расширялась и сейчас MySQL - одна из самых распространенных систем управления базами данных. Она используется, в первую очередь, для создания динамических веб-страниц, поскольку имеет прекрасную поддержку со стороны различных языков программирования.
MySQL является решением для малых и средних приложений. Обычно MySQL используется в качестве сервера, к которому обращаются локальные или удаленные клиенты, однако в дистрибутив входит библиотека внутреннего сервера, позволяющая включать MySQL в автономных программ. Исходные коды сервера компилируются на многих платформах. Наиболее полно возможности сервера проявляются в UNИХ - системах, где есть поддержка багатониттевости, что повышает производительность системы в целом.
Гибкость СУБД MySQL обеспечивается поддержкой большого количества типов таблиц: пользователи могут выбрать как таблицы типа MyISAM, поддерживающие полнотекстовый поиск, так и таблицы InnoDB, поддерживающие транзакции на уровне отдельных записей. Более того, СУБД MySQL поставляется со специальным типом таблиц EXAMPLE, демонстрирующим принципы создания новых типов таблиц. Благодаря открытой архитектуре и GPL - лицензированию, в СУБД MySQL постоянно появляются новые типы таблиц. MySQL характеризуется большой скоростью, устойчивостью и простотой использования. Для данного проекта была выбрана СУБД MySQL.
1.5 Обоснование выбора ПО сервера
Денвер (от сокр. Д.н.w.р или ДНВР — джентльменский набор Web-разработчика) — набор дистрибутивов (локальный сервер WAMP) и программная оболочка, предназначенные для создания и отладки сайтов (веб-приложений, прочего динамического содержимого интернет-страниц) на локальном ПК (без необходимости подключения к сети Интернет) под управлением ОС Windows.
Сразу после установки доступен полностью работающий веб-сервер Apache, работающий на локальном компьютере, на котором может работать неограниченное количество сайтов, что очень эффективно для разработки и отладки сценариев PHP без загрузки его файлов на удаленный сервер.
Третья версия поддерживает работу со съемного флеш-накопителя.
Особенностью, отличающей Denwer от других WAMP-дистрибутивов, является автоматическая правка системного файла hosts, являющегося локальным аналогом DNS-сервера, что позволяет обращаться к локальным сайтам, работающим под управлением Денвера, по именам, совпадающим с именем папки, расположенной в каталоге home Денвера.
Apache - это полнофункциональный, расширяемый веб-сервер, полностью поддерживающий протокол HTTP/1.1 и распространяющийся с открытым исходным кодом. Сервер может работать практически на всех распространенных платформах. Существуют готовые исполняемые файлы сервера для Windows NT, Windows 9x, OS/2, Netware 5.x и нескольких UNIX-систем. При этом он очень прост в установке и конфигурации.
Apache настраивается с помощью текстовых конфигурационных файлов. Основные параметры уже настроены "по умолчанию" и будут работать в большинстве случаев. Немаловажным преимуществом является то, что создатели активно общаются с пользователями и реагируют на все сообщения об ошибках.
Самая простая функция, которую может выполнять Apache – стоять на сервере и обслуживать обычный HTML-сайт. При получении запроса на определенную страницу сервер отправляет в ее ответ браузеру. Набираете адрес, открывается страница — все просто.
С помощью сервера Apache можно производить простую аутентификацию. С помощью штатных средств сервера Apache вы можете разграничить доступ к определенным страницам сайта для разных пользователей. Это нужно, например, для того чтобы сделать администраторский интерфейс к сайту. Для этого используются файлы .htaccess и .htpasswd, а также модули mod_auth и mod_access. Пользователи могут быть разбиты на группы, и для каждой из них можно назначить свои права доступа.
Сервер Apache поддерживает работу с технологией SSI для разделения дизайна и функциональной части сайта, а также для упрощения изменения статических объектов существует технология SSI*. Она позволяет вам поместить всю повторяющуюся информацию в один файл (например, top.inc), а затем вставлять в страницы ссылку на нее. Затем, если понадобится изменить несколько строк в этой информации, то придется поменять их только в одном файле. Сервер Apache поддерживает эту технологию и позволяет использовать серверные включения в полном объеме.
1.6 Схема работы сайта
Принцип работы заключается в следующем: создается HTML-каркас сайта и в определенные места каркаса (например в область основного содержимого) посредством PHP-скриптов из базы данных выводится информация, которая и формирует контент сайта.
Работа сайта происходит по следующей схеме:
- пользователь сделал запрос;
- серверный скрипт обрабатывает запрос;
- контроллеры являются связующим звеном между html-разметкой и "моделью", где модель у нас db.php;
- сохраняет результат в базе данных;
- серверный скрипт отправляет данные назад пользователю.
Рисунок 1.1 – Схема работы сайта
Рисунок 1.1 демонстрирует схему работы практически любого сайта. Такую схему работы ещё называют MVC. Шаблон проектирования MVC предполагает разделение данных приложения, пользовательского интерфейса и управляющей логики на три отдельных компонента: модель, представление и контроллер – таким образом, что модификация каждого компонента может осуществляться независимо.
2 РАЗРАБОТКА СТРУКТУРЫ ПОСТРОЕНИЯ
2.1 Построение структуры базы данных
Для успешной работы Интернет сайта первым делом необходимо разработать структуру базы данных, для упорядочивания и систематизации всех данных. БД должна быть полной, информация в ней не должна быть избыточной, должна соответствовать всем правилам нормализации. Так же БД должна обеспечить своевременное обновление. Так же система обновления БД должна быть удобной, быстрой, не требующей особых усилий.
Для сайта книжного интернет-магазина была разработана БД, имеющая таблицы books, category, basket, checkout, users. В первой таблице размещается информация о названии, авторе, содержании, цене и обложки книги books(id, name, autor, description, short_description, image, cost), тип данных полей int, varchar(255), text, прочие характеристики остались не тронутыми. Вторая таблица создана для осуществления сортировки по жанрам. Третья таблица содержит id книги и пользователя, для реализации корзины. Следующая таблица создана для оформления заказа, и соответственно users – содержит id, логин и пароль зарегистрированных пользователей.
В результате получили БД следующего вида:
books(id, name, author, description, image, cost, short_description,
cat_id, slag);
category(id, name, slag);
users (id, login, pass);
basket (book_id, user_id);
checkout (book_id, user_id, date).
2.2 Анализ архитектуры сайта
Архитектура сайта – систематизация информации и навигация по ней с целью помочь посетителям легко находить нужные им данные[5].
Рисунок 2.1 – Архитектура сайта-органайзера
Грамотно построенная архитектура обеспечивает быструю навигацию по сайту для пользователей.
Архитектура сайта должна быть проста и интуитивно удобна. И состоит из клиентской части и программной части.
Программная часть архитектуры рассматривается как взаимосвязь операционной и серверной части. В операционной части рассматривается среда разработки интернет магазина. Это Apache, который обрабатывает запросы и управляет работой сервера. Серверная часть содержит в себе размещение сайта на локальном хосте с соответствующими технологиями.
С ростом интернета широкое распространение получили веб- интерфейсы позволяющие взаимодействовать с различными программами через браузер. Веб-интерфейсы удобны тем, что дают возможность вести совместную работу сотрудникам, не находящимся в одном офисе (например, веб-интерфейсы часто используются для заполнения различных баз данных или публикации материалов в интернет – СМИ).
Веб-интерфе́йс — это совокупность средств, при помощи которых пользователь взаимодействует с веб-сайтом или любым другим приложением через браузер. Веб-интерфейсы получили широкое распространение в связи с ростом популярности всемирной паутины и соответственно — повсеместного распространения веб-браузеров. Одним из основных требований к веб-интерфейсам является их одинаковый внешний вид и одинаковая функциональность при работе в различных браузерах. Интерфейс пользователя - элементы и компоненты программы, которые способны оказывать влияние на взаимодействие пользователя с программным обеспечением. В том числе:
- средства отображения информации, отображаемая информация, форматы и коды;
- командные режимы, язык пользователь-интерфейс;
- устройства и технологии ввода данных;
-диалоги, взаимодействие и транзакции между пользователем и компьютером;
- обратная связь с пользователем;
- поддержка принятия решений в конкретной предметной области;
- порядок использования программы и документация на нее.
Одно из главных правил чем проще, тем лучше. Это вовсе не значит, что должен быть только текст и контактная информация, но на сайте не должно быть бесполезной информации, шрифт должен легко читаться. Графические элементы должны быть чёткими, выразительными и быстро загружаться.
Человеческий глаз просматривает страницы сайта сверху вниз. Наибольшее внимание сосредотачивается на верхней левой части страницы. Поэтому в верхней части страницы сайта, как правило, размещается наиболее важная информация: название фирмы, логотип, само название сайта и т.д.
Чем проще выполнена верхняя часть страницы, тем легче запомнить название сайта и саму фирму.
Далее представлены скриншоты страниц:
Рисунок 2.3 – Шапка сайта
Рисунок 2.4 – Шапка сайта при осуществлённом входе
Рисунок 2.5 – Про сайт
При входе на сайт мы видим главную страницу. С главной страницы мы можем перейти на страницу регистрации (2.5). Мы видим шапку, в которой находится логотип сайта и ссылки на другие страницы. Также есть приветствие пользователя с небольшим описанием деятельности сайта.
Возле каждой книги имеются кнопочки позволяющие просмотреть полное описание книги либо купить её.
В случае выбора «детально» (2.6) сайт открывает страницу с просмотром книги. На ней присутствуют полное описание, обложка, цена, название книги и автор. Если же нажать «купить» книга заносится в корзину (2.7).
Рисунок 2.6 – Пример просмотра книги
Рисунок 2.7 – корзина
Рисунок 2.8 – Поиск
Рисунок 2.9 – Страница авторизации
Рисунок 2.10 – Регистрация пользователя
Для покупки книги, пользователю необходимо зарегистрироватся. Рисунок 2.10 демонстрирует пример неудачной регистрации. При удачном входе на сайт, шапка страницы преобразится (2.4). Как можно заметить, для осуществления покупок создана «Корзина», в неё пользователь добавляет все желаемые для покупки товары после чего может заказать их одним нажатием (2.7).