Internetové technologie Informatika pro ekonomy II přednáška 8.

Slides:



Advertisements
Podobné prezentace
SÍŤOVÉ PROTOKOLY.
Advertisements

Dynamické dokumenty na straně klienta Informatika pro ekonomy II.
Formuláře Formuláře lze nalézt téměř na každém webu. Formuláře lze nalézt téměř na každém webu. Použití formulářů: Použití formulářů: Blog Blog Uživatelské.
HTTP server HTTP server 1 Jak to funguje?
HYPERTEXT PREPROCESSOR. JAZYK PHP. Jazyk PHP (Hypertext PreProcessor) je intepretovaný jazyk určený pro web. Je celkem jednoduchý, snadno přenositelný.
Protokol HTTP (Hypertext Transfer Protocol)
PHP Souhrnné cvičení Mgr. Josef Nožička IKT PHP
SÍŤOVÉ SLUŽBY DNS SYSTÉM
Pavel Dvořák Gymnázium Velké Meziříčí Počítačové sítě – služba WWW Registrační číslo projektu: CZ.1.07/1.5.00/ Datum: Jazyk: čeština.
1 Počítačové sítě Úvodní přednáška Cíl předmětu –seznámit se s principy datové komunikace –seznámit se s principy distribučních systémů –seznámit se s.
PHP Zpracování formuláře v PHP - 11 Mgr. Josef Nožička IKT PHP
Internet Definice Historie Použití Programy pro práci s internetem
Princip fungování pošty Vnitřní členění zpráv Protokoly
Základy informatiky Internet Ing. Roman Danel, Ph.D. Institut ekonomiky a systémů řízení Hornicko – geologická fakulta.
Analýza síťového provozu
1IT T ŘI PILÍŘE WEBU Ing. Jiří Šilhán. T ŘI PILÍŘE WWW WWW využívá počítačovou architekturu Klient/server, uživatel musí mít nainstalován prohlížeč, který.
Elektronická pošta Elektronická pošta ( ) je obdobou běžné pošty a umožňuje přijímat a distribuovat dokumenty v textové podobě na jednu nebo více.
Informatika Internet.
PHP – zasílání dat z formuláře
Protokol TCP/IP a OSI model
PHP – Základy programování
Technologie sítě Internet. Technologie Internetu jsou v dnešní době široce používány a představují často rozhodující faktor úspěšnosti firem. Nejpoužívanější.
Aplikace VT v hospodářské praxi internetové technologie Ing. Roman Danel, Ph.D. VŠB – TU Ostrava.
VY_32_INOVACE_4.3.IVT1.12/Oc Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Jaroslav Ochodek CZ.1.07/1.5.00/ Tvorba webových.
Internet.
Internet.
DIGITÁLNÍ UČEBNÍ MATERIÁL Číslo projektuCZ.1.07/1.5.00/ Název projektuEU peníze středním školám Masarykova OA Jičín Název školyMASARYKOVA OBCHODNÍ.
Protokoly a adresy na internetu
Maturitní okruh 22: Úvod do HTML. Značkovací a klasické jazyky Klasické: převládá strukturovaný text (programovací kód), skripty jsou prováděny na straně.
Jazyk PHP Programovací jazyk PHP (Hypertext preprocessor) je skriptovací jazyk, který běží na straně serveru. KLIENT - SERVER Server posílá do vašeho počítače.
Návrh a tvorba WWW Přednáška 5 Úvod do jazyka PHP.
Internet.  Celosvětový systém propojených počítačů  Funkce  Sdílení dat  Elektronická pošta.
Dynamické dokumenty na straně serveru Informatika pro ekonomy II přednáška 8.
WWW – hypertextový informační systém
UNIX — doplňky Informatika pro ekonomy II přednáška 9.
AJAX nejmodernější webová technologie… seminář pro učitele ZŠ a SŠ Mgr. Marek Osuchowski Ostravská univerzita © 2011.
PHP Souhrnné cvičení Mgr. Josef Nožička IKT PHP
WWW stránky – Úvod Mgr. Lenka Švancarová.
PHP Vytváření formuláře.
INTERNET – struktura, fungování a přehled využití
URL v HTML URL - Unique Resource Locator Příklad:
CZ.1.07/1.4.00/ VY_32_INOVACE_166_IT 9 Výukový materiál zpracovaný v rámci projektu Vzdělávací oblast: Informační a komunikační technologie Předmět:Informatika.
Shrnutí Chceme–li připojit PC k Internetu musíme: 1.Zadat adresu DNS serveru (začne pracovat převod IP adresa  symbolické jméno), prakticky začne fungovat.
Formuláře Formuláře uzavíráme do elementů Formuláře uzavíráme do elementů a a Tyto elementy jsou součástí jazyka XHTML, to znamená, že při použití v PHP.
1 Seminář 9 MAC adresa – fyzická adresa interface (rozhraní) Je zapsána v síťové kartě. Je identifikátor uzlu na spoji. MAC adresu v paketu čte switch.
1 Protokol HTTP (Hypertext Transfer Protocol) HTTP je základem systému „World Wide Web“ (WWW) - Web … HTTP – jednoduchý protokol aplikační vrstvy, transport.
Název projektu: Šablony Špičák číslo projektu: CZ.1.07/1.4.00/ šablona III/2 autor výukového materiálu: Mgr. Jana Jiroušová, VM vytvořen: leden.
Seminář 12 Obsah cvičení Transportní služby Utilita nestat
Vzdálená správa Tomáš Kalný.
Internetové technologie Informatika pro ekonomy přednáška 7.
HYPERTEXT PREPROCESSOR. JAZYK PHP. VYUŽITÍ JAZYKA Programování dynamických internetových stránek a webových aplikací vytvoření šablony webu kniha návštěv.
Internetové technologie Informatika pro ekonomy přednáška 7.
E- MAIL Ing. Jiří Šilhán. E LEKTRONICKÁ POŠTA NEBOLI vývoj od počátku sítí – původní návrh pouze pro přenos krátkých textových zpráv (ASCII) základní.
Jak fungují webové stránky Úvod do HTML (1). Projekt: CZ.1.07/1.5.00/ OAJL - inovace výuky Příjemce: Obchodní akademie, odborná škola a praktická.
Internet. je celosvětový systém navzájem propojených počítačových sítí („síť sítí“), ve kterých mezi sebou počítače komunikují pomocí rodiny protokolů.
Inf WWW – World Wide Web. Výukový materiál Číslo projektu: CZ.1.07/1.5.00/ Šablona: III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Číslo.
Číslo projektu CZ.1.07/1.5.00/ Kódování materiálu vy_32_INOVACE_inf3_web01 Označení materiálu web01_uvod.pptx Název školy Gymnázium Kladno Autor.
HYPERTEXT PREPROCESSOR. JAZYK PHP. VYUŽITÍ JAZYKA Programování dynamických internetových stránek a webových aplikací vytvoření šablony webu kniha návštěv.
Obchodní akademie a Jazyková škola s právem státní jazykové zkoušky Jihlava Šablona 32 VY_32_INOVACE_034.ICT.34 Tvorba webových stránek – PHP technologie.
Transportní vrstva v TCP/IP Dvořáčková, Kudelásková, Kozlová.
WWW a HTML Základní pojmy Ivo Peterka.
WWW a HTML Základní pojmy Ivo Peterka.
NÁZEV ŠKOLY: S0Š Net Office, spol. s r.o, Orlová Lutyně
Seminář 11 DHCP + HTTP + IPTABLES
Internetové technologie
Protokol HTTP (Hypertext Transfer Protocol)
Číslo projektu OP VK Název projektu Moderní škola Název školy
Propojování sítí (1) Propojování sítí je možné realizovat, např. pomocí: Repeater: zesilovač, který předává veškeré informace z jedno-ho síťového segmentu.
Web Application Scanning
Informatika Internet.
Transkript prezentace:

