
- •Аннотация
- •Мазмуну
- •Интернет дүкөн: иштөө принциби жана колдонулушу
- •Интернет дүкөндүн жалпы схемасы
- •Интернет аудитория
- •Интернет дүкөндүн функционалдык мүмкүнчүлүктөрү
- •Интернет дүкөндү иштеп чыгуу процесстердин фазалары.
- •Колдонуулучу технологиялар
- •Долбоорлоо методун аныктоо
- •Программалоо тилин тандоо
- •Модель – көрүнүш – башкаруу
- •Фрэймворк
- •Жалпы түзүлүш
- •Проекттин файлдык архитектурасы
- •Берилиштер базасы
- •Коддук реализация
- •3.4.1 Кутуча, BinController.Php
- •Интернет-дүкөндүн колдонуу көрсөтмөлөрү
- •Интернет дүкөндү башкаруу
- •Административдик панель
- •Колдонуучулар үчүн интернет-дүкөн
- •4.3.1 Каттоо процесси.
- •4.3.2 Каталог
- •4.3.3 Заказ кылуу процесси
- •4.3.4 Онлайн көрүү функционалы
- •Колдонулган булактар
- •Глоссарий
Берилиштер базасы
Колдонула турган берилиштер жөнүндө маалымат алыш үчүн, биринчиден интернет-дүкөн системасы аткара турган маселелерди белгилейли:
Товарлардын көрсөтүүсү
Товарлардын классификациясы
Колдонуучуларды катто
Товарларды кутучуга кошуу
Кутучанын ичиндегилерди көрсөтүү
Төлөм
ж.б.
Маселелер тизмесинен системага маанилүү маңыздарды чыгарсак болот.
Товарлар(дисктер),
заказдар, кардаарлар, категориялар ар
бир интернет дүкөндүн негизи катары
болуп эсептелинет.
3.4-сүрөт.
Берилиштер базасы. Негизги маңыз
Негизги маңыз деген себебим, интернет дүкөн системасына гана тиешелүү жадыбалдар.
Жадыбалдар:
discs – дисктер жөнүндө маалыматтарды камтыйт
disc_info – бир диск жөнүндө маалымат камтыйт
producers – иштеп чыгаруучулардын жадыбалы
type – дисктердин түрлөрү
countries – өлкөлөрдүн жадыбалы
formats – форматтардын жадыбалы
janrs – жанрлардын жадыбалы
bin_orders – заказдардын жадыбалы
bin_clients – кардаарлардын жадыбалы
gallery – дисктерге тиешелүү медиялардын(сүрөт, видео) жадыбалы
users –колдонуучулардын жадыбалы
Жогоруда айтылган жадыбалдардын талааларын тереңиреек карап кетели
3.1-жадыбал. discs жадыбалы
№ |
Мамычанын аты |
Берилиштердин тиби |
Узундугу |
Түшүндүрмө |
Discs жадыбалы |
||||
1 |
id |
Int |
11 |
Код |
2 |
poster_id |
Int |
11 |
Постердин коду |
3 |
country_id |
Int |
11 |
Өлкөнүн коду |
4 |
janr_id |
Int |
11 |
Жанрдын коду |
5 |
format_id |
Int |
11 |
Форматтын коду |
6 |
producer_id |
Int |
11 |
Иштеп чыгуучунун коду |
7 |
type_id |
Int |
11 |
Түрлөрдүн коду |
8 |
name |
Varchar |
100 |
Дисктин аты |
9 |
description |
Longtext |
|
Дисктин сыпаттоосу |
10 |
active |
Tinyint |
1 |
Активдүү |
11 |
quantity_of_films |
Int |
11 |
Фильмдердин саны |
12 |
quantity_of_series |
Int |
11 |
Сериялардын саны |
13 |
quantity_of_clips |
Int |
11 |
Клиптердин саны |
14 |
date |
Datetime |
|
Чыгарылган датасы |
15 |
price |
Int |
11 |
баасы |
3.2-жадыбалы. disc_info жадыбалы
CREATE TABLE IF NOT EXISTS `cinemax`.`disc_info` ( `id` INT(10) NOT NULL AUTO_INCREMENT, `disc_id` INT(11) NULL DEFAULT NULL, `content` LONGTEXT CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL, PRIMARY KEY (`id`), INDEX `FK_disc_info_discs` (`disc_id` ASC), CONSTRAINT `FK_disc_info_discs` FOREIGN KEY (`disc_id`) REFERENCES `cinemax`.`discs` (`id`)) ENGINE = InnoDB AUTO_INCREMENT = 7 DEFAULT CHARACTER SET = utf8' COLLATE = utf8_unicode_ci |
||||
Disc_info жадыбалы |
||||
1 |
id |
Int |
11 |
Код |
2 |
disc_id |
Int |
11 |
Дисктин коду |
3 |
content |
Longtext |
|
Диск жөнүндө маалымат |
3.3-жадыбалы. producers жадыбалы
CREATE TABLE IF NOT EXISTS `cinemax`.`producers` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `name` VARCHAR(100) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE = InnoDB AUTO_INCREMENT = 2 DEFAULT CHARACTER SET = utf8 COLLATE = utf8_unicode_ci |
||||
Producers жадыбалы |
||||
1 |
Id |
Int |
11 |
Код |
2 |
Name |
Varchar |
100 |
Иштеп чыгуучунун аты |
3.4-жадыбалы. types жадыбалы
CREATE TABLE IF NOT EXISTS `cinemax`.`types` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `name` VARCHAR(100) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE = InnoDB AUTO_INCREMENT = 6 DEFAULT CHARACTER SET = utf8 COLLATE = utf8_unicode_ci |
||||
Types жадыбалы |
||||
1 |
Id |
Int |
11 |
Код |
2 |
Name |
Varchar |
100 |
Түрлөр |
3.5-жадыбалы. formats жадыбалы
CREATE TABLE IF NOT EXISTS `cinemax`.`formats` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `name` VARCHAR(100) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE = InnoDB AUTO_INCREMENT = 2 DEFAULT CHARACTER SET = utf8 COLLATE = utf8_unicode_ci |
||||
Formats жадыбалы |
||||
1 |
Id |
Int |
11 |
Код |
2 |
Name |
Varchar |
100 |
Форматтар |
3.6-жадыбалы. сountries жадыбалы
CREATE TABLE IF NOT EXISTS `cinemax`.`countries` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `name` VARCHAR(100) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE = InnoDB AUTO_INCREMENT = 10 DEFAULT CHARACTER SET = utf8 COLLATE = utf8_unicode_ci |
||||
Countries жадыбалы |
||||
1 |
Id |
Int |
11 |
Код |
2 |
Name |
Varchar |
100 |
Өлкөлөр |
3.7-жадыбалы. janrs жадыбалы
CREATE TABLE IF NOT EXISTS `cinemax`.`janrs` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `name` VARCHAR(100) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE = InnoDB AUTO_INCREMENT = 19 DEFAULT CHARACTER SET = utf8 COLLATE = utf8_unicode_ci |
||||
Janrs жадыбалы |
||||
1 |
Id |
Int |
11 |
Код |
2 |
Name |
Varchar |
100 |
Жанрлар |
3.8-жадыбалы. bin_orders жадыбалы
CREATE TABLE IF NOT EXISTS `cinemax`.`bin_orders` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `bin_client_id` INT(11) NULL DEFAULT NULL, `disc_id` INT(11) NULL DEFAULT NULL, `amount` INT(11) NULL DEFAULT NULL, `coast` DOUBLE NOT NULL, PRIMARY KEY (`id`), INDEX `IDX_8249FC5E617F627A` (`bin_client_id` ASC), INDEX `IDX_8249FC5EC38F37CA` (`disc_id` ASC), CONSTRAINT `FK_8249FC5E617F627A` FOREIGN KEY (`bin_client_id`) REFERENCES `cinemax`.`bin_clients` (`id`), CONSTRAINT `FK_8249FC5EC38F37CA` FOREIGN KEY (`disc_id`) REFERENCES `cinemax`.`discs` (`id`)) ENGINE = InnoDB DEFAULT CHARACTER SET = utf8 COLLATE = utf8_unicode_ci |
||||
Bin_orders жадыбалы |
||||
1 |
Id |
Int |
11 |
Код |
2 |
Bin_client_id |
Int |
11 |
Кардаардын коду |
3 |
Disc_id |
Int |
11 |
Дисктин коду |
4 |
Amount |
Int |
11 |
Саны |
5 |
Coast |
Double |
|
Жалпы баа |
3.9-жадыбалы. bin_clients жадыбалы
CREATE TABLE IF NOT EXISTS `cinemax`.`bin_clients` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `user_id` INT(11) NULL DEFAULT NULL, `fio` VARCHAR(250) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL, `phone` VARCHAR(20) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL, `email` VARCHAR(250) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL, `address` VARCHAR(255) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL, `active` TINYINT(1) NULL DEFAULT NULL, `date_order` DATETIME NOT NULL, PRIMARY KEY (`id`), INDEX `IDX_CBCEFBF9A76ED395` (`user_id` ASC), CONSTRAINT `FK_CBCEFBF9A76ED395` FOREIGN KEY (`user_id`) REFERENCES `cinemax`.`users` (`id`)) ENGINE = InnoDB DEFAULT CHARACTER SET = utf8 COLLATE = utf8_unicode_ci |
||||
Bin_clients жадыбалы |
||||
1 |
Id |
Int |
11 |
Код |
2 |
User_id |
Int |
11 |
Колдонуучу коду |
3 |
Fio |
Varchar |
250 |
Аты-жөнү |
4 |
Phone |
Varchar |
20 |
Телефон |
5 |
Varchar |
250 |
Email адрес |
|
6 |
Address |
Varchar |
255 |
Жеткирүү адреси |
7 |
Active |
Tinyint |
1 |
Активдүү |
8 |
Date_order |
Datetime |
|
Заказ кылынган дата |
3.10-жадыбалы. gallery жадыбалы
CREATE TABLE IF NOT EXISTS `cinemax`.`gallery` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `name` VARCHAR(255) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL, `context` VARCHAR(64) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL, `default_format` VARCHAR(255) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL, `enabled` TINYINT(1) NOT NULL, `updated_at` DATETIME NOT NULL, `created_at` DATETIME NOT NULL, PRIMARY KEY (`id`)) ENGINE = InnoDB AUTO_INCREMENT = 26 |
||||
Gallery жадыбалы |
||||
1 |
Id |
Int |
11 |
Код |
2 |
Name |
Varchar |
255 |
Медиянын аты |
3 |
Context |
Varchar |
64 |
Контекст |
4 |
Default_format |
Varchar |
255 |
Унчукпоо форматы |
5 |
Enabled |
Tinyint |
1 |
Активдүү |
6 |
Updated_at |
Datetime |
|
Жаңыртуу датасы |
7 |
Created_at |
Datetime |
|
Түзүлгөн датасы |
3.11-жадыбалы. users жадыбалы
Users жадыбалы |
|||||||
1 |
Id |
Int |
11 |
Код |
|||
2 |
Username |
Varchar |
255 |
Логин |
|||
3 |
Varchar |
255 |
Email адрес |
||||
4 |
Enabled |
Tinyint |
1 |
Активдүү |
|||
5 |
Password |
Varchar |
255 |
Пароль |
|||
6 |
Created_at |
Datetime |
|
Түзүлүү датасы |
|||
7 |
Updated_at |
Datetime |
|
Жаңыланган датасы |
|||
8 |
Date_of_birth |
Datetime |
|
Туулган жылы |
|||
9 |
Firstname |
Varchar |
64 |
Аты |
|||
10 |
Lastname |
Varchar |
64 |
Фамилиясы |
|||
11 |
Address |
Varchar |
255 |
Адрес |
|||
12 |
Roles |
Longtext |
|
Рольдор |
|||
13 |
Gender |
Varchar |
1 |
Жыныстык |
|||
14 |
ж.б. |
|
|
|
Бул жерде интернет дүкөнгө гана тиешелүү жадыбалдары көрсөтүлгөн. Мындан сырткары фильмдерди көрүү функцоналынын берилиштер базасы дагы бар. Жадыбалдары төмөнкү 3.5-сүрөттө көрсөтүлгөн.
3.5-сүрөт.
Онлайн көрүү функционалынын жадыбалдары
Жадыбалдар:
movies – фильмдер жөнүндө маалыматты камтыйт
comments – комментарийлер
directors – режиссерлор
actors – актерлор
countries – өлкөлөр
janrs – жанрлар
movies_director – many-to-many боюнча байланыш жадыбалы
movies _actors - many-to-many боюнча байланыш жадыбалы
movies _janrs - many-to-many боюнча байланыш жадыбалы
movies_countries - many-to-many боюнча байланыш жадыбалы
3.12-жадыбалы. movies жадыбалы
№ |
Мамычанын аты |
Берилиштердин тиби |
Узундугу |
Түшүндүрмө |
CREATE TABLE IF NOT EXISTS `cinemax`.`movies` ( `id` INT(10) NOT NULL AUTO_INCREMENT, `name` VARCHAR(255) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL, `url` VARCHAR(255) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL, `poster_id` INT(11) NULL DEFAULT NULL, `description` LONGTEXT CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL, `views` INT(11) NULL DEFAULT NULL, `active` TINYINT(4) NULL DEFAULT NULL, `year` INT(11) NULL DEFAULT NULL, PRIMARY KEY (`id`), INDEX `FK_movies_media__media` (`poster_id` ASC), CONSTRAINT `FK_movies_media__media` FOREIGN KEY (`poster_id`) REFERENCES `cinemax`.`media__media` (`id`)) ENGINE = InnoDB DEFAULT CHARACTER SET = utf8 COLLATE = utf8_unicode_ci |
||||
Movies жадыбалы |
||||
1 |
id |
Int |
11 |
Код |
2 |
Name |
Varchar |
255 |
Аты |
3 |
url |
Varchar |
255 |
Фильмге шилтеме |
4 |
Poster_id |
Int |
11 |
Постердин коду |
5 |
Description |
Longtext |
|
Фильмдин сыпаттоосу |
6 |
Views |
Int |
11 |
Көрүү саны |
7 |
Active |
Tinyint |
1 |
Активдүү |
8 |
Year |
Datetime |
|
Жыл |
3.13-жадыбалы. comments жадыбалы
CREATE TABLE IF NOT EXISTS `cinemax`.`comments` ( `id` INT(10) NOT NULL AUTO_INCREMENT, `movie_id` INT(11) NULL DEFAULT NULL, `author` VARCHAR(255) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL, `comment` LONGTEXT CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL, `created` DATE NOT NULL, `active` TINYINT(1) NULL DEFAULT NULL, PRIMARY KEY (`id`), INDEX `FK_comments_movies` (`movie_id` ASC), CONSTRAINT `FK_comments_movies` FOREIGN KEY (`movie_id`) REFERENCES `cinemax`.`movies` (`id`)) ENGINE = InnoDB AUTO_INCREMENT = 8 DEFAULT CHARACTER SET = utf8 |
||||
Comments жадыбалы |
||||
1 |
id |
Int |
11 |
Код |
2 |
Movie_id |
Int |
11 |
Фильм коду |
3 |
Author |
Varchar |
255 |
Автор |
4 |
Comment |
Longtext |
|
Комментарий |
5 |
Created_date |
Datetime |
|
Дата |
6 |
Active |
Tinyint |
1 |
Активдүү |
Жогоруда айтылган функционалга тиешелүү башка жадыбалдарды карай турган болсок, алардын структурасы жөнөкөй. Бирок байланыш жадыбалдарын карап кете турган болсок, алардын негизги максаты эки жадыбал арасындагы many-to-many байланышын түзүү.
movies_actors жадыбалын мисал катары алсак, movies жана actors жадыбалдар арасында many-to-many байлынышын түзөт.
Албетте, көрсөтүлгөн жадыбалдардан да тышкары кошумча жадыбалдар бар. Бул жерде негизги функционалга түз тиешеси бар жадыбалдар көрсөтүлдү. Кошумча жадыбалдар:
videos – трейлерлердин жадыбалы
feedback – кайтарма жооп жадыбалы
slider_header – баштапкы баракчада турган слайдер жадыбалы
ips – колдонуулардын ip-адрестер жадыбалы
visits – сайтка кирүүнүн санын камтыган жадыбал