Разработка и внедрение интернет-магазина коньков

Автор работы: Пользователь скрыл имя, 09 Октября 2011 в 16:19, курсовая работа

Описание

Цель курсовой работы: создать прототип интернет-магазина коньков.
Задачами данной курсовой работы являются:
1) проектирование и создание базы данных в СУБД MYSQL для интернет-магазина коньков.
2) разработка Web интерфейса сайта на языке программирования PHP, который будет динамически создавать страницы и работать с созданной базой данных.
3) расчёт экономической эффективности внедрения интернет-магазина коньков.

Содержание

ВВЕДЕНИЕ 5
1 ПРОЕКТИРОВАНИЕ БАЗЫ ДАННЫХ РЫНКА КОНЬКОВ 6
1.1 ОПИСАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ РЫНКА КОНЬКОВ 6
1.2 ПОСТРОЕНИЕ КОНЦЕПТУАЛЬНОЙ МОДЕЛИ БАЗЫ ДАННЫХ РЫНКА КОНЬКОВ 7
1.3 ПОСТРОЕНИЕ ЛОГИЧЕСКОЙ МОДЕЛИ БАЗЫ ДАННЫХ РЫНКА КОНЬКОВ 10
2 РЕАЛИЗАЦИЯ МОДЕЛИ БАЗЫ ДАННЫХ В ИНТЕРАКТИВНОЙ СРЕДЕ ИНТЕРНЕТ 12
2.1 ПОСТРОЕНИЕ ФИЗИЧЕСКОЙ МОДЕЛИ ДАННЫХ РЫНКА КОНЬКОВ НА ЯЗЫКЕ SQL СРЕДСТВАМИ СУБД MYSQL 12
2.2 РЕАЛИЗАЦИЯ ПРОЕКТИРУЕМОЙ СХЕМЫ БАЗЫ ДАННЫХ РЫНКА КОНЬКОВ С ИСПОЛЬЗОВАНИЕМ WEB-ИНТЕРФЕЙСА, СОЗДАННОГО НА ЯЗЫКЕ ПРОГРАММИРОВАНИЯ PHP 15
3 ОБОСНОВАНИЕ И РАСЧЁТ ЭКОНОМИЧЕСКОЙ ЭФФЕКТИВНОСТИ РАЗРАБОТКИ И ВНЕДРЕНИЯ ИНТЕРНЕТ-МАГАЗИНА КОНЬКОВ 25
3.1 РАСЧЁТ КАПИТАЛЬНЫХ ВЛОЖЕНИЙ 25
3.2 РАСЧЁТ ЭКСПЛУАТАЦИОННЫХ РАСХОДОВ 296
3.3 РАСЧЁТ ЭКОНОМИЧЕСКОГО ЭФФЕКТА 30
ЗАКЛЮЧЕНИЕ 35
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 36
ПРИЛОЖЕНИЕ 1 DATABASE KONKI_BAZA 37

Работа состоит из  1 файл

курсовая по вэб.doc

— 584.00 Кб (Скачать документ)

 

Рисунок 1.2 Введение новой сущности schetpok 

     Будем строить логическую модель при использовании  языка ER-диаграмм. Логическая модель должна описывать понятия предметной области, их взаимосвязь, а также ограничения на данные, налагаемые предметной областью. ER-диаграмма логической модели базы данных приведена на рисунке 1.3 
 

       

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

       
 

Рисунок 1.3 ER-диаграмма логической модели базы данных Интернет-магазина коньков

2 РЕАЛИЗАЦИЯ МОДЕЛИ БАЗЫ ДАННЫХ В ИНТЕРАКТИВНОЙ СРЕДЕ ИНТЕРНЕТ

