Автор: Пользователь скрыл имя, 10 Апреля 2013 в 22:44, дипломная работа
Метою даної роботи є дослідження розвитку сучасних Web-технологій та їх ефективного застосування на прикладі створення систем керування інтернет сторінками. Курсова робота являє собою програмний пакет,що надає інструменти для додавання, редагування, видалення інформації на сайті. Будь-яка особа, незалежно від віку, може розмістити сайт в мережі інтернет і використовувати в своїх цілях: завантажувати файли, додати оповідання, власні історії, посилання на цікаві сайти. В цьому вам допоможе зручний веб інтерфейс.
1. Вступ.......................................................................................................З
1.1 Актуальність проблеми..............................................................4
1.2 Існуючі рішення CMS...............................................................4-6
2.Теоретична частина..............................................................................7
2.1 Технологічна основа CMS............................................................7
2.2 Структура сайту, створеного на CMS ................................8-9
2.3 СКБД MySQL………………………………………………………9-11
2.4 PHP: Процесор гіпертексту………………………..………11-13
3. Практична реалізація........................................................................14
3.1 Постановка завдання..........................................................14-15
3.2 Розробки та результати........................................................15
3.3 База даних.............................................................................15-19
3.4 Модулі та компоненти........................................................19-23
3.5 Форум…………………………………......................................23-24
3.6 Керування доступом користувачів на основі ролей .............25
3.7 Інформаційна структура…………......................................25-26
3.8 Заповнення головної сторінки..................................................26
3.9 Дизайн сайту........................................................................26-28
4. Висновок..............................................................................................29
5. Список використаних джерел літератури.....................................30
У системі CMS присутні два сховища. У першому (зазвичай реляційна СУБД) зберігаються всі дані, які публікуються на сайті. У другому (зазвичай файлова система) зберігаються елементи дизайну — шаблони, графічні зображення і т.д.
Крім зовнішнього подання сайту, яким його бачать всі користувачі, є як мінімум два спеціалізованих робочих місця. Перше робоче місце — для розробників сайту. З його допомогою вони задають структуру сайту, структуру контенту, визначають зовнішній вигляд сайту, налаштовують шаблони подання інформації. Цей інструментарій зазвичай не повністю автоматизований. Для налаштування сайту розробники частково працюють через засоби CMS, частина інформації розміщується безпосередньо. Друге робоче місце — для власників сайту. Воно дозволяє співробітникам компанії самостійно розміщувати інформацію на сайті, без участі розробників. Менеджери замовника працюють тільки через спеціалізоване робоче місце.
В даний час більшість організацій має у тому чи іншому вигляді власний веб сайт. Набагато менше число компаній має внутрішню інтернет систему. Більшість сучасних сайтів компаній створені на основі статичних сторінок. У результаті процес розміщення інформації на таких сайтах приховано від звичайних користувачів. Разом з тим, ця операція вимагає знання основ програмування та мови HTML. При цьому ймовірність помилок, особливо для пересічних користувачів вельми висока.
CMS надає можливість оперативного
оновлення інформації
Так само в рамках CMS функціонально
реалізовано багато іншого сервіси —
пошук, форуми, голосування і т.д., тобто
найбільш затребувана функціональність
вже реалізована в CMS і може бути використана
відразу. При створенні сайту на основі
CMS повністю або частково використовуються
готові модулі, які вже пройшли неодноразове
тестування. CMS розділяють дані та їх подання,
отже зовнішній вигляд сайту змінюється
з набагато меншими витратами, ніж у випадку
зі статичним сайтом.
Коли розробники CMS заявляють про те, що після створення сайту надалі оновлення інформації може здійснювати нетехнічними фахівцями, це означає, що є певний web-інтерфейс, який дозволяє розміщувати інформацію, використовуючи певні візуальні інструменти редагування, а також імпортувати інформацію з офісних документів. Під Web-інтерфейсом розуміється спеціалізоване робоче місце, доступне через інтернет, з використанням стандартної програми перегляду Інтернет — Internet Explorer.
Ключовими моментами є те, що можливе візуальне редагування тексту - є WYSIWYG (What You See Is What You Get) — редактор, що дозволяє розміщувати текст і виконувати найпростіше форматування документа, без наявності спеціальних технічних знань.
Можливо одночасно з текстом
розміщувати і різні зображення
— графіки, діаграми і т.д.. Можливе перенесення
даних з офісних додатків.
Підтримка візуального редагування
даних у всіх системах реалізована практично
однаково. Досить часто виникає необхідність,
одночасно з текстом розмістити і зображення,
графік, діаграму. Причому розмістити
не у фіксованому місці сторінки — на
початку або в кінці, а безпосередньо в
тексті, поруч з певним описом.
Системи управління контентом дозволяють нетехнічними спеціалісту публікувати інформацію на сайті та виконувати найпростіші операції по форматуванню тексту. Виділити текст курсивом на сайті нічим не складніше, ніж виконати аналогічну операцію в Microsoft Word. І дана можливість у всіх системах реалізована практично однаково.
2.3 СКБД MySQL
Програмне забезпечення
MySQL являє собою дуже швидкий багатопотоковий,
багатокористувацький надійний SQL сервер
баз даних (SQL - мова структурованих запитів).
Сервер MySQL призначений як для критичних
за завданнями виробничих систем з великим
навантаженням, так і для вбудовування
в програмне забезпечення масового поширення.
MySQL має подвійне ліцензування.
Це означає, що користувачі можуть
використовувати ПЗ MySQL безкоштовно по
загальнодоступній ліцензії GNU General Public
License (GPL) або придбати одну з стандартних
комерційних ліцензій MySQL AB .
MySQL є рішенням для малих і середніх
додатків. Входить в LAMP. Зазвичай MySQL використовується
як сервер, до якого звертаються локальні
або видалені клієнти, проте в дистрибутив
входить бібліотека внутрішнього сервера,
що дозволяє включати MySQL в автономні програми.
Гнучкість СКБД MySQL забезпечується
підтримкою великої кількості типів таблиць:
користувачі можуть вибрати як таблиці
типу MyISAM, що підтримують повнотекстовий
пошук, так і таблиці InnoDB, що підтримують
транзакції на рівні окремих записів.
Завдяки відкритій архітектурі і GPL ліцензуванню,
в СКБД MySQL постійно з'являються нові типи
таблиць.
MySQL — це система управління
базами даних. База даних являє собою структуровану
сукупність даних. Ці дані можуть бути
будь-якими — від простого списку майбутніх
покупок до переліку експонатів картинної
галереї або величезної кількості інформації
в корпоративній мережі. Для запису, вибірки
й обробки даних, що зберігаються в комп'ютерній
базі даних, необхідна система керування
базами даних, якою і є MySQL. Оскільки комп'ютери
чудово справляються з обробкою великих
обсягів даних, управління базами даних
відіграє центральну роль в обчисленнях.
Реалізовано таке управління може бути
по-різному - як у вигляді окремих утиліт,
так і у вигляді коду, що входить до складу
інших додатків.
MySQL працює з реляційними
базами даних. У реляційній базі даних
дані зберігаються не все скопом, а в окремих
таблицях, завдяки чому досягається виграш
у швидкості й гнучкості. Таблиці зв'язуються
між собою за допомогою відносин, завдяки
чому забезпечується можливість поєднувати
при виконанні запиту дані з декількох
таблиць. SQL як частина системи MySQL можна
охарактеризувати як мова структурованих
запитів плюс найбільш поширений стандартна
мова, що використовується для доступу
до баз даних.
Програмне забезпечення MySQL
— це ПЗ з відкритим кодом. ПЗ з відкритим
кодом означає, що застосовувати і модифікувати
його може будь-хто. Таке ПО можна отримувати
за допомогою Internet і використовувати безкоштовно.
При цьому кожен користувач може вивчити
вихідний код і змінити його у відповідності
зі своїми потребами.
У яких випадках слід віддавати перевагу СКБД MySQL? MySQL є дуже швидким, надійним і легким у використанні. Якщо вам потрібні саме ці якості, спробуйте попрацювати з цим сервером. MySQL має також низкою зручних можливостей, розроблених у тісному контакті з користувачами. Спочатку сервер MySQL розроблявся для керування великими базами даних з метою забезпечити більш високу швидкість роботи в порівнянні з існуючими на той момент аналогами. І ось вже протягом декількох років даний сервер успішно використовується в умовах промислової експлуатації з високими вимогами. Незважаючи на те що MySQL постійно вдосконалюється, він уже сьогодні забезпечує широкий спектр корисних функцій. Завдяки своїй доступності, швидкості та безпеки MySQL дуже добре підходить для доступу до баз даних за допомогою Internet.
Працювати з MySQL можна не тільки
у текстовому режимі, але і в графічному.
Існує дуже популярний візуальний інтерфейс
(до речі, написаний на PHP) для роботи з
цією СУБД. Називається він PhpMyAdmin. Цей
інтерфейс дозволяє значно спростити
роботу з базами даних в MySQL.
У текстовому режимі робота
з базою даних виглядає просто як введення
команд в командний рядок, а результати
вибірок повертаються у вигляді своєрідних
таблиць, поля в яких налазив один на одного,
якщо дані не поміщаються на екран .
PhpMyAdmin дозволяє користуватися всіма перевагами браузера, включаючи прокручування зображення, якщо воно не вміщується на екран. Роботи з даними в PhpMyAdmin зведена до інтуїтивно зрозумілого інтерфейсу і діям, що нагадує перехід по посиланнях в Internet. Але тим не менш варто все ж таки попрацювати і в текстовому режимі.
Можливості MySQL:
Простота у встановленні та використанні ;
Підтримується необмежена кількість користувачів, що працюють із БД;
Кількість рядків у таблицях може досягати 50 млн.;
Висока швидкість виконання команд;
Наявність простої і ефективної системи безпеки.
Недоліки сервера МуSQL:
Не реалізована підтримка транзакцій. Натомість пропонується використовувати LOCK/UNLOCK ТАВLЕ;
Відсутня підтримка зовнішніх (forelgn) ключів;
Відсутня підтримка тригерів і збережених процедур;
Зазначені недоліки не є критичними при розробці малих і середніх інформаційних систем для робочих груп.
2.4 PHP: Процесор гіпертексту
PHP — це мова програмування,
створена для генерації HTML сторінок на
веб-сервері і роботи з базами даних. В
даний час підтримується переважною більшістю
хостинг-провайдерів. Входить в LAMP — "стандартний"
набір для створення веб-сайтів (Linux, Apache,
MySQL, PHP (Python або Perl)).
Назва PHP — абревіатура, що
означає "PHP: Hypertext Preprocessor" (раніше
акронім розшифровувався як "Personal Home
Page Tools»). Спочатку PHP створювався як надбудова
над Perl для полегшення розробки веб-сторінок
.
У області програмування для
Мережі, PHP — одна з найпопулярніших скриптових
мов (разом з JSP, Perl і мовами, використовуваними
в ASP.NET) завдяки своїй простоті, швидкості
виконання, багатій функціональності
і розповсюдженню початкових кодів на
основі ліцензії PHP License. PHP відрізняється наявністю
ядра і модулів, що підключаються, "розширень":
для роботи з базами даних, сокетами, динамічною
графікою, криптографічними бібліотеками,
документами формату PDF і т.п. Будь-який
охочий може розробити своє власне розширення
і підключити його. Існують сотні розширень,
проте в стандартне постачання входить
лише декілька десятків добре зарекомендували
себе. Інтерпретатор PHP підключається
до веб-серверу або через модуль, створений
спеціально для цього сервера (наприклад,
для Apache або IIS), або як CGI програми .
В даний час PHP використовується сотнями тисяч розробників. Порядку 20 мільйонів сайтів повідомляють про роботу з PHP, що складає більше п'ятої частки доменів Інтернету.
Завдання мови полягає в тому, щоб дати можливість Web-розробникам легко і швидко створювати динамічно змінні html-сторінки. Вже що що, а це він робить чудово! Це і є основна перевага РНР - його код впроваджується прямо в HTML, причому ніяких обмежень не існує. Єдина умова - не забувати відкривати і закривати теги, якими обмежується код РНР.
Щоб сервер дізнався, що
в коді сторінки крім стандартного HTML
є код РНР, треба сказати йому про це. Зробити
це просто - достатньо в потрібному файлі
змінити розширення зі стандартних *. htm
або *. html на *. phtml, *. php3 або *. php. Хоча всі
ці речі залежать від адміністратора сервера,
де розташована Ваша сторінка або Ваш
сайт. Іноді можна почути думку, що РНР
зовсім не потрібний, адже є SSI. Відповідаю
- РНР може робити теж, що і SSI з такою ж
легкістю, але плюс до цього він може ще
значно більше! Ось Вам і ще один плюс.
Якщо Ви ще не визначилися, чи треба буде
в деякий конкретний файл додавати код
РНР, сміливо ставте розширення *. phtml. Справа
в тому, що весь код HTML інтерпретатор РНР
просто передасть браузеру як є без обмежень.
З цього випливає перше правило, яке Вам
треба буде засвоїти. Не перевантажуйте
інтерпретатор. Якщо є вибір, користуйтеся
стандартним HTML. Це не принципово, але
рекомендується як ознака професіоналізму.
Ще один плюс РНР - це дивна
схожість його синтаксису з мовами С, С++,
Java і т.д. Точніше буде сказати, що РНР ввібрав
все найкраще з цих мов і максимально позбувся
їхніх недоліків. Немає ніякої необхідності
виділяти пам'ять, стежити за типами змінних
(у звичайних умовах), визначати змінні
і т.д. Всі поліпшення торкнулися вже 3
версії, але є й недоліки. Один з основних
- відсутність можливості умовних і безумовних
переходів в скрипті. Це накладає обмеження
на великі скрипти. А точніше - обмежень
немає, просто дуже великі скрипти стає
писати вже складно. Втім, РНР розроблявся
саме як невеликі включення в HTML, і в цій
якості йому немає рівних. А якщо враховувати
ще і той факт, що РНР дивно легко інтегрується
з усіма основними базами даних і дозволяє
робити багато дивних речей. Наприклад
- прайси з можливістю пошуку інформації.
На CGI аналогічний скрипт виходить багато
більше ніж на РНР.
2.5 jQuery — JavaScript-бібліотека
jQuery - бібліотека JavaScript, що
фокусується на взаємодії
HTML була однією з перших речей, яку Джон
Резіг освоїв, коли він тільки почав займатися
програмуванням. Резіг програмував на QBasic, коли
один його знайомий показав йому, як створити
веб-сторінку (використовуючи Angelfire), а
також основи HTML. Батько подарував йому на Різдво
дві книги по HTML. Саме тоді, коли він тільки
почав програмувати на Visual Basic, HTML і веб-дизайн
дуже зацікавили його.
Але пристрасть до JavaScript прийшла значно
пізніше, приблизно в 2004 році.Тоді Резіг
отримував ступінь в галузі комп'ютерних
наук і працював на півставки в місцевій
фірмі Brand Logic. Він займався дизайном сайту,
в якому створювався користувальницький
скролінг. Джон був розчарований і засмучений,
особливо тому, що використовував код
інших розробників, після чого вирішив
серйозно вивчити JavaScript. Вивчивши, прийшов до висновків,
що JavaScript - це простий, але витончений мова,
яка є неймовірно потужним для вирішення
багатьох завдань. Протягом найближчої пари років
Д. Резіг створив безліч різних JavaScript додатків,
перш ніж закінчити створення jQuery. Основною метою створення jQuery
Резіг бачив можливість закодувати багаторазові
шматки коду, які дозволять спростити
JavaScript і використовувати їх так, щоб не
турбуватися про крос-браузерних питаннях.
Бібліотека була представлена громадськості
на комп'ютерній конференції «BarCamp» в Нью-Йорку
в 2006 році.
Можливості:
Точно так само, як CSS відокремлює візуалізацію
від структури HTML, JQuery відділяє поведінку
від структури HTML. Наприклад, замість прямої вказівки
на обробник події натискання кнопки,
управління передається JQuery, що ідентифікує
кнопки і потім перетворюють його в обробник
події кліка. Такий поділ поведінки та структури
також називається принципом ненав'язливого
JavaScript.
Бібліотека jQuery містить функціональність,
корисну для максимально широкого кола
завдань. Тим не менш, розробниками бібліотеки
не ставилося завдання суміщення в jQuery
функцій, які підійшли б усюди, оскільки
це призвело б до великого коду, велика
частина якого не затребувана. Тому була реалізована архітектура
компактного універсального ядра бібліотеки
і плагінів. Це дозволяє зібрати для ресурсу
саме ту JavaScript-функціональність, яка на
ньому була б затребувана.
jQuery, як правило, включається до веб-сторінку
як один зовнішній JavaScript-файл:
Информация о работе Веб-орієнтований конструктор динаміних інтернет сторінок: частина клієнта