Ing. Přemysl Brada, MSc., Ph.D. Ing. Martin Dostal. Katedra informatiky a výpočetní techniky, FAV, ZČU v Plzni



Podobné dokumenty
Protokol HTTP 4IZ228 tvorba webových stránek a aplikací

Třídy a objekty. Třídy a objekty. Vytvoření instance třídy. Přístup k atributům a metodám objektu. $z = new Zlomek(3, 5);

HTTP protokol. HTTP protokol - úvod. Zpracoval : Petr Novotný novotny0@students.zcu.cz

Tvorba WWW stránek. přehled technologií používaných na webu principy jednotlivých technologií a možnosti jejich vzájemného kombinování

1 Webový server, instalace PHP a MySQL 13

Obsah přednášky. Představení webu ASP.NET frameworky Relační databáze Objektově-relační mapování Entity framework

Principy fungování WWW serverů a browserů. Internetové publikování

1. Webový server, instalace PHP a MySQL 13

INFORMAČNÍ SYSTÉMY NA WEBU

(X)HTML, CSS a jquery

Připravil: Ing. Jiří Lýsek, Ph.D. Verze: Webové aplikace

HTTP protokol. Zpracoval : Petr Novotný

Úvod do tvorby internetových aplikací

WWW technologie. HTTP protokol

CZ.1.07/1.5.00/

Hypertext Transfer Protocol (HTTP/1.1 RFC 2616) Počítačové sítě Pavel Šinták

Architektura softwarových systémů

WWW a HTML. Základní pojmy. Ivo Peterka

Připravil: Ing. Jiří Lýsek, Ph.D. Verze: Webové technologie

BI-AWD. Administrace Webového a Databázového serveru Virtualizace HTTP serveru

Vyšší odborná škola a Střední škola,varnsdorf, příspěvková organizace. Šablona 1 VY 32 INOVACE

DUM č. 11 v sadě. 36. Inf-12 Počítačové sítě

Informační systém ozdravných pobytů zdravotní pojišťovny

Databázové a informační systémy

Tvorba webu v HTML. Redakční systém. CMS Joomla! Co je Joomla

Úvod do aplikací internetu a přehled možností při tvorbě webu

Artlingua Translation API

Tvorba webových stránek

Server-side technologie pro webové aplikace

Počítačové sítě II. 18. World Wide Web, HTTP Miroslav Spousta,

1. Úvod do Ajaxu 11. Jak Ajax funguje? 13

rychlý vývoj webových aplikací nezávislých na platformě Jiří Kosek

Měření teploty, tlaku a vlhkosti vzduchu s přenosem dat přes internet a zobrazování na WEB stránce

Technologie Java Enterprise Edition. Přemek Brada, KIV ZČU

Současný svět Projekt č. CZ.2.17/3.1.00/32038, podpořený Evropským sociálním fondem v rámci Operačního programu Praha adaptabilita

Šifrování Autentizace Bezpečnostní slabiny. Bezpečnost. Lenka Kosková Třísková, NTI TUL. 22. března 2013

SYLABUS IT V. Jiří Kubica. Ostrava 2011

Internet Information Services (IIS) 6.0

HTML - Úvod. Zpracoval: Petr Lasák

Web Services na SOAP

Uživatelská příručka 6.A6. (obr.1.)

Použití databází na Webu

Webové služby a XML. Obsah přednášky. Co jsou to webové služby. Co jsou to webové služby. Webové služby a XML

Instalace a konfigurace web serveru. WA1 Martin Klíma

VÝVOJ INTERNETOVÝCH APLIKACÍ - VIA

Úvodem 9. Zpětná vazba od čtenářů 10 Zdrojové kódy ke knize 10 Errata 10. Než začneme 11

Tvorba informačních systémů

Michal Krátký, Miroslav Beneš

STŘEDNÍ ŠKOLA INFORMAČNÍCH TECHNOLOGIÍ A SOCIÁLNÍ PÉČE

Internet 2 css, skriptování, dynamické prvky

PHP PHP je skriptovací programovací jazyk dynamických internetových stránek PHP je nezávislý na platformě

ISPOP v roce Ing. Pavla Jirůtková - oddělení ISPOP a IRZ. CENIA, česká informační agentura životního prostředí

Počítačové sítě II 17. WWW, HTTP. Miroslav Spousta, 2005

Škola: Gymnázium, Brno, Slovanské náměstí 7 III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN

Maturitní projekt do IVT Pavel Doleček

Vývoj Internetových Aplikací

Kurz je rozdělen do čtyř bloků, které je možné absolvovat i samostatně. Podmínkou pro vstup do kurzu je znalost problematiky kurzů předešlých.

Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky Jihlava

FAKULTA INFORMAČNÍCH TECHNOLOGIÍ SPOLEČNOST DECADIC PROJEKT FRAMETRIX

