Главная страница

Розробка бази даних та інтерфейсу взаємодії для довідника. Курсова. Розробка бази даних та інтерфейсу взаємодії для довідника відомостей про маркування пластику


Скачать 1.35 Mb.
НазваниеРозробка бази даних та інтерфейсу взаємодії для довідника відомостей про маркування пластику
АнкорРозробка бази даних та інтерфейсу взаємодії для довідника
Дата02.06.2022
Размер1.35 Mb.
Формат файлаdocx
Имя файлаКурсова.docx
ТипДокументы
#565224


КУРСОВИЙ ПРОЄКТ

КП. ІСТ-11.00.000 ПЗ

Група ІСТ-20-1

Коростіль Віталій

2021


Івано-Франківський національний тейнічний університет нафти і газу

Кафедра Інформаційно-телокомунікаційних технологій та систем

КУРСОВИЙ ПРОЄКТ

з Організації баз даних (реляційних і нереляційних)

на тему : Розробка бази даних та інтерфейсу взаємодії для довідника відомостей про маркування пластику

Студента 2-курсу ІСТ-20-1 групи

напряму підготовки Інформаційні

системи та технології

Спеціальності : Інформаційні системи та технології

Коростіль В.Р.

Керівник : зав. кафедри, проф.

д. техн. наук. Мельничук С.І.

національна шкала ___________

Кількість балів ______ Оцінка : ECTS ___

Члени комісії ________ _______________________

підпис прізвище та ініціали

________ _______________________

підпис прізвище та ініціали

________ _______________________

підпис прізвище та ініціали

м. Івано-Франківськ - 2021р.

Івано-Франківський національний тейнічний університет нафти і газу

Кафедра інформаційно – телекомунікаційних технологій та систем

Дисципліна Бази даних (реляційна та нереляційна)

Спеціальність Інформаційна система та технології

Курс 2 Група ІСТ-20-1 Семестр 1

ЗАВДАННЯ

НА КУРСОВИЙ ПРОЄКТ

Студенту Коростілю Віталію Романовичу

1. Тема проекту – Розробка бази даних маркувань пластику реляційного типу та інтерфейсу, що дозволяє виконувати типові операції роботи над базою даних :

доповнення, редагування, видалення та пошуку за умовою.

2. Термін здачі студентом закінченого проекту 13 грудня 2021 року.

3. Вихідні дані до проекту – основні кодові позначення, маркування пластику

4. Зміст розрахунково пояснювальної записки :

- опис опис основних кодових позначень та маркування пластику

- розробка бази даних маркування пластику реляційного типу та інтерфейсу, що дозволяє виконувати виконувати типові операції роботи з базою даних: доповнення ,

редагування , видалення та пошук за умовою

- розробка функцій взаємодії з базою даних

- розробка інтерфейсу користувача

5. Перелік графічного матеріалу.

6.Дата видачі завдання – 17 вересня 2021 року.

КАЛЕНДАРНИЙ ПЛАН

Номер і назва етапів курсового проекту

Термін виконання етапів проекту

Примітка

1. Отримання теми курсового проекту . Складання плану проекту



17.09.2021 – 23.09.2021




2. Пошук та вивчення літератури з питань курсового проекту


23.09.2021 – 03.10.2021




3. Розробка схеми бази даних. Створення БД та її початкове інформаційне наповнення


03.10.2021 – 09.10.2021




4. Розробка інтерфейсу користувача

09.10.2021 – 19.10.2021




5. Розробка програми , перевірка функціоналу


19.10.2021 – 28.10.2021




6. Налагодження та перевірка коректності програми в загальному

28.10.2021 – 16.11.2021




7. Опис роботи програми . Оформлення пояснювальної записки

16.11.2021 – 01.12.2021




8. Захист курсової роботи

За розкладом




Студент (Коростіль В.Р.)

(Особистий Підпис) (Розшифрування підпису)

Керівник (Мельничук С.І.)

(Особистий Підпис) (Розшифрування підпису)

<_______> ______________p.

Анотація

Метою курсового проекту є створення програми для роботи з довідником

маркування пластику додаванням інформації в нього , її редагування та видалення за потреб користувача.

