додаванні або зміні функцій сервера не потрібно модифікація коду клієнта, що істотно спрощує процес модернізації і найбільш повно відповідає модульним принципом побудови програми [11, 12].
Існує кілька видів реалізації серверної частини додатки на основі web-сервера: серверний модуль, CGI-додаток, середовища попередньої обробки сторінок, вбудовувані програми. Основне їх призначення - організувати інтерактивну взаємодію з користувачем на основі динамічного гіпертексту (DHTML). Вибір конкретного методу обумовлюється різними факторами, зокрема, при розробці проекту нами були висунуті наступні вимоги до сервера:
· мультиплатформеність і переносимість програмного коду (як і до всього комплексу в цілому) - серверне ядро ??повинне без особливих проблем і без зміни початкового коду функціонувати як на різних системних платформах (Windows, Linux), так і web-Сервер (IIS, Aphache);
· висока продуктивність;
· забезпечення захищеного з'єднання з клієнтом [13, 14].
Після аналізу засобів розробки ми прийшли до висновку, що перерахованим вище вимогам сервер буде задовольняти, якщо в якості платформ для розробки вибрати PHP. (PHP: Hypertext Preprocessor) - один з найпотужніших скриптових мов, доступних на ринку. Він дозволяє легко писати скрипти прямо в HTML файлах, і його код буде виконаний транслятором (PHP) на сервері до того, як ця сторінка буде послана в браузер. PHP аналогічний концепції Netscape s LiveWire Pro або Microsoft s ASP (Active Server Pages) але, PHP краще обох продуктів. Багато чого з його синтаксису була запозичена з C, Java і Perl з додаванням деяких унікальних особливостей. Головною метою мови є надання web-розробникам можливості швидкого створення динамічно генеруються сторінок [15, 16].
Для розмітки гіпертекстових документів був вибраний спеціальна мова HTML (Hyper Text Markup Language).
Специфікацією HTML передбачається, що розмічають документ структурно поділяється на дві частини: голову (head) і тіло (body). У голові документа зазначається інформація про документ, наприклад, назву, коротка анотація, відомості про автора і т.п. Вміст цього розділу HTML-файлу не відображається Web-клієнтом разом з основним текстом, а може бути доступно лише частково і на вимогу користувача. У тілі файлу міститься основний текст документа разом з розміткою, керуючої зовнішнім поданням [17].
Принцип розмітки за допомогою HTML заснований на використанні особливих конструкцій - тегів. У HTML тег (tag, ознака) - спеціальне слово, укладену в кутові дужки. Теги зв'язуються з певним фрагментом документа і вказують спосіб зовнішнього подання змісту цих фрагментів та їх інтерпретації Web-клієнтом [18].
В якості основного web-сервера для розробки ПП був обраний web-сервер Apache.является кросплатформним ПЗ, підтримує операційні системи Linux, BSD, Mac OS, Microsoft Windows, Novell NetWare, BeOS.
Основними достоїнствами Apache вважаються надійність і гнучкість конфігурації. Він дозволяє підключати зовнішні модулі для надання даних, використовувати СУБД для аутентифікації користувачів, модифікувати повідомлення про помилки.
Для реалізації бази даних сайту був вибрав MySQL. MySQL - компактний багатопотоковий сервер баз даних. MySQL портована на велику кількість платформ.
Позитивні сторони пакету MySQL:
· багатопоточність, підтримка декількох одночасних запитів;
· оптимізація зв'язків з приєднанням багатьох даних за один прохід;
· записи фіксованої і змінної довжини;
· ODBC драйвер в комплекті з ісходником;
· гнучка система привілеїв і паролів;
· до 16 ключів в таблиці, кожен ключ може мати до 15 полів;
· підтримка ключових полів і спеціальних полів в операторові CREATE;
· підтримка чисел довгою від 1 до 4 байт (ints, float, double, fixed), рядків змінної довжини і міток часу;
· інтерфейс з мовами C і perl;
· заснована на потоках, швидка система пам'яті;
· утиліта перевірки і ремонту таблиці (isamchk);
· дані зберігаються у форматі ISO8859_1;
· операції роботи з рядками не звертають уваги на регістр символів в оброблюваних рядках;
· псевдоніми застосовні як до таблиць, так і до окремих колонках у таблиці;
· всі поля мають значення за замовчуванням. INSERT можна використовувати на будь-якому підмножині полів;
· легкість управління таблицею, включаючи додавання і видаленн...