Разработка и внедрение коммерческого сайта
Анализ существующего программного обеспечения и информационных технологий. Суть типов структур и проектирование архитектуры коммерческого сайта. Создание и внедрение базы данных и страниц интернет проекта. Главные элементы, входящие в состав ER-моделей.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 07.08.2018 |
Размер файла | 2,6 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Большинство более-менее сложных сайтов имеют комбинированную структуру. Линейная или иерархическая организация связей между страницами удобна и логична для навигации по сайту, но ссылки, встроенные в содержание, создают «паутину» ассоциативных связей, которая намного сложнее и гибче исходной структурной модели. Это вовсе не означает, что нелинейные модели поведения типичных посетителей освобождают от создания веб-сайтов с логичной и продуманной структурой.
Таким образом, представленный разработанный макет коммерческого сайта ООО «Навигатор» будет иметь гибридную структуру, как наиболее подходящую по типу.
2.2 Проектирование модели базы данных коммерческого сайта ООО "Навигатор"
Концептуальное (инфологическое) проектирование - анализ предметной области и ее описание. Этот этап осуществляется без ориентации на какие-либо конкретные программные или технические средства. Модель, или ER-диаграмма (Entity - Relation; в русском переводе - модель «объект - отношение» или «сущность - связь») предназначена для формализованного описания предметной области на этапе концептуального проектирования базы данных. Модель представляет собой графическое описание предметной области с использованием стандартизированного набора обозначений. На основе ER-модели по определенным правилам строится логическая модель для реализации в конкретной СУБД.
Логическое проектирование базы данных представляет собой процесс конструирования модели информационной структуры организации, выполняемый на основе конкретной модели данных, но без учета определенной СУБД и других физических ограничений.
Логическая модель описывает понятия предметной области, их взаимосвязь, а также ограничения на данные, налагаемые предметной областью.
Правила перевода из логической модели данных в физическую следующие:
· объекты становятся таблицами в физической базе данных;
· атрибуты становятся колонками (полями) в физической базе данных. Для каждого атрибута выбирается свой тип данных;
· уникальные идентификаторы становятся колонками, не допускающими значение NULL. В физической базе данных они называются первичными ключами (primary key).
Основная задача РНР-языка - интерпретация сценариев (программ) для генерации web-страниц, отсылаемых программе-клиенту (браузеру). Сценарий (скрипт) может содержать как РНР-, так и HTML-код. HTML-код пересылается в литеральном представлении, а РНР-код выполняется, и клиенту отсылается результат его работы. Таким образом, пользователь никогда не видит РНР-кода. Для полноценной работы с РНР необходимо кроме самого языка ещё и web-сервер. В качестве web-сервера будем использовать возможности коммерческого хостинга Sprinthost. Данный коммерческий сайт ООО «Навигатор» реализуем с использованием языка гипертекстовой разметки html, языка программирования php и СУБД MySQL. Главная часть функционирования сайта - работа с базой данных. Листинг базы данных пишется в Текстовом редакторе Блокнот и сохраняется под именем base. программный интернет коммерческий сайт
В базе данных отражается информация об определенной предметной области. Под предметной областью понимается часть реального мира, данные о которой должны отражаться в проектируемой БД. Информация, необходимая для описания предметной области, зависит от типа самой предметной области, а также от того, какую именно информацию об этой предметной области требуется хранить и обрабатывать [8].
В данной выпускной квалификационной работе проектируется коммерческий сайт ООО «Навигатор».
Для построения концептуальной модели выделяются наиболее существенные объекты, необходимые при работе магазина. В данном магазине продается телекоммуникационное оборудование, оборудование для глобального позиционирования и программное обеспечение, следовательно, одним из объектов для базы данных будет оборудование. Так как любой товар классифицируется по моделям, то следующим объектом базы данных будет непосредственно вид оборудования. Существование магазина невозможно без покупателей, следовательно, третьим объектом базы данных коммерческого сайта ООО «Навигатор» будет покупатель. Коммерческий сайт ООО «Навигатор» будет содержать в себе элементы интернет-магазина. Как и в любом интернет магазине покупатель сможет выбирать товар и добавлять его в корзину, после чего, все заказанные товары формируются в заказ, и отправляется администратору, значит, необходим еще объект - счет.
Сущности Интернет магазина женской одежды:
· Виды оборудования (vid)
· Товары (clothes)
· Покупатели (pocupatel)
· Заказ (schet) [1, стр.54]
Концептуальное (инфологическое) проектирование- анализ предметной области и ее описание. Этот этап осуществляется без ориентации на какие-либо конкретные программные или технические средства, модель, или ER-диаграмма (Entity - Relation; в русском переводе - модель «объект - отношение» или «сущность - связь») предназначена для формализованного описания предметной области на этапе концептуального проектирования базы данных. Модель представляет собой графическое описание предметной области с использованием стандартизированного набора обозначений. На основе ER-модели по определенным правилам строится логическая модель для реализации в конкретной СУБД.
Модель «сущность - связь» относится к семантическим моделям. ER-модели используется для повышения эффективности и точности проектирования баз данных. Основными понятиями ER-модели являются сущность, связь и атрибут.
Сущность - это реальный или представляемый объект, информация о котором должна сохраняться и быть доступна. В диаграммах ER-модели сущность представляется в виде прямоугольника, содержащего имя сущности. При этом имя сущности - это имя типа, а не некоторого конкретного экземпляра этого типа.
Связь - это графически изображаемая ассоциация, устанавливаемая между двумя сущностями. Эта ассоциация всегда является бинарной и может существовать между двумя разными сущностями или между сущностью и ей же самой (рекурсивная связь). [2, стр. 67]
Основные элементы, входящие в состав ER-моделей:
· сущности (объекты) предметной области;
· связи между объектами;
· атрибуты (свойства) объектов.
В любой связи выделяются два конца (в соответствии с существующей парой связываемых сущностей), на каждом из которых указывается степень конца связи (сколько экземпляров данной сущности связывается), обязательность связи. Связь представляется в виде ромба и имени связи внутри ромба.
Атрибутом сущности является любая деталь, которая служит для уточнения, идентификации, классификации, числовой характеристики или выражения состояния сущности. Имена атрибутов заносятся в овал, соединённый с сущностью линией. В результате анализа предметной области были определены следующие сущности:
· Виды оборудования (vid)
· Товары (clothes)
· Покупатели (pocupatel)
· Заказ (schet)
Данные сущности находятся в различных связях друг с другом.
Связи между объектами характеризуются типом связи и классом принадлежности. Основные типы связей- «один к одному» (1:1), «один ко многим» (1:?), «многие ко многим» (?:?). Класс принадлежности может быть обязательным (все объекты некоторого класса участвуют в связи с объектами некоторого другого класса) или необязательным (некоторые объекты класса могут не участвовать в связи с объектами другого класса).
Стоит теперь определить типы связей, существующих между выделенными сущностями. Тип связи представляет собой название связи, её координальность в этой связи. Результат анализа представлен в таблице 2.1.
Таблица 2.1 Типы связей между сущностями
Тип сущности |
Тип связи |
Тип сущности |
Координальность |
|
vid |
Принадлежит (belong) |
clothes |
||
pocupatel |
оформляет (bill) |
schet |
||
clothes |
принадлежит (belong) |
schet |
На следующем этапе проектирования базы данных нужно построить ER - диаграмму, отражающую основные виды сущностей и связи между ними как показано на рис. 2.6.
Рис. 2.6 ER - диаграмма концептуальной модели
Выделим атрибуты сущностей.
Для этого из таблицы 2.1 выберем возможные потенциальные ключи. Затем из них выберем первичные ключи. Следует отметить, что потенциальный ключ должен обладать следующими свойствами:
· уникальность - в каждом кортеже отношения его потенциальный ключ единственным образом идентифицирует это кортеж;
· неприводимость - никакое допустимое подмножество потенциального ключа не обладает свойством уникальности.
Таблица 2.2 Атрибуты сущностей и связей
Тип сущности |
Атрибут |
Домен |
Обязательность |
|
clothes |
clothes_id |
Целое |
Да |
|
nazvanie |
Символьный(100) |
Да |
||
opisanie |
Символьный(255) |
|||
strana |
Символьный(50) |
|||
cena |
Целое |
|||
vid_id |
Целое |
|||
images |
Символьный(20) |
|||
schet |
schet_id |
Целое |
Да |
|
data_oforml |
date |
|||
pokupatel_id |
Целое |
Да |
||
pocupatel |
pokupatel_id |
Целое |
Да |
|
fio |
Символьный(50) |
Да |
||
address |
Символьный(100) |
Да |
||
phone |
Символьный(20) |
Да |
||
|
Символьный(60) |
Да |
||
vid |
vid_id |
Целое |
Да |
|
nazvanie |
Символьный(50) |
Да |
Первичный ключ - это потенциальный ключ, вероятность потери уникальности которого мала по сравнению с другими потенциальными ключами. Также следует учесть то, что СУБД (системе управления базами данных) легче индексировать числовые, чем символьные ключи. На основании вышеизложенного, составим таблицу 1.3 первичных и альтернативных ключей.
Таблица 2.3 Первичные и альтернативные ключи
Сущность |
Первичный ключ |
Альтернативный ключ |
|
clothes |
clothes_id |
nazvanieclothes_id |
|
schet |
schet_id |
schet_id pokupatel_id data_oforml |
|
pokupatel |
pocupatel_id |
fio phone |
|
vid |
vid_id |
nazvanie |
Логическое проектирование базы данных представляет собой процесс конструирования модели информационной структуры организации, выполняемый на основе конкретной модели данных, но без учета определенной СУБД и других физических ограничений[9].
При построении логической модели будем использовать язык ER-диаграмм. В них сущности изображаются помеченными прямоугольниками, ассоциации - помеченными ромбами или шестиугольниками, атрибуты - помеченными овалами, а связи между ними - ненаправленными ребрами, над которыми может проставляться степень связи (1 или буква (символ), заменяющая слово "много") и необходимое пояснение.
Логическая модель описывает понятия предметной области, их взаимосвязь, а также ограничения на данные, налагаемые предметной областью. [1, стр. 59] Для коммерческого сайта ООО «Навигатор» рассмотрена предметная область, выделены сущности (вид оборудования (vid), наименование товара (clothes), покупатели (pokupatel), счёт (schet) и связи между ними), для сущностей выделены атрибуты. Разработана логическая модель будущей базы данных коммерческого сайта ООО «Навигатор». Так как реализация такой связи в СУБД реляционного типа затруднительна, нужно ввести новую сущность, назовём её schetpok (счёт покупателя) как показано на рис. 2.7.
Рис. 2.7 Введение новой сущности schetpok
Теперь нужно построить логическую модель при использовании языка ER-диаграмм. Логическая модель должна описывать понятия предметной области, их взаимосвязь, а также ограничения на данные, налагаемые предметной областью. ER-диаграмма логической модели базы данных приведена на рис. 2.8
Рис. 2.8 ER -диаграмма логической модели базы данных коммерческого сайта ООО «Навигатор»
Промежуточный вывод можно сделать о том, что описание исследуемой предметной области и построение концептуальной и логической модели базы данных является неотъемлемыми этапами проектирования базы данных. Только выполнив эти этапы, можно приступать к построению физической модели базы данных.
Следует теперь приступить к физическому проектированию базы данных. Любая база данных состоит из таблиц (отношений), поэтому теперь наша задача построить таблицы, основываясь на логической модели базы данных. Правила перевода из логической модели данных в физическую следующие:
· объекты становятся таблицами в физической базе данных
· атрибуты становятся колонками (полями) в физической базе данных. Для каждого атрибута выбирается свой тип данных.
· уникальные идентификаторы становятся колонками, не допускающими значение NULL. В физической базе данных они называются первичными ключами (primary key). [3, стр.74]
Схема данных изображена на рис. 2.9
Рис. 2.9 Схема таблиц для базы данных коммерческого сайта ООО «Навигатор»
Физическая модель данных строится на базе логической модели и описывает данные уже средствами конкретной СУБД. Отношения, разработанные на стадии логического моделирования, преобразуются в таблицы, атрибуты в столбцы, домены в типы данных, принятых в выбранной конкретной СУБД.
Физическая модель содержит описание структур данных и организации отдельных файлов, используемых для хранения данных в запоминающих устройствах. На этом уровне осуществляется взаимодействие СУБД с методами доступа операционной системы с целью размещения данных на запоминающих устройствах, создания индексов, извлечения данных и т.д. На внутреннем уровне хранится следующая информация: сведения о распределении дискового пространства для хранения данных и индексов; описание подробностей сохранения записей (с указанием реальных размеров сохраняемых элементов данных); сведения о размещении записей; сведения о сжатии данных и выбранных методах их шифрования. [1, стр. 63]
Таким образом, была спроектирована инфологическая модель базы данных коммерческого сайта ООО «Навигатор».
3. Разработка и внедрение базы данных и страниц коммерческого сайта ООО "Навигатор"
3.1 Разработка и внедрение базы данных коммерческого сайта ООО "Навигатор"
Для дальнейшей разработки базы данных и страниц коммерческого сайта ООО «Навигатор» требуется зарегистрировать домен и арендовать хостинг. По требованию фирмы они будут коммерческими, а не бесплатными или условно-бесплатными.
После консультаций с заказчиком было выбрано имя домена, и домен зарегистрирован при помощи регистратора доменных имен reg.ru. Также был выбран хостинг sprint.ru, как наиболее отвечающий всем требованиям заказчика и предоставляющий весь спектр услуг и технологий. Доменное имя зарегистрирована с учетом дальнейшего SEO продвижения - www.navigatory-samara.ru.
Далее приступаем к созданию базы данных коммерческого сайта ООО «Навигатор» с помощью инструмента для визуального проектирования баз данных MySQL Workbench от компании Oralce.
Внешний вид окна программы, раздел «Моделирование данных» выглядит так как показано на рис. 3.1.
Для того, чтобы открыть существующую модель надо нажать на ссылку: Open Existing EER Model, для создания новой модели - выбрать параметр: Create New EER Model, чтобы создать модель «сущность-связь» из существующей базы данных - нажать на параметр: Create EER Model From Existing Database, а для создания EER модели из SQL скрипта нужно выбрать: Create EER Model From SQL Script.
Рис. 3.1 Внешний вид окна программы Workbench, раздел «Моделирование данных»
Для создания новой модели в соответствие с ранее разработанной, воспользуемся ссылкой Create New EER Model, после нажатия на неё отобразится окно с параметрами как показано на рис. 3.2.
Рис. 3.2 Создания новой модели.
Для начала необходимо создать таблицы, для этого нажмём на кнопку Add Table, появится следующая форма как показано на рис. 3.3
Рис. 3.3 Создание таблиц
Сначала создадим таблицу users, которая будет хранить данные о пользователях информационной системы, в поле table Name впишем имя таблицы, в разделе формы Columns создадим поля таблицы:
· Первое поле id будет содержать уникальный номер пользователя, зададим ему свойства: Auto Increment, Not Null, Primary key и Unique, в разделе Data type выберем целочисленный тип integer.
· Второе поле fio, где будет хранится Ф.И.О. пользователя, установим полю свойства: Not Null, Primary key,, в разделе Data type выберем строковый тип VARCHAR и зададим количество символов в 255.
· Третье поле login, будет содержать логин пользователя, оно должно быть уникальным, как и поле id, поэтому установим ему свойство Unique и зададим количество символов в 255.
· Следующие поля: password содержащее пароль, e_mail содержащее адрес электронной почты и поле type содержащее тип пользователя будут без особых свойств, со строковым типом VARCHAR длинной в 255 символов, за исключением последнего поля type которому хватит с 45 символов.
После проделанных манипуляций форма с именем таблицы users будет выглядеть так как показано на рис. 3.4:
Рис. 3.4 Форма Users
На диаграмме появится таблица users c полями и индексами как показано на рис. 3.5
Рис. 3.5 Поля и индексы таблицы Users
Аналогичным способом создадим таблицу settings с настройками доступа к базе данных ИС, содержащую поля id, host для указания имени хоста (адреса сервера), db - имени базы данных, user и password с именем пользователя и паролем, для установки ИС на удалённый сервер.
Далее по уже известному методу создадим таблицу shops которая будет хранить данные о магазинах в полях: id типа integer - ключевое, ненулевое, уникальное с автоинкрементом, поле name хранящее название магазина, поле address - его физический адрес, поле tel - телефон магазина, site - интернет сайт магазина и поле email с электронным адресом магазина.
Модифицируем инфологическую модель. Затем создадим таблицу products хранящую данные о продукции магазина в полях: id типа integer - ключевое, ненулевое, уникальное с автоинкрементом, поле name хранящее название магазина, ключевое, ненулевое поле целочисленного типа shop_id хранящее номер магазина, поле type_id с информацией о номере товара из таблицы видов продукции. Поле brand - брэнд изготовителя длинной в 255 символов, поле model - с моделью товара, поле data - с данными и характеристиками товара типа Tinytext, поле img с полным адресом до изображения товара длинной в 255 символов, и поля price с ценой товара и warranty с информацией о сроках гарантии на товар длинной в 45 символов.
Созданные нами таблицы settings, shops и products выглядят следующим образом, как показано на рис. 3.6
Рис. 3.6 Поля таблиц
Далее нам понадобится таблица хранящая тип продуктов product_type, она состоит из уникального, ненулевого, ключевого поля id с автоинкрементом целочисленного типа, и уникального поля name длинной в 255 символов, которое содержит название вида продуктов.
Вид таблицы таков, как показано на рис. 3.7.
Рис. 3.7 Вид таблицы
Следующие две таблицы это orders и deliveries, первая содержит информацию о заказах клиентов, а последняя данные о доставке продукции.
Поля таблицы orders: id ключевое, ненулевое, уникальное поле целочисленного типа с автоинкрементом, поле shop_id содержащее номер магазина - ключевое, ненулевое целочисленного типа, поле product_id хранящее номер продукта - ключевое, ненулевое целочисленного типа, поле fio с номером пользователя совершившего заказ -- ключевое, ненулевое целочисленного типа, поле date c датой заказа - типа DATE, поле quantity с количеством заказанных товаров - целочисленного типа, поле tel с номером телефона заказчика - строкового типа длинной в 255 символов и поле confirm содержащее информацию о подтверждении заказа - логического типа.
Поля таблицы deliveries: order_id с номером заказа -- ключевое, ненулевое, уникальное поле целочисленного типа с автоинкрементом, поле поле fio с номером пользователя совершившего заказ -- ключевое, ненулевое целочисленного типа, поле address хранящее адрес доставки товара указанный клиентом - строкового типа длинной в 255 символов, поле time хранящее желаемое время доставки товара - строкового типа длинной в 255 символов, поле date с датой совершения заказа клиентом - типа DATE и поле логического типа confirm хранящее информацию о доставке товара.
Таблицы orders и deliveries выглядят так, как показано на рис. 3.8.
Рис. 3.8 Таблицы
Остальные таблицы, описанные при проектировании, создаем аналогично.
Создана база данных, состоящая из нескольких таблиц, теперь необходимо связать таблицы, уже созданы ключевые поля целочисленного типа, они и станут основой для связывания.
Для того чтобы связать две таблицы products и product_type, дважды щёлкаем левой кнопкой мыши на диаграмму с таблицей products и выбираем вкладку Foreign keys (внешние ключи), далее в поле Foreign key name вводим уникальное имя внешнего ключа, дважды щёлкаем по вкладке Referenced table и выбираем таблицу product_type, затем в форме, расположенной правее выбираем ссылающееся поле type_id и выбираем в всплывающем списке поле id как показано на рис. 3.9.
Рис. 3.9 Связь таблиц
Таким образом, оба поля таблицы оказываются связанны, затем нужно задать тип отношений связи между таблицами, откроем окно, кликнув на появившуюся связь между таблицами, и выберем вкладку Foreign Key и в разделе Cardinality выберем тип связи один ко многим, и закроем окно. На диаграмме отобразится связь таблиц, как показано на рис. 3.10.
Рис. 3.10 Связи между таблицами.
Аналогичным образом связываем все ключевые поля в таблицах, чтобы они были логически взаимосвязаны, далее нам необходимо убедится, что спроектированная база данных соответствует третьей нормальной форме.
Нормальная форма -- свойство отношения в реляционной модели данных, характеризующее его с точки зрения избыточности, которая потенциально может привести к логически ошибочным результатам выборки или изменения данных[9]. Нормальная форма определяется как совокупность требований, которым должно удовлетворять отношение.
В реляционной модели отношение всегда находится в первой нормальной форме по определению понятия отношение. Что же касается различных таблиц, то они могут не быть правильными представлениями отношений и, соответственно, могут не находиться в первой нормальной форме. Переменная отношения находится во второй нормальной форме тогда и только тогда, когда она находится в первой нормальной форме и каждый не ключевой атрибут неприводимо (функционально полно) зависит от её потенциального ключа. База данных будет находиться в третьей нормальной форме, если она приведена ко второй нормальной форме и каждый не ключевой столбец независим друг от друга.
Таким образом наша база находится в третьей нормальной форме, т.к. каждый не ключевой столбец независим друг от друга. Это наглядно видно на диаграмме нашей базы данных, которая показана на рис. 3.11.
Большинство таблиц находятся в отношении один-ко-многим, за исключением таблиц deliveries и orders находящихся в отношении одни-к-одному, т.к. доставлен, может быть только одни заказ, т.е. у одного заказа только одна доставка. Остальные связи наглядно указаны выше.
Теперь загрузим нашу базу данных на сервер. Для этого создадим новое подключение к базе данных, щёлкнув по ссылке New connection в стартовом окне программы.
Таким образом, была разработана база данных коммерческого сайта ООО «Навигатор» и размещена на хостинге.
Рис. 3.11 Диаграмма базы данных
3.2 Разработка и внедрение страниц коммерческого сайта ООО "Навигатор"
Приступим к созданию и размещению страниц коммерческого сайта ООО «Навигатор» на выбранном хостинге и домене. Страницы создаются и размещаются в соответствие с ранее разработанной архитектурой и соединяются запросами с базой данных.
Основная операция веб-сервера проиллюстрирована на рис. 3.12. Эта система состоит из двух объектов: веб-браузера и веб-сервера. Между ними должен существовать канал связи. Веб-браузер посылает запрос на сервер, сервер отсылает обратно ответ. Для сервера, отсылающего обычные статические страницы, такая архитектура подходит. Архитектура же сайта, который включает в себя базу данных, несколько сложнее.
Рис. 3.12 Операция веб-сервера
База данных, которые разработана ранее, наследует глобальную структуру баз данных, показанную на рис. 3.13 ниже.
Рис. 3.13 глобальная структура
Типичная транзакция базы данных состоит из этапов, обозначенных цифрами на рисунке.
Web-браузер пользователя отправляет HTTP-запрос определенной веб-страницы. Например, поиск в каталоге коммерческого сайта ООО «Навигатор» всех товаров, фирмы «Garmin», используя HTML-форму. Страница с результатами поиска будет называтся results.php.
Веб-сервер принимает запрос на results.php, получает файл и передает его механизму РНР на обработку.
Механизм РНР начинает синтаксический анализ сценария. В сценарии присутствует команда подключения к базе данных и выполнения запроса в ней (поиск товаров). РНР открывает соединение с сервером MySQL и отправляет необходимый запрос.
Сервер MySQL принимает запрос в базу данных, обрабатывает его, а затем отправляет результаты -- в данном случае, список товаров -- обратно в механизм РНР.
Механизм РНР завершает выполнение сценария, форматируя результаты запроса в виде HTML, после чего отправляет результаты в HTML-формате веб-серверу.
Веб-сервер пересылает HTML в браузер, с помощью которого пользователь просматривает список необходимых товаров.
Процесс этот, как правило, протекает вне зависимости от того, какой сценарный механизм и какой сервер баз данных используется. Зачастую программное обеспечение веб-сервера, механизм РНР и сервер баз данных находятся на одной машине. Правда, не менее часто сервер базы данных работает на другой машине. Это делается из соображений безопасности, увеличение объема или разделения потока. С точки зрения перспектив развития, в работе оба варианта одинаковы, однако в плане производительности второй вариант может оказаться более предпочтительным.
Опираясь на описанные ранее процессы напишем страницы коммерческого сайта ООО «Навигатор» в «Notepad++» и сразу разместим их на хостинге.
Создадим на хостинге папку Navigatory, перейдем в нее. Нажмем shift и f4 для создания файла, введем название index.php. Сохраним файл. Откроем файл index.php.
Программа в языке PhP начинается с символа <? и заканчивается символом ?> .
Напишем первую программу.
<?
echo 'Главная страница ООО Навигатор';
?>
Сохраним файл. Закроем файл.
Откроем Браузер. Напишем в адресной строке браузера, следующее:
http://navigatory-samara.ru/navigatory/
и увидим результат работы нашей программы. Надпись - главная страница ООО «Навигатор».
Приступим к глубокому программирования на PHP и работе с БД - Базой Данных MySQL:
· Откроем браузер. Введем в адресную строку http://navigatory-samara.ru/admin входим в панель управления хостинга;
· Находим на открывшейся странице ссылку http://navigatory-samara.ru/Tools/phpMyAdmin со строкой "Работа с базами данных". Нажимаем на ссылку. Откроется система управлениями базами данных phpMyAdmin.
· Находим строку «Database» Вводим название нашей базы данных;
· Вводим логин и пароль доступа к созданной ранее базе данных.
Все основные шаги мы проделали, подключили базу данных. Переходим к программированию.
Переходим в наш рабочий каталог(папку) navigator-samara.ru/navigator
Создадим в ней файл index.php
Заполним файл следующим кодом:
<?php
include 'bd.php';
#Создаём таблицу users
$query = "create table users (id int(2) primary key
auto_increment, name varchar(100), s_name varchar(20),discription varchar(1000) ,foto varchar(20))";
mysql_query($query, $link);
// Закрываем соединение
mysql_close($link)
?>
Сохраним файл.
И так у нас имеется файл index.php
разберем что в нем содержится.
знак <? - начало программы
include 'bd.php'; - includ (подключить) подключаем файл bd.php
Далее следует конструкция - для создания таблицы в БД - базе данных. Таблица будет называться users и содержит несколько полей, в соответствие с ранее разработанной моделью.
поле id (int 60 - означает что в поле может записаться 60 целых чисел. поле name (здесь записываются текстовые данные не более 100
символов. Далее все идет аналогично).
поле s_name
поле description
поле foto
$query = "create table users (id int(2) primary key
auto_increment, name varchar(100), s_name varchar(20),discription varchar(1000) ,foto varchar(20))";
Создадим следующий файл, к которому подключаемся из нашего первого index.php - файл bd.php
Заполним его следующем кодом
<?
####################################################
## подключаемся к базе данных #################
####################################################
# Данные для mysql сервера
$dbhost = "localhost"; // Хост
$dbuser = "root"; // Имя пользователя
$dbpassword = ""; // Пароль
$dbname = "system"; // Имя базы данных
#Подключаемся к mysql серверу
$link = mysql_connect($dbhost, $dbuser, $dbpassword);
#Выбираем нашу базу данных
mysql_select_db($dbname, $link);
?>
В файле bd.php мы подключаемся к нашей созданной базе данных system. Для этого указываем хост(сервер) к которому подключаемся. в данном случае localhost. Указываем имя пользователя и пароль. Имя пользователя у нас root, пароль же данный при регистрации. И последнее что надо указать это БД к которой подключаемся.
Запустим браузер. Введем в адресную строку укажем что запускаем наш файл main.php.
В меню Database слева, выберем нашу базу данных, под ней появится название таблицы users. Нажмем на users
Результат работы наших двух программ, это соединение страниц с базой данных, таблицы users с полями (id name s_name discription foto). Все поля нам будут нужны для внесения в них данных и вывода этих же данных в нашем каталоге товаров коммерческого сайта ООО «Навигатор».
Создание формы для заполнения базы данных. Создадим файл с именем main.php. Заполним его:
<form enctype="multipart/form-data" action=" main.php" method="post">
<br> Название товара : </br><br><input type=text name=name></br>
<br> Краткое описание:</br><br><input type=text name=s_name></br>
<br> Описание : </br><br><textarea cols=72 rows=5 type=text name=discription></textarea></br>
<br><input type="hidden" name="MAX_FILE_SIZE" value="30000000" />
Фотография: <input name="userfile" type="file" /></br>
<input type="submit" value="Send File" />
</form>
<?
echo "Имя - $_POST[name] ";
echo "Пароль - $_POST[s_name] ";
# проверка на существование имени и фамилии
# include -без этого код станет нечитабельным
?>
<?php
?>
Сохраним файл main.php и запустим его. Увидим форму для заполнения нашей базы данных. Введен пробные данные. Т.к. у нас интернет-магазин по продаже навигаторов, то соответственно и поля в форме для ввода информации о навигаторах у нас 3 поля:
· Название товара: (просто название отображаемое далее в магазине)
· Краткое описание: (Простое короткое описание товара)
· Описание: (полное описание) И форма для загрузки фотографии.
Загружаем фото самого товара.
Итак, посредством этой простой формы, запишем данные в базу данных в таблицу.
Создаем файл vid.php. Он выводит из базы данных, фотографию товара, ее название. А при нажатии на картину или название увеличивает картину до оригинального большого размера чтобы клиент мог полноценно посмотреть, оценить товар. Картинки же файл выводит изначально маленькими, для наглядности и удобства.
И так, создаем файл vid.php, и вписываем в него эту программу.
<?
скрипт вырезан автором
?>
Запишем файл vid.php
Запустим его http://navigatory-samara.ru/vid.php
Увидим, что программа вывела нам маленькие картинки с названием.
Теперь настроим вывод картинок с название слева на право по 5 картинок, сверху в низ. Следовательно, нам нужно доработать файл vid.php.
Создадим новый файл, назовем его file2.php.Создаем для наглядности и для дальнейшего сравнения его с файлом vid.php.
Создаем файл file2.phpВписываем в него программу, запишем файл. Выполним его.
Картинки выводятся по 5 штук в строку. К тому же у нас появилась строчка "Сделать заказ".
Сейчас же доделаем наш коммерческий сайт, до функционального состояния.
Создаем файл выводящий название товаров. Назовем файл file1.php. Впишем в него программу:
<?
############################################
###file1.php отвечает у нас за вывод фирм ##
############################################
include 'bd.php';
##reading from table
$query = "SELECT * FROM users ";
$result=mysql_query($query);
while($r=mysql_fetch_array($result)) {
$b = "$r[foto]";
##<strong></strong> изменим шрифт на толстый
echo "<strong><a href=4.php?var1=$b> $r[name] </a></strong><br>";
}
mysql_close($link);
?>
Запишем файл и запустим его перейдя по ссылке http:// navigatory-samara.ru/file1.php
И так у нас есть файл file1.php который выводит название товаров, названия являются ссылками на товары. Имеется файл file2.php - который выводит сами картинки товаров нужного нам размера.
Осталось создать file3.php, в котором будет описание интернет-магазина и подключить наши файлы в один - который и будет главный.
Создаем файл file3.php. Вписываем в него программу:
<?
echo "<strong> Наш магазин выполнит любой заказ, и доставит его по указанному Вами адресу. </strong>";
?>
Сохраним файл. Запускать его не будем, из кода видно, что н отобразит на экране просто введеный текст.
Главный этап. Сборка скриптов коммерческого сайта ООО «Навигатор». Создаем файл index.php и вписываем в него программу.
<style type="text/css">
<!--
body {
background-image: url();
}
-->
</style><p align="center"><img src="img/top.jpg" width="100%" height="170" /></p>
<table width="100%" height="100" border="0">
<tr>
<td width="18%" valign="top"><? include 'file1.php' ?></td>
<td width="67%" align="center" valign="top"><? include 'file2.php' ?></td>
<td width="15%" valign="top"><? include 'file3.php' ?></td>
</tr>
</table>
<p align="center"> </p>
<p align="center"> </p>
<p align="center"><img src="img/down.jpg" width="969" height="93" /></p>
<p> </p>
<p> </p>
запишем файл.
Оформление заказа.
Создаем Файл 5.php
Вписываем в него программу
<?
ECHO "$_GET[var2] ";
?>
<?
#нарисуем форму для заказа. Укажем в ней телефон, имя, адрес #доставки.
?>
<form method=post>
Имя : <input type=text name=name>
Телефон : <input type=text name=pass>
<p>Адрес доставки заказа: </p>
<p><textarea cols=72 rows=5 name=text></textarea>
</p>
<input type=submit name=send value=Заказать>
</form>
<?
### телефон. имя. адрес. должны записаться в файл.
### в других версиях магазина, будем отправлять данные на eмейл
### заказчика и наш емейл. так же вносить данные в базу данных.
### В этом варианте - вывод данных просто в файл.
# проверим? заполнена ли наша форма
if ($_POST == TRUE) { # 1я открывающая кавычка цикла
$file="order.txt";
$file_open=fopen($file,"a+") or die("".$file);
fwrite($file_open,"$_POST[name] \n");
fwrite($file_open,"$_POST[pass] \n");
fwrite($file_open,"$_POST[text] \n");
fclose($file_open);
} # 2я закрывающая кавычка цикла
# версия коммерческого сайта ООО «Навигатор» работает.
?>
Аналогично в соответствии с архитектурой создаем остальные файлы страниц и подключаем скрипты, предоставляемые хостингом.
Таким образом создан коммерческий сайт ООО «Навигатор» с элементами интернет магазина.
Заключение
Целью выпускной квалификационной работы являлось разработать внедрить коммерческий сайт ООО «Навигатор». Цель достигнута полностью сайт создан и размещен по адресу http://www.navigatory-samara.ru. В процессе выполнения выпускной квалификационной работы и в соответствие с техническим заданием были выполнены следующие задачи: проанализирована предметная область - деятельность фирмы ООО "Навигатор" и существующие решения по теме работы; рассмотрено существующее программное обеспечение и информационные технологии по теме работы; разработана модель базы данных и архитектура коммерческого сайта ООО "Навигатор"; созданы и внедрены страницы и база данных фирмы ООО "Навигатор"; проанализирован процесс разработки и внедрения коммерческого сайта фирмы ООО "Навигатор".
Список использованных источников
1. Дмитриева, М. JavaScript [Текст] / М.Дмитриева. - Изд.: БХВ-Петербург, 2014г.
2. Ломов, А. Apache, Perl, MySQL. Практика создания динамических сайтов [Текст] / А. Ломов. - Изд.: БХВ-Петербург, 2014 г.
3. Прохоренок, Н. HTML, JavaScript, PHP и MySQL. Джентельменский набор Web-мастера [Текст] / Н. Прохоренок. - Изд.: БХВ-Петербург, 2011 г.
4. Мейер, Э.А. CSS - каскадные таблицы стилей. Подробное руководство.3-е издание [Текст] / Э.А. Мейер. - Изд.: Символ, Символ-Плюс, 2010г.
5. Кузовлев, В.И. Методические указания по выполнению выпускной работы бакалавра по специальности "Информатика и вычислительная техника" для студентов кафедры "Системы обработки информации и управления" [Текст] /В.И.Кузовлев, Ю.Н. Филиппович - М.: МГТУ им Н.Э. Баумана, 2010 г.
6. Григорьев, Ю.А. Банки данных: Учеб. для вузов. [Текст] /Ю.А. Григорьев,Г.И. Ревунков - М.: Изд-во МГТУ им. Н.Э. Баумана, 2012
7. Постников, В.М. Основы эксплуатации автоматизированных систем обработки информации и управления. Краткий курс: учеб. пособие [Текст] /В.М. Постников - М.: Издательство МГТУ им. Н.Э.Баумана, 2013. - 177 с.
8. Уилсон, Р., Планирование стратегии интернет-маркетинга [Текст] / Р. Уилсон. - Изд.: Издательский дом Гребенникова, 2013г.
9. Успенский, И., Интернет как инструмент маркетинга [Текст] / И. Успенский. - Изд.: BHV - Санкт - Петербург, 2009г.
10. Алексунин, В. Электронная коммерция и маркетинг в Интернете [Текст] / В. Алексунин, В. Родигина. - Изд.: Дашков и Ко, 2009 г.
11. Постников, В.М. Методы принятия решений в системах организационного управления: учеб. пособие [Текст] / В.М. Постников, В.М.Черненький - М.: Издательство МГТУ им. Н.Э.Баумана, 2014. - 205 с.
12. Вонг, Т.101 способ поднять вашу сетевую торговлю. Как облегчить Интернет-маркетинг [Текст] / Т. Вонг. - Изд.: Диля, 2014г.
13. Кеглер Т. Реклама и маркетинг в Интернете [Текст] / Т. Кеглер, П. Доулин, Б. Тейлор, Д. Тестерман. - Изд.: Альпина Паблишер, 2013г.
14. Холмогоров, В., Интернет-маркетинг. Краткий курс [Текст]/ В. Холмогоров. - Изд.: Питер, 2011г.
15. Холмогоров, В., Интернет-маркетинг. Краткий курс. Второе издание [Текст] / В. Холмогоров. - Изд.: Питер, 2012г.
16. Костяев, Р., Бизнес в Интернете: финансы, маркетинг, планирование [Текст] / Р.Костяев. - Изд.: BHV - Санкт - Петербург, 2012г.
17. Фэй, М.Д. Реклама, маркетинг, дизайн в Интернете [Текст] / М.Д.Фэй - Изд.: ChannelTradingLtd, 2009г.
18. Пирс, К. Освой самостоятельно Perl за 24 часа [Текст] / К. Пирс. - Изд.: Вильямс, 2011г.
19. Матросов, А. Самоучитель Perl, [Текст] / А.Матросов, М.П. Чаунин. - Изд.: BHV, 2013г.
20. Шварц, Р.Л., Изучаем Perl[Текст] / Р. Л. Шварц. - Изд.; BHV - Санкт - Петербург, 2012г.
21. Кристиансен, Т. Perl. Сборник рецептов. Для профессионалов [Текст] / Т. Кристиансен, Н.Торкингтон. - Изд.: Питер, Санкт-Петербург, 2014г.
22. Дунаев, В., JavaScript - самоучитель [Текст] / В.Дунаев. - Изд.: Питер, 2015г.
23. Флэнаган, Д., JavaScript - подробное руководство [Текст] / Д. Флэнаган. - Изд.: Символ, 2008г.
24. Соколов, В. JavaScript в примерах, типовых решениях и задачах [Текст] / В. Соколов, С. Соколов. - Изд.: Вильямс, 2009 г.
25. Шмит, К. CSS. Рецепты программирования [Текст] /К. Шмит. - Изд.: БХВ-Петербург, 2013 г.
26. Холмогоров, В. Интернет-маркетинг [Текст] / В. Холмогоров. М: изд. Дом «Питер», 2006.
Приложение
Главная страница коммерческого сайта общества с ограниченной ответственностью «Навигатор»
Код главной страницы коммерческого сайта общества с ограниченной ответственностью ««Навигатор»
Презентационный материал
Размещено на Allbest.ru
Подобные документы
Разработка, внедрение, адаптация, сопровождение программного обеспечения и информационных ресурсов. Наладка и обслуживание оборудования отраслевой направленности. Наполнение базы данных интернет-магазина. Публикация и оптимизация сайта в сети интернет.
отчет по практике [2,7 M], добавлен 18.05.2015Проектирование web-сайта. Пользовательские персонажи, детальная концепция сайта. Разработка скелетной схемы страниц, информационной архитектуры. Создание прототипа web-сайта. Выбор среды разработки. CMS системы и их анализ. Стадии проектирования сайта.
курсовая работа [346,7 K], добавлен 18.09.2016Особенности создания сайта интернет-магазина для частных лиц и организаций. Анализ финансовой и технико-экономической деятельности фирмы. Создание информационной модели сайта, ее базовые элементы. Выбор программного и аппаратного обеспечения сайта.
дипломная работа [1,5 M], добавлен 08.12.2013Создание современного конкурентоспособного сайта компании. Выбор базовой системы программного обеспечения. Описание работы сайта и пользовательского интерфейса. Расчет экономической эффективности проекта. Изучение мероприятий по безопасной эксплуатации.
курсовая работа [3,7 M], добавлен 20.05.2013Характеристика структуры, программного обеспечения и основных бизнес–процессов ЗАГСа. Разработка базы данных и структуры сайта для молодоженов. Управление аккаунтом пользователя, описание страниц сайта. Расчёт экономических затрат на создание сайта.
дипломная работа [448,5 K], добавлен 14.01.2013Особенности создания страниц на языке APS.NET, создание и формы обращение к базам данных. Интерфейс автоматического вывода определнного столбца базы данных в элементы управления. Структура базы данных, принцип работы страниц сайта, настройка приложения.
курсовая работа [387,3 K], добавлен 02.03.2010История развития и характеристика всемирной компьютерной сети Интернет. Особенности систем управления контентом и специализированного ПО. Основные этапы создания коммерческого сайта в среде разработки Joomla. Финансово-экономическое обоснование проекта.
дипломная работа [4,2 M], добавлен 27.06.2012Технологии создания web-страниц. Появление Active Server Pages. Разработка динамического web-сайта на asp.net. Создание дизайна и каркаса сайта с использованием стандартных HTML таблиц. Проектирование базы данных на основе ado.net и подключение к ней.
контрольная работа [2,4 M], добавлен 24.05.2019Анализ предметной области. Характеристика информационной системы. Обоснование выбора среды разработки. Проектирование, разработка, тестирование и внедрение сайта образовательной организации. Содержания школьного сайта, его организационной структуры.
дипломная работа [3,4 M], добавлен 15.02.2017Проектирование книжного интернет-магазина для реализации книжной продукции через Интернет. Анализ и обоснование выбора языков программирования и средств разработки сайта. Затраты внедрение сайта, его программное обеспечение, тестирование и отладка.
дипломная работа [2,1 M], добавлен 06.06.2013