Интернет-магазин "Компьютеры и оргтехника"
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
ementvidint(11)Вид каталогаnazvvarchar(50)Текстовое название товараfotovarchar(50)Путь к рисунку товараopisanietextТекстовое описание товараzenafloatЦена товара
tovar_zakaz - заказанные товары
ПолеТипФункционалОписаниеidint(11)Уникальный код новостиauto_incrementid_zakazint(11)Код заказа (заказчика)id_tovarint(11)Код товараkolint(11)Количество товараsummafloatСумма заказанного товара
user - пользователи
ПолеТипФункционалОписаниеidint(11)Уникальный код новостиauto_incrementtipint(11)Номер типа пользователя1-менеджер, 2-админloginvarchar(50)Логин пользователяfiovarchar(50)Фамилия, Имя, Отчество пользователяemailvarchar(50)Электронная почта пользователяpassvarchar(50)Пароль пользователя - временная таблица заказанных товаров
ПолеТипФункционалОписаниеidint(11)Уникальный код новостиauto_incrementid_tovarint(11)Код товараnazvvarchar(20)Название заказанного товараfirmavarchar(10)Фирма заказанного товараfotovarchar(50)Путь к фотографииopisanietextОписание заказанного товараzenafloatЦена заказанного товараkolint(11)Количество заказанного товара
zakaz - заказ и заказчик
ПолеТипФункционалОписаниеidint(11)Уникальный код новостиauto_incrementFIOvarchar(50)Фамилия, Имя, Отчество заказчикаtelvarchar(15)Телефон заказчикаemailvarchar(15)Электронная почта заказчикаdatadateДата заказаstatusvarchar(15)Статус заказаid_menint(11)Код менеджера, исполняющего заказ
3.2 Описание таблиц
Опишем каждую таблицу по отдельности для полного представления базы данных comp
Первая таблица razd хранит информацию о каталогах компьютеров, где порядок по которому происходит сортировка при отображении осуществляется по столбцу por.
Следующая razd2 аналогична первой, только это каталог оргтехники.
Третья таблица Товаров хранит информацию о товарах, где значение vid является показателем принадлежности товара к какому то каталогу, если 1 - к компьютерам, 2 - оргтехнике.
Далее следует талица tovar_zakaz она представляет собой таблицу заказов, объединяющей между собой заказчика и товары которые он заказал. В ней указывается количество указанного товара и ее сумма.
Пятая таблица пользователей необходима для контроля входа пользователей в панель администрирования и в менеджерскую. Также в случае когда tip равен 1,то есть пользователь является менеджером, его данные используются для связи с заказчиком, что позволяет контролировать выполнение заказа более автономно.
Шестая таблица является временной, то есть она создается в самом сайте при создании сессии, то есть при входе на сайт в первый раз. Это позволяет создавать временную корзину на случай если пользователь решит не заказывать, данные с корзины будут удалены. В обратном случае - данные будут переписаны в таблицу с заказами, и также таблица будет уничтожена.
Последняя таблица zakaz представляет собой набор заказчика, id данной таблицы является номером заказа и последующем номером счета. Здесь также указана дата заказа, которая задается автоматически в php, значение которого равно текущему числу, что очень удобно при контролировании заказа. Поле status указывает статус заказа: выполнен (после того как товар отгружен покупателю и все требования выполнены), выполняется (после того как менеджер резервирует данный заказ и начинает работать над его осуществлением), отменен (временное помещение заказа в хранилище, по каким либо причинам), прибыл (когда заказчик осуществил заказ, но его еще не обработали).
Данная таблица связывается с таблицей менеджеров (пользовательская таблица) по уникальному коду менеджера.
Схематически связи всех существующих таблиц мы рассмотрим далее.
3.3 Схема базы данных
Рисунок 1 - Структурная схема базы данных comp
3.4 SQL запросы на создание таблиц
В phpMyAdmin сформируем экспорт SQL и получаем следующий дамп базы данных в виде структур рассмотренных ранее таблиц:
-- БД: `comp`
Структура таблицы `razd`
--TABLE `razd` (
`id` int(11) NOT NULL auto_increment,
`nazv` varchar(50) NOT NULL default ,
`por` int(11) NOT NULL default 0,KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=45 ;
- Структура таблицы `razd2`TABLE `razd2` (
`id` int(11) NOT NULL auto_increment,
`nazv` varchar(50) NOT NULL default ,
`por` int(11) NOT NULL default 0,KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=43 ;
- Структура таблицы `tovar`TABLE `tovar` (
`id` int(11) NOT NULL auto_increment,
`vid` int(11) NOT NULL default 0,
`nazv` varchar(250) NOT NULL default ,
`foto` varchar(250) NOT NULL default ,
`opisanie` text NOT NULL,
`zena` float NOT NULL default 0,KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=845 ;
- Структура таблицы `tovar_zakaz`TABLE `tovar_zakaz` (
`id` int(11) NOT NULL auto_increment,
`id_zakaz` int(11) NOT NULL default 1,
`id_tovar` int(11) NOT NULL default 1,
`kol` int(11) NOT NULL default 0,
`summa` float NOT NULL default 0,KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=41 ;
- Структура таблицы `user`TABLE `user` (
`id` int(11) NOT NULL auto_increment,
`tip` int(11) NOT NULL default 1,
`login` varchar(50) NOT NULL default ,
`fio` varchar(50) NOT NULL default ,
`email` varchar(50) NOT NULL default ,
`pass` varchar(10) NOT NULL default ,KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=13 ;
- Структура таблицы `zak`TABLE `zak` (
`id` int(11) NOT NULL auto_increment,
`id_tovar` int(11) NOT NULL default 0,
`nazv` varchar(20) NOT NULL default ,
`firma` varchar(10) NOT NULL default ,
`foto` varchar(50) NOT NULL default ,
`opisanie` text NOT NULL,
`zena` float NOT NULL default 0,
`kol` int(11) NOT NULL default 0,KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=2 ;
- Структура таблицы `zakaz`TABLE `zakaz` (
`id` int(11) NOT NULL auto_increment,
`FIO` varchar(50) NOT NULL default ,
`tel` varchar(15) NOT NULL default ,
`email` varchar(15) NOT NULL default ,
`data` date NOT NULL default 0000-00-00,
`status` varchar(15) NOT NULL default поступил,
`id_men` int(11) NOT NULL default 0,KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=25 ;
4. Назначение скриптов
Начнем р