Internetové technologie Informatika pro ekonomy II přednáška 8

Služba WWW HW dotaz (URL) odpověď (HTML) WWW klient (např. Internet Explorer, Netscape Navigator) WWW server (např. Apache) uživatelská stanice server SW

Princip klient–server Server – poskytuje odezvu klientovi Démon – program, který neustále běží na serveru a očekává výzvy, při zachycení spustí obsluhu Protokol – scénář komunikace mezi klientem a serverem, stanovuje pořadí předávání otázek a odpovědí, realizace prostřednictvím portu Klient – zahajuje komunikaci, požaduje spojení Port – identifikace služby ve formě čísla, které klient posílá serveru při zahájení komunikace

Nejznámější porty 23 – vzdálený přístup (nešifrovaný, TELNET) 22 – vzdálený přístup (šifrovaný, SSH) 25 – elektronická pošta (SMTP) 20, 21 – přenos souborů protokolem FTP 80 – služba WWW (HTTP) 110 – vzdálený přístup do schránky (POP3)

Protokol HTTP Slouží pro přenos objektů libovolného typu (stránky, obrázky,...) mezi webovým serverem a prohlížečem (klientem) Jednoduchý síťový protokol aplikační vrstvy, vlastní přenos dat zajišťuje protokol TCP HyperText Transfer Protocol Základní model: navázání spojení  zaslání požadavku klientem  zaslání odpovědi serverem  uzavření spojení

