Логотип НПЦ
Навчально-практичний центр «Електромонтер з ремонту та обслуговування електроустаткування»
На базі ДПТНЗ «Івано-Франківське вище професійне училище сервісного обслуговування техніки»
WIKI / Документація системи
IDAP WIKI
Система кваліфікаційного тестування · Інструкція встановлення та адміністрування

WIKI-сторінка для встановлення, запуску та базового супроводу платформи

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

WIKI build 1 · оновлено 01.05.2026

1. Загальний опис

IDAP — це самодостатня PHP/MySQL-платформа для організації кваліфікаційного тестування у закладах професійної освіти. Розгортається на типовому LAMP/LEMP-хостингу за 5 кроків майстра встановлення.

4 типи питань Одна відповідь, кілька відповідей, matching, true/false.
Трудові функції Прив'язка питань до професійного стандарту.
Генерація варіантів Автоматичне формування та ручне редагування.
Експорт у Excel Вивантаження результатів тестування.
Аналітика Статистика за варіантами, питаннями та складністю.
Багатомовність Українська / англійська з можливістю розширення.
Гнучкі параметри Час, прохідний поріг, максимальний бал.
Зображення Завантаження ілюстрацій до питань.

2. Технічні вимоги до сервера

Майстер встановлення автоматично перевіряє вимоги на першому кроці та показує, що потрібно виправити.

Компонент Вимога
PHP 7.4 або новіше, рекомендовано 8.0+
MySQL / MariaDB MySQL 5.7+ або MariaDB 10.3+
Розширення PHP mysqli mbstring session fileinfo
Веб-сервер Apache 2.4+ / Nginx 1.18+ з PHP-FPM
Дисковий простір Мінімум 50 МБ без урахування зображень питань
Кодування БД utf8mb4_unicode_ci
Права запису Коренева папка та uploads/ , рекомендовано chmod 755

3. Підготовка до встановлення

3.1. Створення бази даних

Через cPanel, ISPmanager, DirectAdmin або phpMyAdmin створіть нову порожню базу даних з кодуванням utf8mb4_unicode_ci .

CREATE DATABASE testing_system
  CHARACTER SET utf8mb4
  COLLATE utf8mb4_unicode_ci;
  • Збережіть хост БД, назву бази, логін користувача БД і пароль.
  • Надайте користувачу повні права на створену базу.

3.2. Завантаження файлів на сервер

Розпакуйте архів та завантажте весь вміст у кореневу папку сайту: public_html , www , htdocs або підпапку домену.

your-site/
├── install.php
├── index.php
├── login.php
├── submit.php
├── results.php
├── lang.php
├── lang/
│   ├── uk.php
│   └── en.php
├── install/
│   ├── schema.sql
│   └── seed_settings.sql
├── admin/
├── assets/bootstrap/
└── uploads/
Увага: папка uploads/ повинна мати права 755, інакше система не зможе додавати зображення до питань.

4. Покрокове встановлення

Відкрийте у браузері адресу https://ваш-домен.ua/install.php . Майстер проведе через 5 кроків.

Перевірка системи

Перевіряються PHP, розширення, права запису та доступність uploads/ .

Параметри БД

Введіть host, port, назву бази, користувача і пароль. Натисніть «Перевірити з'єднання».

Створення таблиць

Інсталятор створює таблиці системи. Використовується CREATE TABLE IF NOT EXISTS .

Налаштування системи

Створіть адміністратора, виберіть мову, вкажіть професію, час тесту, поріг і максимальний бал.

Завершення

Створюються config.php , install.lock та службові записи для першого входу.

Таблиці, які створює інсталятор

Таблиця Призначення
labor_functions Трудові функції з професійного стандарту
questions Питання тесту з типом, складністю та балами
answers Варіанти відповідей до питань
variants Варіанти тестів / білети
variant_questions Зв'язок «варіант ↔ питання»
users Учасники тестування
results Відповіді учасників та бали
settings Загальні налаштування системи
admin_users Адміністратори системи

5. Дії одразу після встановлення

Обов'язково: після успішної установки видаліть з сервера install.php та папку install/ . Файл install.lock не видаляйте.
Файл / папка Рекомендовані права Чому
config.php 644 Містить пароль бази даних
uploads/ 755 Запис зображень
install.lock 644 Не видаляти
admin/ 644 Тільки читання для файлів

