Московський Державний Технічний Університет
ім. Н.Е. Баумана
Калузький філія
Кафедра ЕІУ5-КФ
Системи Автоматизованого Проектування
Курсова робота на тему:
В«Файлообмінник з веб-інтерфейсомВ»
Калуга, 2007
Зміст
Введення
Дослідницька частина
Інструменти побудови сторінок
Мови веб-програмування
Методи спілкування клієнта і сервера
Бази даних.
Веб-сервер
Редактори коду
Інструкція програміста.
Системні вимоги
Інструкція по установці
Структура проекту
Опис вихідних кодів
Інструкція користувача.
Висновок.
Список літератури.
Введення
У курсовій роботі була поставлена ​​задача створення файлообмінника з веб-інтерфейсом, з допомогою якого користувачі можуть обмінюватися файлами в мережі.
Мета роботи: показати знання мови веб-програмування PHP, а також засобів HTML, CSS і бази даних MySQL.
Основні функції сайту: завантаження, зміна, видалення файлів з сайту (через веб-інтерфейс), відображення завантажених файлів в зручному вигляді, контрольоване скачування завантажених файлів. Курсовий проект являє собою сайт, готовий до Викладання на відповідному хостингу. Для створення курсового проекту використовувався текстовий редактор EditPlus.
Актуальність поставленого завдання
При появі інтернету у людей виникло безліч проблем. Одна з таких проблем - обмін файлами в мережі. Саме їй я і вирішив зайнятися.
Для обміну файлу між користувачами по мережі існує декілька способів. По-перше, e-mail (пошта). Для пересилки файлів по пошті необхідно знати ящик людини, якому відправляється лист, при цьому розмір пересилаються файлів збільшується на 37%. Це не завжди зручно. По-друге, можна пересилати файли за допомогою сервісу ICQ. Це знову ж таки не зручно, тому потрібна реєстрація обох користувачів в системі та наявність у них клієнтів, що підтримують передачу файлів. Крім того, при допомогою перших 2х способів передати файли можна лише обмеженому числу людей.
Якщо ж потрібно передати файл більшому числу людей, використовують:
1. FTP (File Transfer Protocol). Для цього необхідний FTP-сервер
2. Веб-сайт. Для цього потрібно хостинг, не у всіх він є.
3. Файлообмінник. Найдоступніший спосіб масового розповсюдження файлів. Файлообмінники покликані вирішити наростаючу потребу в обміні файлами для тих, хто з тих чи інших причин не хоче використовувати попередні способи.
Структура пояснювальної записки
Пояснювальна записка складається з вступу, трьох розділів і висновку.
Глава 1 - дослідна частина, яка містить доцільність вибору інструментів побудови веб-сторінок, мови веб-програмування, середовища розробки.
Глава 2 - інструкція програміста, до складу якої входять системні вимоги, інструкція з встановлення файлообмінника, опис структури проекту і докладний опис методів.
Глава 3 - інструкція користувача, яка містить опис способів і прийомів роботи з файлообмінником з точки зору користувача, модератора і адміністратора.
Дослідницька частина
Файлообмінник призначений для розміщення в інтернеті, тому він повинен мати вигляд сайту, складається з окремих сторінок. Для побудови сторінок сайту можна використовувати різні інструменти.
Інструменти побудови сторінок
Традиційно для відображення вмісту сайтів використовується HTML. Абревіатура HTML розшифровується як Hyper Text Markup Language - мова гіпертекстової розмітки. Тобто HTML - не мова програмування, а просто один із засобів для малювання сторіночок. Існує кілька специфікацій мови. У написанні своєї роботи я дотримувався найбільш поширеною в даний час специфікації HTML 4.01 Transitional. Про цю специфікацію можна подивитися на w3c.org
Для поліпшення зовнішнього вигляду HTML-сторіночок застосовують CSS (Cascading Style Sheets) - листи стилів. Існує кілька специфікацій CSS. Різні браузери підтримують різні специфікації CSS.
Браузери
CSS
CSS2
CSS3
MSIE 6.0 SP2
+
-
-
Opera 8.x
+
+
-
Konqueror
+
+
+
Gecko 1.8.x
+
+
+
Я для роботи використовував CSS2, тому його можливостей мені достатньо для створення повноцінних сайтів, а CSS3 поки що підтримується не всіма браузерами.
Для тестування сайту я використовував браузери Опера 8.52 і MSIE. Порівняння характеристик браузерів - це окрема тема, не буду загострювати на ній увагу. Теоретично курсовойпроект сумісний і з іншими браузерами.
Широко використовуються скрипти, написані на JS (JavaScript) і VBS (Visual Basic Script) для виконання деяких простих дій на клієнтському комп'ютері. Вони допомагають змінювати інформацію на сторінці (частіше пов'язану з оформленням), не перезавантажуючи сторінку. Також іноді використовують технологію ActiveX - найчастіше для тих же цілей, що і JS. Зустрічаються й інші застосування ActiveX - Приклад тому webmoney. Іноді творці сайтів роблять використання багатьох наворотів обов'язковим (картинки, скрипти, ActiveX). Це заважає нормальному сприйняттю вмісту сайту. У своєму проекті я вважав недоцільним застосування таких скриптів.
За допомогою таких засобів прийнято розробляти сторінки сайтів. Але статичні сторінки, написані за допомогою цих засобів, не дозволяють здійснювати спілкування сайту і відвідувача. Це дуже зручно реалізується за допомогою мов веб-програмування.
Мови веб-програмування
Різноманітність сайтів в мережі практично неможливо зробити, використовуючи лише статичні сторінки. Щоб зробити інформацію, що відображається на сайті, більш актуальною, інтерактивної, і т.п. потрібно динамічно генерувати вміст сайту, або хоча б окремих його сторінок. Для цього були придумані серверні додатки (CGI) і скрипти, обробляється певним інтерпретатором. Найбільш поширені Perl, PHP і ASP.
На наступні особливості слід звернути увагу при порівнянні (гідності відзначені В«+В», недоліки В«-В»):
Perl
+ вважається найшвидшим мовою
+ найстаріший мова, отже, перевірений часом, прийоми програмування давно відпрацьовані і задокументовані.
- складність виводу HTML-коду
PHP (4)
+ простота інтеграції з HTML і йому подібними форматами
+ простота в освоєнні новачком і виняткова масштабованість
+ популярність - Повно документації як офіційної (php.net і книги) так і сторонніх курсів і форумів
+ популярність - Завжди можна отримати допомогу у вирішенні будь-якої проблеми
+ - безкоштовність - Ніяких гарантій і служб підтримки
- популярність - Всі діри в програмуванні (новачків) відомі
ASP
+ надійність,
+ служба підтримки,
+ інтеграція з платформою. Net,
- сувора типізація,
- платний продукт,
- вимагає Windows-хостинг.
Після такого порівняння для вивчення я вибрав мову PHP, через такі переваг:
1. Наявність зрозумілої та доступної д...