Protokol HTTPS Zajišťuje šifrovanou komunikaci mezi klientem a serverem Slouží k přenosu informací, které nesmí být nikým odposlechnuty (číslo kreditní karty, heslo) Pro šifrování se používá kombinace asymetrické a symetrické šifry se 128bitovým klíčem SSL (Secure Socket Layer) – norma pro šifrovaný přenos vytvořená společností Netscape

Návratové kódy 2xx – úspěch, dotaz byl pochopen a akceptován 1xx – informační, požadavek byl obdržen 3xx – přesměrování, klient musí provést další akce, aby získal požadovaný dokument 4xx – chyba klienta, byl položen chybný dotaz nebo klient nemá oprávnění získat dokument požadovaný v dotazu (např. 401 = Unauthorized, 403 = Forbidden, 404 = Not Found) 5xx – chyba na straně serveru, není schopen obsloužit požadavek (500 = Internal Server Error)

Omezení HTTP Server nemá stálé spojení s klienty a nemůže je proto jednoznačně identifikovat Velké komplikace pro webové aplikace, které vyžadují stavovou informaci – např. nákupní košík Protokol je bezstavový Řešením je přenášení údajů v URL a skrytých polích formuláře

Dynamický × statický dokument Dynamický dokument – tvar a prezentované informace může uživatel ovlivnit svojí činností Dynamický dokument na straně serveru – vytvořen programem, který běží na vzdáleném stroji (různé technologie – vsuvky, PHP, CGI...) Dynamický dokument na straně klienta – vytvoření a modifikaci zajišťuje prohlížeč (klient) Statický dokument – vzhled je neměnný, uživatel si nemůže volit zobrazované informace Generovaný dokument – vytvořen počítačem

Vlastnosti dynamických dokumentů na straně serveru Schopnost řešení složitých a rozsáhlých úloh, používání souborového systému a výkonu serveru Nízká závislost na klientovi (prohlížeči) a jeho schopnostech, klient pouze stránku zobrazuje Veškeré požadavky a data se včetně odpovědí přenášejí přes síťové spojení (protokol TCP) Nelze reagovat na události vzniklé u klienta (pohyb myši, stisk klávesy apod.) – to řeší dynamické dokumenty na straně klienta

Řešení dynamických dokumentů Technologie PHP – (Pretty Human Pages, Rasmus Lerdorf), jazyk integrovaný do HTML... Nadpis... Modul serveru – například PHP, Perl. Rychlejší odezva Obslužný program na rozhraní CGI – možnost práce v libovolném jazyce, obecné, avšak někdy časově a výpočetně náročné