В першому розділі описуються основні визначення та проводиться аналіз

теми курсової роботи . В другому розділі проводиться проектування бази даних, та опис даних які знаходяться в ній. В третьому розділі розглядається реалізація програмного забезбечення та бази даних.

The purpose of the course project is to create a program to work with

the guide to marking plastic by adding information to it, editing and deleting it according to user needs.

The first section describes the main definitions and analyzes the topic

of the course work. The second section is the design of the database, and a description of the data contained in it. The third section discusses the implementation of software and database.

ЗМІСТ

ВСТУП ………………………………………………………………… 7

1 СПОСІБ ВИКОНАННЯ ЗАВДАННЯ ТА ОРГАНІЗАЦІЇ ІНФОРМАЦІЙНОГО ДОВІДНИКА ………………………………. 8

1.1 Поняття Інформаційно-пошукової системи …………………. 8

1.2 Огляд аналогів інформаційних довідників ………………….. 10

1.3 Аналіз різновидів маркування пластику …………………...... 12

1.4 Представлення даних інформаційного довідника …………. . 13

2 РОЗРОБКА СКЛАДОВИХ СТРУКТУРНОЇ СХЕМИ ПЗ ......... 14

2.1 Обгрунтування вибору ПЗ для виконання курсової роботи .. 14

2.2 Створеннялогічної схеми БД (Інформаційного довідника) .. 15

2.3 Структурна схема Інферфейсу програмного забебечення … 17

3 РЕАЛІЗАЦІЯ ПРОГРАМИ ………………………………………. 18

3.1 Розробка прикладного програмного забезпечення ………… 18

3.2 Інтерфейс сайту та настанова користувча ………………….... 21

ВИСНОВКИ ………………………………………………………….. 23

СПИСОК ВИКОРИСТАНОЇ ЛІТЕРАТУРИ ……………………... 24

ДОДАТОК А ЛІСТИНГУ КОДУ ФУНКЦІЙ

ДОДАТОК Б ЛІСТИНГУ КОДУ КОЖНОЇ З ТАБЛИЦЬ

ВСТУП

Довідник — довідкове видання прикладного характеру, побудоване в

систематичному порядку чи за абеткою назв статей, призначене для швидкого пошуку певних відомостей.

Призначення довідника – це зберігання інформації для подальшого її

застосування системою та користувачем. Для зручності довідники згруповані за видами зібраної інформації. Інформація яка в них зберігається використовуєтсья при формулюванні всіх видів документів системи, в які зносяться всі стандартизовані та класифіковані дані. Наявність довідників значно полегшує роботу з інформацією користувача та значно зменшує шанс виникнення помилки в наслідку виконання великої кількості роботи з інформацією та даними.

Завдання курсового проекту – створення програми-довідника для роботи

з даними інформаційного довідника маркування та позначення пластику, тобто створення привітивної ІПС, потрібно розробити інтуєтивний, незагружений , та робочий інтерфейс для комфортної взаємодії користувача з базою даних.

Для виконання цього курсового проєкту було вирішено використати

пропрієтарний текстовий редактор Sublime Text 3 зважаючи на те що це найпростіше середовище для роботи з PHP яку я обрав для того щоб зробити

веб – застосунок для керування з створеною базою даних , для створення якої я обрав Denwer, тому, що він перевірений часом та інформації по його використанню в інтернеті достанньо для реалізації даного проєкту.

1. СПОСІБ ВИКОНАННЯ ЗАВДАННЯ ТА ОРГАНІЗАЦІЇ

ІНФОРМАЦІЙНОГО ДВОІДНИКА

1.1 Поняття Інформаційно – пошукової системи
Інформаційно – пошукові системи – автоматизовані системи, призначені

для зібрання, пошуку, оброблення, збереження та видавання інформації за допомогою технічних засобів. До них належать: інформ. масиви (бази і банки даних, інтернет-системи), носії інформації (магнітні, оптичні тощо), програмне й тех. забезпечення. Первісно їх застосовували для впорядкування інформ. потоків (термін «інформ. пошук» використовують від 1950-х рр.), полегшення доступу до книг, журналів та ін. документів у архівах, картотеках, б-ках держ. установ, наук. і навч. закладів, публіч. б-ках тощо, знач. поширення І.-п. с. набули у процесі комп'ютеризації сусп-ва, зокрема зі створенням мережі Інтернет.