6. Адміністрування

Розділ додано на майбутнє: тут можна описувати роботу адміністратора та вставляти скріншоти адмінпанелі.

Перший вхід в адмінпанель

Відкрийте адресу https://ваш-домен.ua/admin/ та введіть логін і пароль, створені під час встановлення.

Адміністратори Перевірка активності облікового запису та додавання резервних адміністраторів.
Трудові функції Додавання кодів і назв трудових функцій згідно професійного стандарту.
Питання Створення банку питань, вибір типу, складності, балів і зображень.
Учасники Додавання здобувачів, логінів, паролів та призначених варіантів.
Результати Перегляд статусу, відсотків, балів та експорт результатів у Excel.
Налаштування Мова, назва професії, тривалість, прохідний поріг і максимальний бал.

Блок зображень для WIKI

Замініть файли у папці admin-screens/ або змініть шляхи до зображень у HTML. Клік по картці відкриває зображення у модальному перегляді.

Адмінпанель — головний екран
Адмінпанель — головний екран
Налаштування системи
Налаштування системи
Трудові функції
Трудові функції
Банк питань
Банк питань
Додавання питання із зображенням
Додавання питання із зображенням
Варіанти тесту
Варіанти тесту
Учасники тестування
Учасники тестування
Результати та експорт
Результати та експорт

7. Базовий цикл роботи з системою

Внесення трудових функцій

Адмінпанель → «Трудові функції» → «Додати». Вказується код і повна назва.

Додавання питань

Адмінпанель → «Питання» → «Додати питання». Вибір типу, функції, складності й балів.

Створення варіантів

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

Реєстрація учасників

Для кожного учасника задається ПІБ, логін, пароль і призначений варіант.

Проведення тестування

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

Експорт результатів

Адмінпанель → «Результати»: перегляд статусу та вивантаження XLSX.

8. Безпека системи

  • bcrypt: усі паролі хешуються через password_hash з PASSWORD_DEFAULT .
  • SQL-захист: запити виконуються через prepared statements.
  • XSS-захист: дані у HTML проходять через htmlspecialchars .
  • Сесії: тайм-аут адміністратора після 4 годин неактивності.
  • Брутфорс: затримка 1 секунда при невдалому вході.
Рекомендовано: увімкнути HTTPS, робити щомісячний бекап БД, не використовувати простих паролів та за потреби обмежити доступ до /admin/ за IP.

9. Перевстановлення та усунення несправностей

Як перевстановити

Видаліть install.lock і config.php , завантажте install.php назад та відкрийте його у браузері. Дані в БД не очищуються автоматично.

Симптом Що зробити
«DB connection failed» Перевірте логін, пароль, хост у config.php і роботу MySQL.
Білий екран Увімкніть display_errors або перевірте логи сервера.
«Не вдалось зберегти config.php» Тимчасово встановіть права 755 на кореневу папку та повторіть установку.
Не завантажуються зображення Перевірте права uploads/ : 755 + writable для PHP.
Кракозябри замість українських літер Перевірте кодування БД: utf8mb4_unicode_ci .
Забули пароль адміна Через phpMyAdmin виконайте DELETE FROM admin_users; та видаліть admin_config.php .

10. Додавання нової мови

  1. Скопіюйте lang/uk.php під новою назвою, наприклад lang/de.php .
  2. Перекладіть значення у масиві. Ключі не змінюйте.
  3. Збережіть файл у UTF-8 без BOM.
  4. Перейдіть в адмінпанель → Налаштування → Мова.
https://ваш-домен.ua/?lang=de

11. Контрольний список перед запуском

  • Видалено install.php з сервера.
  • Видалено папку install/ .
  • Встановлено SSL-сертифікат HTTPS.
  • Зроблено перший бекап БД.
  • Створено резервного адміністратора.
  • Додано трудові функції згідно професійного стандарту.
  • Додано базовий пул питань, рекомендовано 100+.
  • Створено та перевірено перший варіант тесту.
  • Проведено тестовий прохід під обліковим записом учасника.
  • Перевірено експорт результатів у Excel.