Obslužný program na rozhraní CGI – základní princip klient (prohlížeč) WWW server URL + data HTML obslužný program data HTML CGI data CGI rozhraní (Common Gateway Interface) – definice způsobu komunikace WWW serveru s obslužnou aplikací (programem)

Zpracování požadavku URL dynamického dokumentu na straně serveru se liší v datech, zapsaných za otazníkem Server podle rozšíření.cgi pozná, že se jedná o rozhraní CGI, a předá mu data z URL Obslužný program zpracuje data a na výstup pošle výsledný text (vygenerovaný dokument) Server WWW zašle vytvořený dokument klientovi, který ho zobrazí stejným způsobem jako statické dokumenty

Tvar dat předávaných v URL Metoda předání dat (viz formuláře HTML) 1.GET – data předána viditelně v URL 2.POST – data předána skrytě v těle požadavku … …/skript.cgi?prvni=neco&druhy=neco

Kódování URL Mezera se v URL zobrazí jako + (někdy %20 ) Znaky, které v URL něco znamenají, se kódují jako %cc, kde cc jsou dvě šestnáctkové číslice ordinálního čísla znaku. (Unicode %cccc ) Příklady value= ” Jan Kos ” …skript.cgi?jmeno=Jan+Kos value= ” Tomáš Hála ” …skript.cgi?jmeno=Tom%E1%9A+H%E1la

Proměnné prostředí QUERY_STRING – obsahuje data předaná v URL REQUEST_METHOD – metoda předání dat SERVER_NAME – IP adresa (jméno) serveru SERVER_PROTOCOL – jméno a verze protokolu SERVER_PORT – číslo portu hostitele CONTENT_TYPE – typ dotazovaných dat HTTP_USER_AGENT – prohlížeč REMOTE_ADDR – IP adresa klienta …a mnohé další (nejdůležitější jsou první dvě)

Předávání dat na rozhraní CGI Vstup dat do obslužného programu – z proměnné QUERY_STRING v případě, že jsou data předávána metodou GET – ze standardního vstupu v případě, že jsou data předávána metodou POST Výstup dat z obslužného programu – výpis na standardní výstup

Obecný tvar CGI skriptu Úvodní příkazy Test způsobu předání dat (většinou lze vynechat) #!/bin/bash echo Content-type: echo text/html text/plain … if test $REQUEST_METHOD = GET then Data=$QUERY_STRING else Data=`cat` fi

Obecný tvar CGI skriptu Získání dat Výpis HTML stránky s odpovědí …skript.cgi?vstup=1&jmeno=Franta+Vopicka Cislo=`echo $Data | sed ‘s/vstup=//’ | sed ‘s/&.*//’` Jmeno=`echo $Data | sed ‘s/.*jmeno=//’ | sed ‘s/&.*//’` echo " Odpověď " echo " Číslo: $Cislo " echo " Jméno: $Jmeno " echo " Metoda: $REQUEST_METHOD. " echo " "

Příklady k procvičení 1.Navrhněte HTML formulář a odpovídající skript na straně serveru, který ze zadání alespoň části jména nebo příjmení studenta zobrazí jeho fotografii, UID, celé jméno a příjmení. Předpokládejte, že fotografie studentů jsou v jednom adresáři v souborech, jejichž jméno je tvořeno číslem UID a rozšíření je jpg. Předpokládejte, že údaje o všech studentech (UID, jméno a příjmení) jsou v jediném textovém souboru, jehož přesný tvar navrhněte podle potřeby.

Příklady k procvičení #!/bin/bash echo Content-type: text/html echo vstup=`echo $QUERY_STRING | sed ‘s/.*=//’` echo “ ” for i in `grep $vstup STUDENTI` do cislo=`echo $i | cut –f1 –d:` jmeno=`echo $i | cut –f2 –d:` prijmeni=`echo $i | cut –f3 –d:` echo “ ” echo “ UID: $cislo ” echo “Jméno a příjmení: $jmeno $prijmeni ” done echo “ ”

