Создание электронного магазина принтеров

Автор работы: Пользователь скрыл имя, 17 Февраля 2012 в 11:54, курсовая работа

Описание работы

Целью курсовой работы является развитие навыков по практическому использованию технологии распределённых баз данных для организации бизнеса в секторе сетевой экономики посредством языка программирования РНР, проектирование и реализация электронного магазина и базы данных рынка принтеров.
Для достижения поставленной цели в работе ставятся следующие задачи:
- изучить язык написания скриптов PHP для доступа к базам данных;
- проанализировать предметную область интернет-магазинов принтеров;
- спроектировать базу данных рынка принтеров;
- реализовать спроектированную базу данных средствами СУБД MySQL и языка программирования РНР в интерактивной среде Интернет.

Содержание работы

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

Файлы: 1 файл

курсовая-магазин принтеров.doc

— 793.00 Кб (Скачать файл)

     Первичный же ключ – это потенциальный ключ, вероятность потери уникальности которого мала по сравнению с другими потенциальными ключами. Также следует учесть то, что СУБД легче индексировать числовые, чем символьные ключи.

     На  основании вышеизложенного составим табл. 1.3 первичных и альтернативных ключей. 

 

Таблица 1.3 - Первичные и альтернативные ключи

Сущность Первичный ключ Альтернативный  ключ
goods good_id good_name

class_id

orders order_id order_id

buyer_id

order_date

buyers buyer_id buyer_name

buyer_phone