Snadný vývoj webových aplikací s Nette. Lukáš Jelínek

Internet WEB stránky HTML, Hypertext MarkUp Language - nadtextový jazyk - Místo příkazů obsahuje tagy - značky

Uživatel počítačové sítě

Webové stránky fotbalového klubu

ISPOP v roce Obsah prezentace ISPOP. CENIA, Praha Úvod, registrace, uživatelský účet

Databázové aplikace pro internetové prostředí PHP úvod, základní princip, vkládání skriptu, komentáře, výpis na obrazovku

nástroj pro jednoduchou správu a vedení agendy studentských počítačových sítí na kolejích SU OPF Karviná Ing.

EU-OPVK:VY_32_INOVACE_FIL9 Vojtěch Filip, 2013

Návod k obsluze Bakalářská práce Autor Vedoucí práce Škola Obor Webový systém pro konfiguraci disperzního modelu

Analýza síťového provozu. Ing. Dominik Breitenbacher Mgr. Radim Janča

AUTOMATICKÉ ŘÍZENÍ S INTERNETOVOU KOMUNIKACÍ V PHP Automatic Control with Internet Communication in PHP

Koláčky, sezení. Martin Klíma

Střední odborná škola a Střední odborné učiliště, Hořovice

Web. Získání informace z internetu Grafické zobrazení dat a jejich struktura Rozšíření funkcí pomocí serveru Rozšíření funkcí pomocí prohlížeče

Informační systém pro vedení živnostenského rejstříku IS RŽP

INOVACE PŘEDMĚTŮ ICT. MODUL 11: PROGRAMOVÁNÍ WEBOVÝCH APLIKLACÍ Metodika

Serverové skriptovací technologie

API pro volání služby kurzovního lístku KB

Formáty WWW zdrojů. Mgr. Filip Vojtášek.

Rezervační systém Tvorba WWW stránek

Úvod Úrovňová architektura sítě Prvky síťové architektury Historie Příklady

Webové Aplikace (6. přednáška)

Relační vrstva SMB-Síťový komunikační protokol aplikační vrstvy, který slouží ke sdílenému přístupu k souborům, tiskárnám, sériovým portům.

C6 Bezpečnost dat v Internetu. 2. HTTP komunikace 3. HTTPS komunikace 4. Statistiky

REGISTRACE A PŘIHLÁŠENÍ UŽIVATELE 1. krok

Ruby on Rails. Bc. Tomáš Juřík Bc. Bára Huňková

Uspořádání klient-server. Standardy pro Web

Mgr. Vlastislav Kučera přednáška č. 2

Úvod do informačních služeb Internetu

DATA ARTICLE. AiP Beroun s.r.o.

ISPOP v roce Ing. Pavla Jirůtková - oddělení ISPOP. CENIA, česká informační agentura životního prostředí

Komponentově orientované webové frameworky. Jiří Stránský twitter.com/jistr

HTML Hypertext Markup Language

Uživatelská dokumentace

RESTful API TAMZ 1. Cvičení 11

Příručka uživatele. Registrace a přihlášení uživatele do portálu IS KP 14+ Aplikace MS2014+

MBI - technologická realizace modelu

Zranitelnosti webových aplikací. Vlastimil Pečínka, Seznam.cz Roman Kümmel, Soom.cz

NÁVOD NA VYPLNĚNÍ ELEKTRONICKÉ ŽÁDOSTI O DOTACI

KIV/PIA 2012 Ing. Jan Tichava

PŘEHLED A MOŽNOSTI VYUŽITÍ WEBOVÝCH MAPOVÝCH SLUŽEB

Transkript:

Webové aplikace Ing. Přemysl Brada, MSc., Ph.D. Ing. Martin Dostal Katedra informatiky a výpočetní techniky, FAV, ZČU v Plzni

Harmonogram Dopolední blok 9:00 12:30 Ing. Dostal Úvod, XHTML + CSS Ing. Brada, Ph.D. Java Oběd 12:30 13:30 Odpolední blok 13:00 15:00 Ing. Dostal Php, ukázky webových aplikací

Webová aplikace vs. webová služba Co to je webová aplikace? Co to je webová služba? Jaký je hlavní rozdíl?

Architektura klient - server Výhody: data jsou uložena na jednom místě nejsou redundantní není problém s aktuálností dat k datům můžeme přistupovat z libovolného pc

Webový server je program, který vyřizuje požadavky klientů je připojen k počítačové síti komunikuje s využitím protokolu HTTP

Architektura webových aplikací Jak dělat webové aplikace pořádně

