Веб-орієнтований конструктор динаміних інтернет сторінок: частина клієнта

Автор: Пользователь скрыл имя, 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

Работа содержит 1 файл

Дипломна робота.docx

— 1.27 Мб (Скачать)

2.2 Структура сайту, створеного на CMS

  У системі CMS присутні два сховища. У першому (зазвичай реляційна СУБД) зберігаються всі дані, які публікуються на сайті. У другому (зазвичай файлова система) зберігаються елементи дизайну — шаблони, графічні зображення і т.д.

  Крім зовнішнього подання сайту, яким його бачать всі користувачі, є як мінімум два спеціалізованих робочих місця. Перше робоче місце — для розробників сайту. З його допомогою вони задають структуру сайту, структуру контенту, визначають зовнішній вигляд сайту, налаштовують шаблони подання інформації. Цей інструментарій зазвичай не повністю автоматизований. Для налаштування сайту розробники частково працюють через засоби CMS, частина інформації розміщується безпосередньо. Друге робоче місце — для власників сайту. Воно дозволяє співробітникам компанії самостійно розміщувати інформацію на сайті, без участі розробників. Менеджери замовника працюють тільки через спеціалізоване робоче місце.

  В даний час більшість організацій має у тому чи іншому вигляді власний веб сайт. Набагато менше число компаній має внутрішню інтернет систему. Більшість сучасних сайтів компаній створені на основі статичних сторінок. У результаті процес розміщення інформації на таких сайтах приховано від звичайних користувачів. Разом з тим, ця операція вимагає знання основ програмування та мови HTML. При цьому ймовірність помилок, особливо для пересічних користувачів вельми висока.

CMS надає можливість оперативного  оновлення інформації співробітником  — інформацію публікує співробітник, що володіє інформацією, без додаткових посередників у вигляді технічних фахівців. Результатом є зниження вартості підтримки — оновлення інформації проводиться самостійно, немає необхідності оплачувати працю власного або зовнішнього web-майстра.  
 Так само в рамках 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, що  фокусується на взаємодії JavaScript і HTML. Бібліотека jQuery допомагає легко отримувати доступ до будь-якого елементу DOM, звертатися до атрибутів і вмісту елементів DOM, маніпулювати ними. Також бібліотека jQuery надає зручний API по роботі з Ajax. 
 HTML була однією з перших речей, яку Джон Резіг освоїв, коли він тільки почав займатися програмуванням. Резіг програмував на QBasic, коли один його знайомий показав йому, як створити веб-сторінку (використовуючи Angelfire), а також основи HTML. Батько подарував йому на Різдво дві книги по HTML. Саме тоді, коли він тільки почав програмувати на Visual Basic, HTML і веб-дизайн дуже зацікавили його. 
 Але пристрасть до JavaScript прийшла значно пізніше, приблизно в 2004 році.Тоді Резіг отримував ступінь в галузі комп'ютерних наук і працював на півставки в місцевій фірмі Brand Logic. Він займався дизайном сайту, в якому створювався користувальницький скролінг. Джон був розчарований і засмучений, особливо тому, що використовував код інших розробників, після чого вирішив серйозно вивчити JavaScript. Вивчивши, прийшов до висновків, що JavaScript - це простий, але витончений мова, яка є неймовірно потужним для вирішення багатьох завдань. Протягом найближчої пари років Д. Резіг створив безліч різних JavaScript додатків, перш ніж закінчити створення jQuery. Основною метою створення jQuery Резіг бачив можливість закодувати багаторазові шматки коду, які дозволять спростити JavaScript і використовувати їх так, щоб не турбуватися про крос-браузерних питаннях. Бібліотека була представлена ​​громадськості на комп'ютерній конференції «BarCamp» в Нью-Йорку в 2006 році.

 

Можливості:

    • Движок кросбраузерність CSS-селекторів Sizzle , що виділився в окремий проект;
    • Перехід по дереву DOM, включаючи підтримку XPath як плагіна;
    • Події;
    • Візуальні ефекти;
    • AJAX-додатки;
    • JavaScript-плагіни;

 
  Точно так само, як CSS відокремлює візуалізацію від структури HTML, JQuery відділяє поведінку від структури HTML. Наприклад, замість прямої вказівки на обробник події натискання кнопки, управління передається JQuery, що ідентифікує кнопки і потім перетворюють його в обробник події кліка. Такий поділ поведінки та структури також називається принципом ненав'язливого JavaScript. 
 Бібліотека jQuery містить функціональність, корисну для максимально широкого кола завдань. Тим не менш, розробниками бібліотеки не ставилося завдання суміщення в jQuery функцій, які підійшли б усюди, оскільки це призвело б до великого коду, велика частина якого не затребувана. Тому була реалізована архітектура компактного універсального ядра бібліотеки і плагінів. Це дозволяє зібрати для ресурсу саме ту JavaScript-функціональність, яка на ньому була б затребувана. 
 jQuery, як правило, включається до веб-сторінку як один зовнішній JavaScript-файл:

Информация о работе Веб-орієнтований конструктор динаміних інтернет сторінок: частина клієнта