classes class_id class_name
    1. Построение  логической модели данных

     Логическая  модель данных является начальным прототипом будущей базы данных. Логическая модель строится в терминах информационных единиц, но без привязки к конкретной СУБД. Более того, логическая модель данных необязательно должна быть выражена средствами именно реляционной модели данных (рисунок 1.2).

 

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

     При построении логической модели можно  использовать язык ER-диаграмм (от англ. Entity-Relationship, т.е. сущность-связь). В них сущности изображаются помеченными прямоугольниками, ассоциации – помеченными ромбами или шестиугольниками, атрибуты – помеченными овалами, а связи между ними – ненаправленными ребрами, над которыми может проставляться степень связи (1 или буква, заменяющая слово "много") и необходимое пояснение.

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

     В нашем случае присутствует связь  (goods принадлежит(belong) orders). Так как реализация такой связи в СУБД реляционного типа затруднительна, нужно ввести новую сущность, назовем ее orderbook.

     Приведем  логическую модель базы данных с учетом введения новой сущности.

     Логическая  модель базы данных приведена на рисунке 1.3.

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

     В данной главе был проведен анализ процесса разработки базы данных, который состоял из следующих этапов:

  • перед началом проектирования базы данных необходимо проанализировать предметную область, для которой создается база, собрать и проанализировать требования пользователей системы;
  • построить концептуальную модель (сформулировать  объекты, описывающие предметную область проектируемой БД, и описать атрибуты, составляющих структуру каждого объекта, построить ER-диаграмму);
  • построить логическую модель, отражающую особенности представления о функционировании предприятия одновременно многих типов пользователей.

     Физически спроектированную модель рынка принтеров реализуем с помощью языка SQL  во второй главе.

 

  1. РЕАЛИЗАЦИЯ  МОДЕЛИ БАЗЫ ДАННЫХ МАГАЗИНА принтеров В ИНТЕРАКТИВНОЙ СРЕДЕ ИНТЕРНЕТ
    1. Построение  физической модели данных на языке SQL средствами СУБД MySQL

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

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

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

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

     // Создание таблицы

     CREATE TABLE `buyers` (

     // Создание строк в таблице

       `buyer_id` int(10) NOT NULL auto_increment,

       `buyer_name` varchar(100) NOT NULL default '',

       `buyer_phone` varchar(20) NOT NULL default '',

       `buyer_address` varchar(100) NOT NULL default '',

     // Задаем ключевое поле таблицы

       PRIMARY KEY  (`buyer_id`)

     ) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=1 ; 

     // Создание таблицы

     CREATE TABLE `classes` (

     // Создание строк в таблице

       `class_id` int(10) NOT NULL auto_increment,

       `class_name` varchar(255) NOT NULL default '',

     // Задаем ключевое поле таблицы

       PRIMARY KEY  (`class_id`)

     ) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=1 ; 

     // Вставляем в таблицу значения

     INSERT INTO `classes` VALUES (1, 'Hewlett-Packard');

     INSERT INTO `classes` VALUES (2, 'Samsung');

     INSERT INTO `classes` VALUES (3, 'Canon'); 
 

     // Создание таблицы

     CREATE TABLE `goods` (

     // Создание строк в таблице

       `good_id` int(10) NOT NULL auto_increment,

       `good_name` varchar(50) NOT NULL default '',

       `description` varchar(255) NOT NULL default '',

       `class_id` int(10) NOT NULL default '0',

       `good_price` int(10) NOT NULL default '0',

       `image` varchar(20) NOT NULL default '',

     // Задаем ключевое поле таблицы

       PRIMARY KEY  (`good_id`)

     ) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=1 ; 

     // Вставляем в таблицу значения

     INSERT INTO `goods` VALUES (1, 'Лазерный принтер HP LaserJet P1005', 'Скорость печати (чёрно-белая, обычное качество, A4)', 1, 140, '1.jpg');

     INSERT INTO `goods` VALUES (2, 'Лазерный принтер HP LaserJet P2005', 'Монохромный лазерный принтер для индивидуального использования дома или в небольшом офисе.', 1, 145, '2.jpg');

     INSERT INTO `goods` VALUES (3, 'Лазерный принтер Samsung ML-2010PR', 'Ресурс: 5000 страниц в месяц Процессор: 150 МГц Первая страница: 10 секунд Типы печатных носителей: Бумага, конверты, наклейки,', 2, 130, '3.jpg');

     INSERT INTO `goods` VALUES (4, 'Samsung SCX-4200', 'МФУ A4, принтер/копир/сканер,до18стр/мин,600x2400dpi USB/LPT', 2, 195, '4.jpg');

     INSERT INTO `goods` VALUES (5, 'Canon LBP-2900b Bl', 'Монохромный лазерный принтер для индивидуального использования дома или в небольшом офисе', 3, 145, '5.jpg');

     INSERT INTO `goods` VALUES (6, 'Samsung ML-2015', 'Лазерный принтер  A4, 1200 dpi, 20ppm, 8 Mb, USB/LPT', 2, 120, '6.jpg'); 

     // Создание таблицы

     CREATE TABLE `orderbook` (

     // Создание строк в таблице

       `position_id` int(10) NOT NULL auto_increment,

       `order_id` int(10) NOT NULL default '0',

       `good_id` int(10) NOT NULL default '0',

       `quantity` int(10) NOT NULL default '0',

     // Задаем ключевое поле таблицы

       PRIMARY KEY  (`position_id`)

     ) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=1 ; 

     // Создание таблицы

     CREATE TABLE `orders` (

     // Создание строк в таблице

       `order_id` int(10) NOT NULL auto_increment,

       `order_date` date NOT NULL default '0000-00-00',

       `buyer_id` int(10) NOT NULL default '0',

     // Задаем ключевое поле таблицы

       PRIMARY KEY  (`order_id`)

     ) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=1 ;

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

     Наш интернет-магазин реализуем с  использованием языка гипертекстовой разметки html, языка программирования php и СУБД MySQL.

     Главная часть функционирования сайта –  работа с базой данных.

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

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

     Исходные коды сценариев находятся в приложениях.

     Вид главной страницы показан на рисунке 2.2.

     Рассмотрим  сценарий отображающий главную страницу. Исходные коды сценариев находятся  в приложениях. Одной из главных  частей работы является работа с базой  данных.

Рисунок 2.2 - Главная страница Интернет-магазина 

     Рассмотрим  построение вэб-интерфейса приведенной  страницы. Остальные страницы построены  аналогично.

     Сайт  был разработан в текстовом редакторе  «Блокнот». Была сформирована HTML страничка с PHP кодом и сохранена с расширением *.php.

     Страницы  сайта были созданы используя  теги. Основные элементы форматирования, используемые на сайте это:

     <HTML>

     <HEAD>

  • Использование заголовка

        <TITLE>Сайт по продаже принтеров</TITLE>

  • Использование стилей

        <style type="text/css">

     <!--

     body {background-color: #FFFFFF;}

     .style3 {font-family: Verdana, Arial, Helvetica, sans-serif;

           font-size: 16px;}

     .style4 {font-family: Verdana, Arial, Helvetica, sans-serif}

     .style5 {color: #CCFF00; font-weight: bold;}

     .style8 {color: #CCFFFF}

     .style9 {color: #CCFFFF; font-weight: bold; font-size: 14px; }

     .style11 {color: #FFFFCC; font-weight: bold; font-size: 14px; }

     .style12 {color: #FFFFCC}

     .style15 {font-family: Verdana, Arial, Helvetica, sans-serif; color: #CC00FF; font-size: 24px; font-weight: bold;}

Информация о работе Создание электронного магазина принтеров