Логіко-функціональна схема роботи системи, Розробка алгоритмів та програмна реалізація основних процедур системи - Гнучка система інформаційної підтримки підвищення кваліфікації персоналу ДП №9
Далі наводиться загальний вигляд (рис. 5.3) логіко-функціональної схеми роботи системи.
Рис. 5.3 Логіко-функціональна схема роботи системи тестування
Як видно зі схеми робота в системі чітко поділена за повноваженнями і не дає можливості до втручання в роботу будь-кого, хто не вповноважений до проведення або проходження тестування, а також перегляду статистичних даних чи коригування списку користувачів.
Розробка алгоритмів та програмна реалізація основних процедур системи
Більшість алгоритмів для реалізації базових процедур були побудовані на основі досвіду використання обраних мов програмування, в тому числі і з використанням відкритих інформаційних джерел.
Алгоритми, що потребують окремого опису будуть надані в наступній послідовності (згідно з планом розробки): процедура авторизації в системі, процедура завершення роботи з системою, базові процедури роботи з користувачами системи, процедури роботи з генерації тестових запитань.
Процедура авторизації:
<?php
Session_start();# початок роботи в системі
If($_SESSION['user_id']){ # якщо користувач зареєстрований, то вінheader("Location: index. php"); # переходить до своєї сторінки
Exit;
}
If ( $_POST['login'] &;&; $_POST['pass'] ) {
# за наявності заповнених полів форми з'єднатися з базою даних
Mysql_connect("localhost","root","");
Mysql_query("SET character_set_client = cp1251");
Mysql_query("SET character_set_connection = cp1251");
Mysql_query("SET character_set_results = cp1251");
Mysql_select_db("tests");
#запит щодо наявності користувача в базі та збереження результату
#на період дії сесії (потрібно для роботи з багато-сторінковим
# інтерфейсом)
@$result = mysql_query("SELECT id, name from users where login='".$_POST['login']."' and pass='".$_POST['pass']."'");
@$user_id = mysql_result($result,0,"id");
@$user_name = mysql_result($result,0,"name");
If($user_id){
$_SESSION['user_id'] = $user_id;
$_SESSION['user_name'] = $user_name;
Header("Location: index. php");
Exit;
}else{
$msg="Логин или пароль заданы неверно!";
}
}
?>
Наведена процедура дозволяє користувачам системи, після реєстрації, знаходитись певний час в робочому просторі, не потребуючи при цьому повторного вводу реєстраційнах даних при переходах між різними сторінками системи.
Важливим елементом системи є й обов'язкова процедура завершення роботи:
<?php
Session_start();
Session_destroy();
Header("location: index. php");
Exit();
?>
Базові процедури роботи з користувачами системи тестування:
# додання користувача у базу
If ($_REQUEST['do'] == "add_user") {
If ($_REQUEST['name'] &;&; $_REQUEST['tabnum']) {
Mysql_query("INSERT into users set name='$_REQUEST[name]', tabnum='$_REQUEST[tabnum]', date=NOW()");
Header("Location: users. php");
Exit();
}
}
# генерація пари "логін-пароль"
If ($_REQUEST['gen']) {
$chars="qazxswedcvfrtgbnhyujmkiolp1234567890QAZXSWEDCVFRTGBNHYUJMKIOLP";
$loginmax=6;
$passmax=12;
$size=StrLen($chars)-1;
$setlogin = null;
$setpass = null;
While($loginmax--) $setlogin.=$chars[rand(0,$size)];
While($passmax--) $setpass.=$chars[rand(0,$size)];
Mysql_query("UPDATE users set login='$setlogin', pass='$setpass', testid='$_REQUEST[testid]' where id='$_REQUEST[gen]'");
Header("Location: users. php");
Exit();
}
Процедури генерації тестових завдань:
If($_REQUEST['do'] == 'add_test'){
if($_REQUEST['testname']){
Mysql_query("INSERT INTO tests SET testname='".$_REQUEST['testname']."', cnt='".$_REQUEST['cnt']."', done='".$_REQUEST['done']."'");
$test_id = mysql_insert_id();
If($test_id){
#тест добавлен
Header("location: generator. php");
Exit();
}else{
#тест не добавлен
}
}else{
}
}elseif($_REQUEST['do'] == 'add_quest'){
If($_REQUEST['testid'] &;&; $_REQUEST['quest']){
Mysql_query("INSERT INTO questions SET testid='".$_REQUEST['testid']."', quest='".$_REQUEST['quest']."'");
$qwid = mysql_insert_id();
If($qwid){
#вопрос добавлен
$_SESSION['view_last_test'] = $_REQUEST['testid'];
Header("location: generator. php");
Exit();
}else{
#вопрос не добавлен
}
}else{
#не задан тест айди или имя вопроса
}
}elseif($_REQUEST['do'] == 'add_ans'){
If($_REQUEST['qwid'] &;&; $_REQUEST['ans']){
Mysql_query("INSERT INTO answers SET qwid='".$_REQUEST['qwid']."', 'right'=0, ans='".$_REQUEST['ans']."'");
$ansid = mysql_insert_id();
#ответ добавлен
$_SESSION['view_last_quest'] = $_REQUEST['qwid'];
$_SESSION['view_last_test'] = $_REQUEST['last_test'];
Header("location: generator. php");
Exit();
}else{
#не задан вопрос найди или имя ответа
}
}
Більш докладно усі процедури наведені в додатку.
Похожие статьи
-
Функціональне призначення та технологічні особливості розробки Метою дипломної роботи є розробка гнучкої системи підтримки підвищення кваліфікації...
-
Метою дипломної роботи є розробка гнучкої системи інформаційної підтримки підвищення кваліфікації персоналу ДП№9. Що фактично означає створення...
-
Найменування та галузь використання Найменування розробки: гнучкої системи інформаційної підтримки підвищення кваліфікації персоналу ДП№ 9. Розроблена...
-
ВСТУП - Гнучка система інформаційної підтримки підвищення кваліфікації персоналу ДП №9
Сучасний світ створює нові умови і потребує пришвидшення у всіх галузях, що їх опанувало людство. Інформаційний простір не виключення з цього правила, а...
-
Модуль PHP PHP (англ. PHP:Hypertext Preprocessor -- PHP:гіпертекстовий препроцесор), попередньо: Personal Home Page Tools -- скриптова мова...
-
Системма керування бамзами дамних (СКБД) -- комп'ютерна програма чи комплекс програм, що забезпечує користувачам можливість створення, збереження,...
-
Вступ у PHP та MySQL PHP - це скрипт-мова (scripting language), що вбудовується в HTML, яка інтерпретується та виконується на сервері. Простіше за все...
-
MySQL, Термін - Гнучка система інформаційної підтримки підвищення кваліфікації персоналу ДП №9
Термін MySQL -- вільна система керування реляційними базами даних. Ця система керування базами даних (СКБД) з відкритим кодом була створена як...
-
Докладний опис мови - Гнучка система інформаційної підтримки підвищення кваліфікації персоналу ДП №9
З точки зору системи типізації, PHP є мовою програмування з динамічною типізацією. Немає необхідності явного визначення типу змінних, хоча така...
-
ВИСНОВКИ - Гнучка система інформаційної підтримки підвищення кваліфікації персоналу ДП №9
У процесі виконання дипломної роботи було розроблено клієнт-серверну систему інформаційної підтримки підвищення кваліфікації персоналу ДП№9. Розроблена...
-
При захисті від зовнішнього випромінювання основні зусилля повинні бути спрямовані на попередження переопромінення персоналу шляхом збільшення відстані...
-
Вся система побудована на базі використання провідника як засобу графічного відображення, тобто побудова інтерфейсу відбувалась за допомогою таких...
-
Робота з формами. У цьому прикладі показано як у PHP легко обробляти дані з HTML - форм. Створимо простий HTML файл. <HTML> <HEAD> <TITLE>Запит...
-
Модель клієнт-серверної взаємодії визначається перш за все розподілом обов'язків між клієнтом та сервером. Логічно можна виокремити три рівні операцій:...
-
Веб-сервер (англ. Web Server) -- це сервер, приймаючий HTTP-запити від клієнтів, зазвичай веб-браузерів, який видає їм HTTP-відповіді, зазвичай разом з...
-
Термін База даних (БД) -- впорядкований набір логічно взаємопов'язаних даних, що використовується спільно, та призначений для задоволення інформаційних...
-
У декількох словах - на PHP можна зробити усе, що можна зробити за допомогою СGI-программ. Наприклад: обробляти дані з форм, генерувати динамічні...
-
При розробці великих і нетривіальних веб-застосунків з використанням JavaScript, критично важливим є доступ до інструментів зневадження. Оскільки...
-
Використання в HTML - Гнучка система інформаційної підтримки підвищення кваліфікації персоналу ДП №9
При використанні в рамках технології DHTML JavaScript код включається в HTML-код сторінки і виконується інтерпретатором, вбудованим в браузер. Код...
-
Термін JavaScript -- назва реалізації стандарта мови програмування ECMAScript компанії Netscape, базується на принципах прототипно-орієнтованого...
-
XHTML - Гнучка система інформаційної підтримки підвищення кваліфікації персоналу ДП №9
HTML, ймовірно, найбільш успішна мова розмітки документів у всьому світі. Проте, коли світові представили XML, було вирішено створити нову версію HTML,...
-
HTML 5 -- це наступна значна переробка стандарту HTML. Робота над створенням специфікації, відома під назвою "Web Applications 1.0", розпочата WHATWG в...
-
Для поліпшення взаємодії, SGML вимагає аби кожна похідна мова (HTML у тому числі) визначала свою кодову таблицю для кожного документа, яка складається з...
-
Версії - Гнучка система інформаційної підтримки підвищення кваліфікації персоналу ДП №9
Тім Бернерс-Лі представив HTML в дослідницькому центрі CERN в Женеві в 1989 році. HTML (без номера версії, 3 листопада 1992): Найперша версія,...
-
Термін HTML (англ. HyperText Markup Language -- Мова розмітки гіпертексту) -- стандартна мова розмітки документів у Всесвітній павутині. Більшість...
-
MySQL має подвійне ліцензування. MYSQL може розповсюджуватися відповідно до умов ліцензії GPL. Але за умовами GPL, якщо якась програма використовує...
-
Трирівнева клієнт-серверна архітектура, яка почала розвиватися з середини 90-х років, передбачає відділення прикладного рівня від управління даними....
-
Як і з багатьма стандартами, що мають місце в IT-індустрії, з мовою SQL виникла проблема, що у минулому багато виробників ПЗ з використанням SQL...
-
Пожежна безпека - Гнучка система інформаційної підтримки підвищення кваліфікації персоналу ДП №9
Відповідно до ОНТП 24-86 будинок, де встановлені комп'ютери за вибухопожежною та пожежною небезпекою відноситься до категорії В, за правилами улаштування...
-
Історія - Гнучка система інформаційної підтримки підвищення кваліфікації персоналу ДП №9
На початку 1970-х років в одній з дослідницьких лабораторій компанії IBM була розроблена експериментальна реляційна СУБД System R, для якої потім була...
-
Небезпечні й шкідливі виробничі фактори по природі виникнення діляться на наступні групи: - фізичні; - хімічні; - психофізіологічні; - біологічні. У...
-
ОХОРОНА ПРАЦІ - Гнучка система інформаційної підтримки підвищення кваліфікації персоналу ДП №9
Охорона праці - система законодавчих актів, постанов, організаційних, санітарних, технічних мір, що забезпечують безпечні для здоров'я умови праці на...
-
Метою дипломної роботи є створення гнучкої системи інформаційної підтримки підвищення кваліфікації персоналу ДП№9. Запропонована система призначена для...
-
Мова SQL, Термін - Гнучка система інформаційної підтримки підвищення кваліфікації персоналу ДП №9
Термін SQL (англ. Structured query language -- мова структурованих запитів) -- декларативна мова програмування для взаємодії користувача з базами даних,...
-
Основні поняття Архітектура клієнт-сервер є одним із архітектурних шаблонів програмного забезпечення та є домінуючою концепцією у створенні розподілених...
-
Загальні відомості Теплова електростанція (ТЕС) - це електростанція, що виробляє електричну енергію в результаті перетворення теплової енергії, що...
-
Для запуску розробленого програмного продукту необхідна наявність на персо-нальному комп'ютері встановленого Mysql Server (локального), або доступ через...
-
Невід'ємною частиною життя людини є використання теплової та електричної енергії. Ці види енергії використовуються всіма та в усіх видах діяльності, без...
-
Відомі два підходи до організації інформаційних масивів: файлова організація та організація у вигляді бази даних. Файлова організація передбачає...
-
Розгалужені алгоритми бувають двох типів: Повні (If...Else) і неповні (If). Неповне розгалуження. Приклад: If (x>100) Cout << x <<endl;...
Логіко-функціональна схема роботи системи, Розробка алгоритмів та програмна реалізація основних процедур системи - Гнучка система інформаційної підтримки підвищення кваліфікації персоналу ДП №9