Motivační příklad Školní IS: známky studentů index.php (úvodní strana aplikace) <? php include ( settings.inc.php ); // konfigurace // načteni obsahu z db MySql5 $query = select * from t where s= uvod ;?> // začátek html stránky <html> <head> </head> <body><div id= obsah > <? // výpis úvodní stránky echo <div class= uvod >$uvod</div> ;?> </div></body></html> znamky.php (známky studenta) <? php include ( settings.inc.php ); // konfigurace // načteni známek pro studenta z MySql5 $query = select * from z where id=1 ;?> // začátek html stránky <html> <head> </head> <body><div id= obsah > <? // výpis úvodní stránky echo <div class= znamky >$zn</div> ;?> </div></body></html>

struktura Architektura webových aplikací Základní typy: Bez použití vrstev = vše v jednom souboru viz. předchozí ukázka Dvouvrstvá architektura oddělení vzhledu a aplikace Třívrstvá architektura (MVC) Model např. databáze View zobrazení stránky uživateli Controller obsluha požadavků Vícevrstvá (dělení view, webservice vrstva, fasáda pro integrace s jinými systémy)

3-vrstvá architektura - realizace Architektura = nápad, myšlenka Existují různá řešení: Všechny 3 vrstvy jsou na 1 webovém serveru: - prezentační vrstva připravuje html výstup pro klienta - aplikační vrstva zpracovává požadavky od klienta - databázová vrstva načítá data z databáze Logické vrstvy Všechny 3 vrstvy mohou být na různých místech: - prezentační vrstva může být použit sw na klientském pc - aplikační vrstva = samostatný aplikační server - databázová vrstva = specializovaný databázový server Fyzické vrstvy

Motivační příklad řešení index.php (úvodní strana aplikace) <? php include ( settings.inc.php ); // konfigurace // načteni obsahu z db MySql5 $uvod = $aplikace->nacti( uvod ); $uvod_s_html = $prezentacni ->VlozObsah($uvod); znamky.php (známky studenta) <? php include ( settings.inc.php ); // konfigurace // načteni známek pro studenta z MySql5 $znamky= $aplikace->nacti( znamky, 5); $znamky_s_html = $prezentacni ->VlozObsah ($znamky); $page->nastavobsah($uvod_s_html ); $page->show();?> Šablona: <html> <head></head> <body> <container>{obsah}</container> </body> </html> $page->nastavobsah($znamky_s_html); $page->show();?>

Protokol HTTP (HyperText Transfer Protocol) protokol pro přenos objektů libovolného typu (stránky HTML, obrázky, PDF) mezi webovým serverem a prohlížečem (různé mime typy ) bezestavový protokol modelu požadavek/odpověď problémy: server nemá stálé spojení s klienty a nemůže je proto jednoznačně identifikovat řešení: SESSION (viz. dále) PROCES KOMUNIKACE: 1. navázání spojení 2. zaslání požadavku klientem 3. zaslání odpovědi serverem 4. uzavření spojení

HTTP ukázka komunikace Dotaz: GET /clanky/obsah.html HTTP/1.1 User-Agent: Mozilla/4.0 (compatible; MSIE 5.0; Windows NT) Host: www.server.cz Odpověď: HTTP/1.1 200 OK Server: Microsoft-IIS/5.0 Date: Wed, 06 Dec 2000 13:37:40 GMT X-Powered-By: PHP/4.0.3pl1 Content-type: text/html <!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.0 Transitional//EN'> <html><head> <title>titulek</title> <link rel="stylesheet" type="text/css" href= styl.css">...

HTTP stavové kódy 1xx - informativní kód 2xx - úspěšné vyřízení požadavku 3xx - přesměrování 4xx - chyba klienta 5xx - chyba na straně serveru

Přenos dat od uživatele na server Existují 2 základní metody: GET vložení proměnných do URL POST odeslání vyplněných HTML formulářů Obě metody je možné použít k navigaci v rámci webové aplikace GET např. index.php?page=uvod Výhody: tyto stránky lze uložit do záložek v prohlížeči Nevýhody: není vhodné pro přenos např. celého textu článku POST např. index.php Výhody: vhodné pro přenos např. textu článku Nevýhody: stránky nelze uložit do záložek prohlížeče

Ukázka HTTP headers data z formuláře Data jsou otevřená a snadno čitelná/manipulovatelná Pokud použiji protokol HTTP = celá komunikace je čitelná a lze snadno odchytit např. uživatelské jméno a heslo Mohu však použít protokol HTTPs a pak je celá komunikace šifrovaná (použití např. v internetovém bankovnictví) Ukázka: odeslání formuláře s loginem a heslem Ukázka2: šifrované spojení např. u připojení na portál Postup: 1. Google chrome: Nástroje Nástroje pro vývojáře záložka Network a pak Headers 2. Vyplnit a odeslat form bude to vidět v sekci Headers/Form data 3. V Request headers: seznam.cz a portal.zcu.cz (šifr.)