2.1 Построение физической модели данных рынка коньков на языке SQL средствами СУБД MySQL

     Далее приступим к физическому проектированию базы данных. Любая база данных должна состоять из таблиц (отношений), поэтому необходимо построить таблицы, основываясь на логической модели базы данных. Правила перевода из логической модели данных в физическую следующие (см. рисунок 2.1):

  1. Объекты становятся таблицами в физической базе данных;
  2. Атрибуты становятся колонками (полями) в физической базе данных. Для каждого атрибута выбирается свой тип данных;
  3. Уникальные идентификаторы становятся колонками, не допускающими значение NULL. В физической базе данных они называются первичными ключами (primary key).

     

       

       

     

     

     

       

     

     

     

     

       

     

     Рисунок 2.1 – Схема таблиц для базы данных Интернет-магазина коньков 

     Физическая  модель данных строится на базе логической модели и описывает данные уже  средствами конкретной СУБД. Отношения, разработанные на стадии логического моделирования, преобразуются в таблицы, атрибуты в столбцы, домены в типы данных, принятых в выбранной конкретной СУБД.

     Переведем все таблицы в SQL (язык структурированных запросов). В общем случае модели данных разрабатываются таким образом, чтобы не зависеть от конкретной базы данных. Поэтому разработанную физическую модель данных можно применить к любой СУБД. В нашем случае это будет MySQL. MySQL – компактный многопоточный сервер баз данных. MySQL характеризуется большой скоростью, устойчивостью и лёгкостью в использовании. В базе данных MySql таблицы создаются с помощью sql-запроса.

     Для выполнения операций с реляционными базами данных язык SQL позволяет создавать  запросы такие как: CREATE TABLE (создать таблицу), SELECT (выбрать из таблицы), UPDATE (добавить в таблицу), DELETE (удалить из таблицы). Результатом запроса всегда является таблица требуемой структуры с требуемыми данными.

     Объясним название полей таблиц:

     CREATE TABLE konki (//создать таблицу «конки»

       konki_id int(11) NOT NULL auto_increment,//идентификационный номер ключевого поля konki_id

        nazvanie varchar(170) NOT NULL,//название коньков

        opisanie varchar(255) NOT NULL,// описание коньков

        proizvoditel varchar(100) NOT NULL,//производитель коньков

        cena int(20) DEFAULT '0' NOT NULL,//цена коньков

        vid_id int(11) DEFAULT '0' NOT NULL,//вид коньков

        images varchar(20) NOT NULL,//картинка коньков

        PRIMARY KEY (konki_id) ); //первичный ключ konki_id

       CREATE TABLE pokupatel ((//создать таблицу «покупатель»

        pokupatel_id int(11) NOT NULL auto_increment,//идентификационный номер ключевого поля pokupatel _id

        fio varchar(100) NOT NULL,//фамилия-имя-отчество покупателя, заказывающего коньки

        address varchar(100) NOT NULL,//адрес покупателя, заказывающего коньки

        phone varchar(20) NOT NULL,//контактный телефон покупателя, заказывающего коньки

        email varchar(60) NOT NULL,//электронный адрес покупателя, заказывающего коньки

        PRIMARY KEY (pokupatel_id) ); //первичный ключ pokupatel_id

     CREATE TABLE schet (//создать таблицу «счёт»

        schet_id int(11) NOT NULL auto_increment, //идентификационный номер ключевого поля schet_id

        data_oforml date DEFAULT '0000-00-00' NOT NULL,//дата оформления заказа

        pokupatel_id int(11) DEFAULT '0' NOT NULL,//идентификационный номер покупателя, оформившего заказ

        PRIMARY KEY (schet_id));//первичный ключ schet_id

     CREATE TABLE schetpok (//создать таблицу «счёт покупателя»

        schetpok_id int(11) NOT NULL auto_increment,//идентификационный номер ключевого поля schetpok_id

        schet_id int(11) DEFAULT '0' NOT NULL,//идентификационный номер счёта

        konki_id int(20) DEFAULT '0' NOT NULL,//идентификационный номер коньков

        kolvo int(11) DEFAULT '0' NOT NULL,//количество заказанных коньков

        PRIMARY KEY (schetpok_id) );// первичный ключ schetpok_id

     CREATE TABLE vid (//создать таблицу «вид»

        vid_id int(11) NOT NULL auto_increment,//идентификационный номер вида коньков

        nazvanie varchar(50) NOT NULL,//название вида коньков

        PRIMARY KEY (vid_id));//первичный ключ vid_id

     В таблицы konki и vid, вставим значения полей, которые будут храниться в БД. Вставка значений в поля таблицы осуществляется с помощью команды INSERT INTO konki VALUES и означает – вставить в таблицу konki значения. Значения указываются в том порядке, в котором заданы поля. Расшифруем вставку данных в таблицу s konki:

     INSERT INTO konki VALUES ('2', 'Фигурные коньки', 'Фигурные конки Vimpex Sport PW-215 L\L. Натуральная кожа снаружи и внутри, прочная фиксация. Прекрасно подходит для начинающих и опытных любителей катков. Размер 36-42.', 'Vimpex Sport', '165000', '2', '5');

     '2'- 2-ые по счёту конки в поле konki_id; 'Фигурные коньки' – название коньков в поле nazvanie; 'Фигурные конки  Vimpex Sport PW-215 L\L. Натуральная кожа снаружи и внутри, прочная фиксация. Прекрасно подходит для начинающих и опытных любителей катков. Размер 36-42.' – описание коньков в поле opisanie; 'Vimpex Sport' – производитель коньков в поле proizvoditel, '165000' – цена коньков в поле cena; '2' – номер вида коньков в поле vid_id, '1' – название картинки соответствующих ледовых коньков.

     Полный  листинг таблиц, которые необходимо вставить в базу данных, приведён в  ПРИЛОЖЕНИИ 1 Shema.

2.2 Реализация проектируемой схемы базы данных рынка коньков с использованием Web-интерфейса, созданного на языке программирования PHP

 

     Кратко  опишем взаимодействие web-страницы с базой данных. База данных находится локально на нашем web-сервере. На web-странице размещается форма, в которую пользователь вводит свой запрос или те данные, которые нужно передать. После отправки данных из формы на сервер последний запускает написанную нами программу с помощью РНР-языка, которая извлекает данные, переданные пользователем. Далее программа формирует запрос на языке SQL для выборки или изменения данных, а СУБД делает всё остальное. Обычно такие программы создаются в виде CGI-сценариев. Возможно, также встраивание программы прямо в HTML-страницу.

     Основная  задача РНР-языка – интерпретация  сценариев (программ) для генерации web-страниц, отсылаемых программе-клиенту (браузеру). Сценарий (скрипт) может содержать как РНР–, так и HTML-код. HTML-код пересылается в литеральном представлении, а РНР– код выполняется, и клиенту отсылается результат его работы. Таким образом, пользователь никогда не видит РНР– кода. Для полноценной работы с РНР необходимо кроме самого языка ещё и web-сервер. В качестве web-сервера можно использовать Apache. Наш интернет-магазин реализуем с использованием языка гипертекстовой разметки html, языка программирования php и СУБД MySQL. Главная часть функционирования сайта – работа с базой данных. Листинг базы данных пишется в Текстовом редакторе Блокнот и сохраняется под именем SHEMA.

     Для работы с базой данных через web-интерфейс необходимо выполнить следующую последовательность действий:

  • Соединиться с сервером баз данных;
  • Выбрать базу данных;
  • Выполнить SQL-запрос;
  • Вывести данные, полученные в результате запроса.

     Необходимо написать PHP- скрипты, встроенные в HTML – страницы и сохранить их с расширением *.php. Сами скрипты, сформированные из ряда инструкций, находятся на сервере и их содержимое посетителю Интернет-магазина просмотреть невозможно. При активизации PHP- скрипта серверная программа выполняет команды php этого скрипта и результат возвращает программе-браузеру. Соединение с сервером базой данных выполняется функцией mysql_connect("localhost","root",""); где localhost – имя узла (localhost), на котором размещается сервер MySQL, имя пользователя (root), и пароль ("") – в данном случае без пароля. При успешном соединении функция возвращает идентификатор связи с БД, а в случае неудачи – значение false. 

     Выбор базы данных выполняется функцией mysql_select_db("konki_baza"); и означает «выбрать базу данных

konki_baza»; для выполнения запроса к БД используется функция: $query1="select*from vid"; – означает «выбрать из таблицы vid». Далее выполнить запрос: $res1=mysql_query($query1); т.е. функции передаётся запрос, который необходимо выполнить, при успешном выполнении функция возвращает идентификатор результата. Идентификатор результата – это ключ доступа к возвращённым запросом строкам, которых может быть ноль, одна и более: $num_vid=mysql_num_rows($res1); – сообщает количество строк, возвращённых запросом.

     Коды html и php-коды сценариев пишутся в  Текстовом редакторе Блокнот, php-коды сценариев встраиваются в html-страницы и сохраняются с расширением* php. Рассмотрим сценарий, отображающий главную страницу index.php, на которой производим выборку видов товаров:  

     <?php

     mysql_connect("localhost","root",""); //Открытие соединения с MySQL, где localhost - имя компьютера, root- имя пользователя, ""-без пароля

     mysql_select_db("konki_baza"); //Выбрать базу данных konki_baza

     print"<font face=Arial size=2 color=black><b><h2>&nbsp;<center>Виды  коньков </center></h2></b></font><br>";

     $query1="select * from vid";//Выбрать все записи из таблицы vid

Информация о работе Разработка и внедрение интернет-магазина коньков