Příklady k procvičení 2.Navrhněte dynamický dokument HTML, do jehož formuláře může uživatel vložit část názvu nebo autora knihy. Odpovědí je úplná informace o všech knihách, které vyhovují zadanému řetězci. Odpověď do HTML bude mít tvar tabulky s pěti sloupci, v nichž budou přehledně vypsány údaje o názvu, autorovi, roku vydání, nakladatelství a ISBN.

Příklady k procvičení #!/bin/bash echo Content-type: text/html echo vstup=`echo $QUERY_STRING | sed ‘s/.*=//’` echo “ ” echo “ Název Autor Rok ” echo “ Nakladatel ISBN ” for i in `cat data.txt | grep $vstup` do nazev=`echo $i | cut –f1 –d:` autor=`echo $i | cut –f2 –d:` rok=`echo $i | cut –f3 –d:` nakladatel=`echo $i | cut –f4 –d:` ISBN=`echo $i | cut –f5 –d:` echo “ $nazev $autor $rok ” echo “ $nakladatel $ISBN ” done echo “ ”

Příklady k procvičení 3.Navrhněte HTML formulář a odpovídající skript na straně serveru s následující činností: Uživatel zadá do formuláře nějaký řetězec a po stisku odesílacího tlačítka skript poskytne informaci o všech souborech aktuálního adresáře, jejichž jména obsahují zadaný řetězec. Výstup bude formátován do HTML tabulky, v níž bude první sloupec tvořen plným jménem souboru a druhý bude naplněn deseti znaky vyjadřujícími typ souboru a přístupová práva ve stejném tvaru, jako zobrazí příkaz ls –l.

Příklady k procvičení #!/bin/bash echo Content-type: text/html echo vstup=`echo $QUERY_STRING | sed ‘s/.*=//’` echo “ ” for i in `ls | grep $vstup` do prava=`ls –l $i | cut –f1 –d“ ”` echo “ $i $prava ” done echo “ ”

Příklady k procvičení 4.Napište dynamický HTML dokument, do něhož uživatel zadá název souboru a příslušný skript zobrazí prvních 10 řádků tohoto souboru, který se nachází v aktivním adresáři. Ve stránce generované skriptem rovněž uveďte odkaz zpět na formulářovou stránku. K filtraci klientových dat použijte program sed ve tvaru: sed 's/xxx=//' | sed 's/&.*//'

Příklady k procvičení #!/bin/bash echo Content-type: text/html echo vstup=`echo $QUERY_STRING | sed ‘s/.*=//’` echo “ ” cat $vstup | head -10 echo “ Zpět ” echo “ ”

Příklady k procvičení 5.Je dán soubor teploty.txt s následující strukturou: – datum, – teplota v 7 hod., – teplota ve 14 hod., – teplota v 21 hod., – směr větru ve stupních, – rychlost větru v m/s, – tlak v hPa. Příklad dat: |16|19|18|16|105|1009,4 Vytvořte skript, který dodá do prohlížeče jen datum a poslední dva údaje o větru v podobě HTML tabulky.

Příklady k procvičení #!/bin/bash echo Content-type: text/html echo echo “ ” cat teploty.txt | cut –f1,5,6 –d”|” | sed ‘s/^/ /’ | sed ‘s/ / /g’ | sed ‘s/$/ /’ echo “ ”

Příklady k procvičení 6.Sestavte skript, který zobrazí poslední řádek, který se vztahuje k měsíci březnu a kdy byl naměřen tlak alespoň 1000 hPa. Tvar dat, předaný do prohlížeče, zůstane textový. Příklad dat: |16|19|18|16|105|1009,4 #!/bin/bash (řešení je skryto) echo Content-type: text/plain echo cat teploty.txt | grep ^....3.*[1-9]...,.$ | tail -1