Основу І.-п. с. становлять інформ. моделі, що описують і регламентують

інформацію за допомогою певних алгоритмів і процедур. Залежно від характеру інформації розрізняють документогр. (містять бібліогр. описи, реферати статей, ключові слова із журналів, наук. збірників, монографій, патентів та ін.), фактогр. (уніфіков. фактогр. відомості про предметні об'єкти) та інтегров. І.-п. с. Прикладами конкрет. документогр. І.-п. с. є покажчики у книгах, бібліотечні каталоги, фактогр. – телефонні довідники, адресні книги, каталоги виробів.

Методи інформ. пошуку: адресний (за суто формал. ознаками, вказаними

у запиті), семантич. (за значенням), документал. (поділяється на бібліотеч. і бібліогр.), фактогр. (документально-фактогр. і фактологічний). Для його здійснення користувач формує інформ. запит, відповідно до якого І.-п. с. переглядає всі доступні інформ. одиниці і відбирає документи, що відповідають запиту. Ефективність І.-п. с. оцінюють за пошук. відповідністю – часткою відповід. документів, відібраних за запитом, пошук. якістю – часткою отриманих системою відповід. запиту документів серед заг. числа документів у збірці, та швидкістю дії. Пошук в Інтернеті здійснюють пошук. сервери. Використовуючи їх, можна подати запит, у відповідь на який сервер

видає список посилань (адреси) на електронні джерела, при цьому кожна

адреса відіграє роль гіперпосилання, активізуючи яке, можна відкрити відповідну сторінку. За принципом дії розрізняють пошук. каталоги й індекси. Каталоги таких серверів – темат. рубрикатор верхнього рівня, індекси працюють як абеткові вказівники (запит роблять у полі пошуку у вигляді послідовності ключових слів, що відповідають змісту необхід. інформації). Нині найвідомішим міжнар. пошук. сервером в Інтернеті є «Google» (станом на 2011 – 84,6 % запитів), укр. – «Мета» (засн. 1998 у Нац. тех. ун-ті «Харків. політех. ін-т», підтримує укр., рос., англ. морфологію).

Окрім наук. і пізнавал. функцій, І.-п. с. мають велике практичне значення,

зокрема в оперативно-розшук. діяльності. І.-п. с. органів внутр. справ поділяють на картк. обліки осіб, подій і фактів та автоматизов. банки даних оперативно-розшук. й профілакт. призначення. Вони містять дані про осіб, які скоїли злочини, оголошені в розшук, визнані судами особливо небезпеч. рецидивістами та ін., нерозкриті злочини, викрадені, нерозшукані, вилучені предмети та речі, зброю, автотранспорт, предмети антикваріату тощо. Закон України «Про оперативно-розшукову діяльність» (1992) гарантує законність, достовірність та надійність захисту інформації від несанкціонов. доступу – за надання і розголошення оперативно-розшук. інформації особи, яким ця інформація була довірена у служб. справах, несуть відповідальність згідно з законодавством. Відомості, що стосуються особистого життя людини і не містять інформації про вчинення заборонених законом дій, вилучають з І.-п. с.

1.2 Огляд аналогів інформаційних довідників
Довідник документально орієнтаваної бази даних redis Redis commands

це одне з вікон на офіційному сайті проекту, метою цього розділу є ознайомлення чайників та вже досвітчених користувачів з командами redis.

Redis — розподілене сховище пар ключ-значення, які зберігаються в

оперативній пам'яті, з можливістю забезпечувати довговічність зберігання за бажанням користувача. Це програмне забезпечення з відкритим сирцевим кодом написане на ANSI C. Розробка Redis фінансується VMware. Сирцеві тексти проекту поширюються в рамках ліцензії BSD.

У самому ж довідкику дані відображаються на веб-сторінці, серед них ви

можете побачити короткий опис функціоналу команди, свідчення про коректне її виконання, приклади застосування та реалізації на практиці.

Також у довіднику є пошуковий рядок, який знайде вам потрібну команду

та фільтрація команд за їх групуванням функціоналу по призначенню :



Рис 1.1 – Інтерфейс командного довідника redis




Рис 1.2 – Пошуковий рядок




Рис 1.3 Система фільтрації команд за типом використання

1.3 Аналіз різновидів маркування пластику
Маркування - це «паспорт» матеріалу. Воно дає зрозуміти, який саме тип

пластику перед нами і що з ним далі робити, як його можна (або ні) переробити. Якщо немає маркування - ми «депортуємо» пластик на високотемпературне спалювання. ... Зазвичай маркування розміщене на дні пляшки або на задній етикетці упаковки.



Рис 1.4 – Маркування пластику

Завдяки маркуванню людина може класифікувати з якого типу

паластику зроблена та чи інша річ та зрозуміти чи підходить їй матеріал для використання в подальших цілях. Якщо за маркуванням пластик не збігається з методом його використання – товар є неякісним та його потрібно замінити на інший, виготовлений з пластику який підходить для виготовлення даної продукції.

1.4 Представлення даних інформаційного довідника
Кожна Інформаційно-пошукова система взаємодіє з певними сховищами

даних, оскільки в цьому й полягає її основна функція. В поставленому запитані роль такого сховища відіграє інформаційний довідник маркування пластику.

Для реалізації цього сховища було вирішено створити реляційну базу

даних, яка б відображала дані довідника. В цій базі даних дані зберігаються

в кількох таблицях, а операції з даними формуються на законах реляційної алгебри.

База даних розроблена для виконання поставленого завдання містить

таблиці, які відображають інформацію про маркування пластику та інші його характеристики, наприклад : вагу пластику , назву предмету, його айді, підлягає він переробці чи ні, якщо підлягає то якій саме та врешті решт його маркування та інформацію, яка в ній зашифрована.

Кількість пластмасових виробів не буде обмежуватись тільки тими, що

уже будуть в довіднику, а буде постійно збільшуватись. Для цього потрібно реалізувати функції : Додавання , Видалення , та редагування даних. І для того, щоб, коли кількість пластику буде занадто велика, для комфортної роботи з даними про окремі вироби потрібно реалізувати пошук віддільного елементу.

2 РОЗРОБКА СКЛАДОВИХ СТРУКТУРНОЇ СХЕМИ ІПЗ

2.1 Обгрунтування вибору ПЗ для виконання курсової роботи

Для розробки програмного забезпечення було вирішено використати

пропрієтарний текстовий редактор Sublime Text 3 зважаючи на те що це найпростіше середовище для роботи з PHP яку я обрав для того, щоб зробити веб – застосунок для роботи з створеною базою даних, для створення якої та реалізації локального серверу я обрав Denwer, тому, що він перевірений часом та інформації по його використанню в інтернеті достанньо для реалізації даного проєкту.

Denwer – джентльменський набір Web-розробника – набір дистрибутивів

(локальний сервер WAMP) та програмна оболонка, призначені для створення та налагодження сайтів (веб-додатків, іншого динамічного вмісту інтернет-сторінок) на локальному ПК (без необхідності підключення до мережі Інтернет) під керуванням Windows.

Також я обрав саме це ПЗ, тому, що з роботою в Visual Studio та її

вбудованою можливістю створення локального серверу та бази даних,

результат був не коректним та не задовільняв вимоги курсової роботи та мої особисті амбіції. Спроби налаштувати коректну роботу програми не дали ніякого результату тому роботу було закинуто з реалізовною програмою на якій не працювали будь-які споби спільної роботи з базою даних та таблицями.

Саме тому було вирішено змінити середовище та мову програмування

для реалізації завдання даного курсового проєкту

2.2 Створеннялогічної схеми БД (Інформаційного довідника)

База даних міститиме три таблиці – marks, recyklings, plastics де :


marking - міститиме дані про марування пластику, інформацію яка зашифрована в маркуванні та кодовому позначенні.

recykling – містить дані про переробку пластику, який пластик можна перероблювати чи ні, якщо так то як саме переробити

plastic – містить загальні відомості про пластик : його вагу , назву , айді ,

маркування, та властивості переробки. Тобто містить дані також з 2-ох попрередніх таблиць



Рис 2.1 – Структура БД

Опис кожної таблиці :

Таблиця marks :

mark_id INT(2) : Кодове позначення кожного типу маркування

mark_name VARCHAR(40) : Назва кожного типу маркування

Таблиця recyklings :

product _id INT(2) : Кодове позначення кожного типу переробки

product_name VARCHAR(40) : Назва кожного продукційного предмету виготовленого пілся переробки

recykling_ability TYNIINT(1) : Відомість про те чи можна преробити пластик чи ні.

Таблиця pastics :

plastic_id INT(2) : Кодове позначення кожного пластмасового предмету

plastic_name VARCHAR(40) : Назва кожного пластикового предмету

plastic_mass FLOAT( ) : Маса пластикового предмету

mark_idINT(2) : Кодове позначення кожного типу маркування

product _idINT(2) : Кодове позначення кожного типу переробки

2.3 Структурна схема Інферфейсу програмного забебечення

В даній схемі зображаєтьсяпринцип роботи інтерфейсу та взаємодії користувача з ним.



3 РЕАЛІЗАЦІЯ ПРОГРАМИ

3.1 Розробка прикладного програмного забезпечення

Для розроблення бази даних було використано програмне забезпечення

Denwer – система створення локального серверу, за допомогою якого я можу

створити локальний сервер на якому буде знаходитись база даних, яку відповідно найпростіше реалізувати буде в PhpMyAdmin.

Далі в Sumbline Text 3 буде реалізовуватись програмний код майбутнього

веб застосунку.

Реалізація Меню









Browse plastics





Browse recyclings





Browse marks









Створення таблиць за допомогою SQL запиту

-- Table structure for table `marks`

--

CREATE TABLE IF NOT EXISTS `marks` (

`mark_id` int(2) unsigned NOT NULL AUTO_INCREMENT,

`mark_name` varchar(40) COLLATE utf8_bin NOT NULL,

PRIMARY KEY (`mark_id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--

-- Table structure for table `plastics`

--

CREATE TABLE IF NOT EXISTS `plastics` (

`plastic_id` int(2) unsigned NOT NULL AUTO_INCREMENT,

`plastic_name` varchar(40) COLLATE utf8_bin NOT NULL,

`plastic_mass` float NOT NULL,

`mark_id` int(2) DEFAULT NULL,

`product_id` int(2) DEFAULT NULL,

PRIMARY KEY (`plastic_id`),

KEY `mark_id` (`mark_id`),

) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1 ;

-- --------------------------------------------------------

--

-- Table structure for table `recyclings`

--

CREATE TABLE IF NOT EXISTS `recyclings` (

`product_id` int(2) unsigned NOT NULL AUTO_INCREMENT,

`recycling_ability` tinyint(1) NOT NULL,

`product_name` varchar(40) COLLATE utf8_bin NOT NULL,

PRIMARY KEY (`product_id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1 ;

Реалізація підключення до бази даних


$servername = "localhost";

$username = "root";

$password = "";

$dbname = "plastic";

$conn = new mysqli($servername, $username, $password, $dbname);

if ($conn->connect_error) {

die("Connection failed: " . $conn->connect_error);

}

?>

Запит на дозвіл до таблиці palstic

$sql = "SELECT plastics.plastic_id, plastics.plastic_name, plastics.plastic_mass, marks.mark_name, recyclings.product_name

FROM `plastics`

INNER JOIN `marks` ON plastics.mark_id = marks.mark_id

INNER JOIN `recyclings` ON plastics.product_id = recyclings.product_id";

$result = mysqli_query($conn, $sql);

$plastic_info = array();

while ($row = $result->fetch_row()) {

$info = array('plastic_id' => $row[0], 'plastic_name' => $row[1], 'plastic_mass' => $row[2], 'mark_name' => $row[3], 'product_name' => $row[4]);

array_push($plastic_info, $info);

}

?>

3.2 Інтерфейс сайту та настанова користувча

Інтерфейс сайту є інтуєтивно зрозумілим для будь-якого користувача,

якого при переході на сайт зустріне меню з даними якої він буде працювати.

Після вибору таблиці, вибір дії над нею. Після вибору дії користувача зустрічає вікно відповідної дії та потрібні дані для роботи з нею які він повинен ввести в відповідні поля до кожної змінної.



Рис 3.1 – Меню сайту



Рис 3.2 – Вибір елементу, та дії над ним



Рис 3.3 – Вівд даних для створення нового елементу

ВИСНОВКИ

В ході виконання даної курсової роботи я побачив багато нового

програмного функціоналу та навчився застосовувати його у створенні невеликого проекту у вигляді інформаційного довіднику про маркування та позначення пластику.

У першій частині роботи я аналізував інформацію потрібну для виконання цього проекту та правильного розуміння, планування та оформлення роботи. Тут я визначив як саме повинна виглядати програма, для комфортної та коректної роботи з базою даних довідника. Які саме дані повинен містити довідник та у яких таблицях. Все це стало можливим після детального вивчення теми маркування пластику та розлядку аналогічних довідників.

У другій частині роботи я приділив усю свою увагу планування майбутньої програми та вибору програмного забезпечення, яке накраще підійде для виконання моїх потреб у реалізації даного проекту.

В третій частині починається власне створення бази даних, яка містить три таблиці, в яких в свою чергу знаходяться дані для довідника. Також в третій частині розглядається створення сайту для роботи з довідником – базою даних. Ще в цьому розділі я графічно зобразив принцип роботи сайту та показав його інтерфейс в роботі на рисунках.

ПЕРЕЛІК ВИКОРИСТАНОЇ ЛІТЕРАТУРИ

1. Стаття по маркуванню пластику та визначенню типу пластику на упаковках харчових продуктів “Позначки на пластику: що потрібно знати, коли Ви купуєте воду в пластиковій пляшці”. Дата оновлення: 2016р.

http://solvetpv.lviv.ua/poznachky-na-plastyku-shho-potribno-znaty-koly-vy-kupuyete-vodu-v-plastykovij-plyashtsi/

2. Офіційний сайт REDIS.IO. Дата оновлення : 20.12.2021

https://redis.io/

3. Офіційний сайт Denwer . http://www.denwer.ru/

4. Офіційний сайт Sumbline Text https://www.sublimetext.com/

Додаток А

Лістинг коду функцій delete, update, create

Create.php


?>






$servername = "localhost";

$username = "root";

$password = "";

$dbname = "plastic";

$conn = new mysqli($servername, $username, $password, $dbname);

if ($conn->connect_error) {

die("Connection failed: " . $conn->connect_error); Продовження додатку А

}

?>





<< Назад
















Create










Product Name








echo ""

?>

Продовження додатку А





















<< Назад



<< Назад
















Update




Продовження додатку А








echo "Product Id";

?>












echo "Product Name";

?>








echo ""

?>



















Кінець додатку А

<< Назад


























foreach ($plastic_info as $value) {

echo "";

foreach($value as $v) {

echo "";

}

echo "";

echo "";

echo "";

}

?>



Mark idMark nameDeleteUpdate
$v";

echo "Delete";

echo "
";

echo " Продовження додатку Б

$value['mark_id'] ,"' type='submit' >Update";

echo "




Add Mark







<< Назад
































foreach ($plastic_info as $value) {

echo "";

foreach($value as $v) {

echo "";

}

echo "";

echo "";

echo "";

}

?>



Plastic idPlastic namePlastic massMark nameProduct nameDeleteEdit
$v"; Продовження додатку Б

echo "Delete";

echo "
";

echo "Update";

echo "




Add plastic







<< Назад




























foreach ($plastic_info as $value) {

echo "";

foreach($value as $v) {

echo "";

}

echo "";

echo "";

echo "";

}

?>



Product idProduct nameProduct AbilityDeleteUpdate
$v";

echo "Delete";

echo "
";

echo "Кінець додатку Б

$value['product_id'] ,"' type='submit' >Update";

echo "




Add product









написать администратору сайта