Webový archív vědeckých konferencí

Rozměr: px
Začít zobrazení ze stránky:

Download "Webový archív vědeckých konferencí"

Transkript

1 Masarykova univerzita Fakulta informatiky Webový archív vědeckých konferencí bakalářská práce Martin Mayer Brno, 2007

2 Prohlášení Prohlašuji, že tato práce je mým původním autorským dílem, které jsem vypracoval samostatně. Všechny zdroje prameny a literaturu, které jsem při vypracování používal nebo z nich čerpal, v práci řádně cituji s uvedením úplného odkazu na příslušný zdroj. Martin Mayer Poděkování Rád bych poděkoval vedoucímu mé práce RNDr. Jaroslavu Ráčkovi, Ph.D., za odborné vedení a rady při tvorbě této práce.

3 Shrnutí Obsahem této práce je analýza existujícího nevyhovujícího webového archivu sborníků konference a návrh nového systému. Na základě návrhu je vytvořen systém s využitím jazyka PHP a databáze MySQL. Dále je provedena konverze původních dat do nového archivu.

4 Klíčová slova Analýza systému, archivace dokumetů, datové modelování, webové aplikace, vědecká konference

5 Obsah 1 Úvod Analýza a návrh systému Analýza původního webu Požadavky na systém Kapacitní a zátěžové odhady Popis systému Administrační část Veřejná část Datový model Struktura částí webu Implementace Použité technologie HTML a XHTML CSS JavaScript PHP MySQL Nefunkční požadavky Způsob kódování Struktura systému Sdílený kód a jeho použití Databáze Manipulace s daty Ostatní Administrace Autentizace Provádění změn Veřejná část Cache Vyhledávání Použité vývojové nástroje Import původních dat Extrakce údajů z původních HTML stránek Konverze skupin obrázků do PDF Závěr...20 Literatura

6 1 Úvod Mnoho lidí, zvláště mladých, se domnívá, že počítače se k nám dostaly až po roce Archiv konference Tvorba software (TSW) je ale pěkným dokladem toho, jak vypadala ještě dřívější historie používání počítačů. Konference se pořádá kontinuálně každý rok už více než 30 let a je společně s konferencí SOFSEM (Softwarový seminář) nejdéle organizovanou konferencí v českém regionu. Snaží se prezentovat aktuální trendy a moderní metody v programování. První ročník se konal v roce 1975 v Havířově jako seminář Metody programování počítačů 3. generace s počtem učastníků blížícímu se stovce. Po třech letech došlo ke změně na Celostátní seminář programování a za dalších pár let se místo konání přestěhovalo do Ostravy. V 90. létech pak došlo k transformaci akce na konferenci s názvem Tvorba software. Přes půl tisíce autorů z více než dvouset organizací předneslo během tří desetiletí na 800 referátů a zaplnilo ve sbornících kolem 7500 stránek. Archiv sborníků proběhlých konferencí TSW je přístupný veřejnosti na webu. Tento archiv je tvořen statickými HTML stránkami, které však nejsou jenoduše a rychle aktualizovatelné. Cílem této bakalářské práce je vytvořit nový sytém fungující jako archiv sborníků a jejich příspěvků. Tento systém uživateli poskytne přehled všech příspěvků konference podle ročníků a jednodůché hledání příspěvků podle jejich názvu nebo jména autora. Administrátorovi umožní přidat nový sborník, vytvářet, editovat a mazát jeho příspěvky a stejně tak i autory příspěvku. K systému se bude přistupovat přes webové rozhraní. Data ze starého archivu bude potřeba extrahovat a přenést do nového. Jednotlivé kapitoly této práce se zabývají tvorbou tohoto systému. Začíná se od analýzy původního webu ke specifikaci a návrhu nového systému. Pokračuje se popisem použitých technologií a dokumentací implementace. V poslední částí práce je popsána transformace dat ze starého webu. 2

7 2 Analýza a návrh systému Tvorbu nového systému je dobré vždy začít důkladnou analýzou. V tomto případě bude prvním subjektem analýzy původní web, určení jeho obsahu a případných chyb. To usnadní specifikaci požadavků na nový systém. Následně pak mohu rozhodnout, jaké entity se v systému budou vyskytovat, a stanovit strukturu databáze a celého systému. 2.1 Analýza původního webu Úvodní stránka původního archívu se nalézá na adrese Celý web sestává z těchto oblastí, které jsou mezi sebou vzájemně provázány: obsahy a texty sborníků podle ročníků jmenný rejstřík autorů jmenný rejstřík firem tématické rejstříky tříděné systematicky nebo podle abecedy Celkově jsou zpracovány sborníky z let 1975 až V záhlaví každé stránky ročníku je uveden název konference, místo konání a datum. Následuje seznam příspěvků. U příspěvku je vždy uvedeno číslo odpovídající číslu stránky v tištěném sborníků. Zároveň odkazuje na obsah příspěvku. U ročníků 1975 až 1998 tvoří obsah jedna a více naskenovaných stran. U následujících ročníků je obsah stáhnutelný jako jediný soubor formátu PDF. Dále je uveden identifikátor autora odkazující do rejstříku autorů, identifikátor organizace odkazující do rejstříku firem, název příspěvku a klíčová slova odkazující do tématického rejstříku. Jmenný rejstřík autorů je řazen abecedně a rozdělen na dvanáct stránek po čtyřiceti autorech. Autory doplňují odkazy na ročníky, kdy publikovali své příspěvky. U několika autorů je uveden i web nebo . Rejstřík firem je řešen obdobně jako rejstřík autorů. Systematický rejstřík sdružuje témata do několika skupin. Zde uvedené téma odkazuje do rejstříku abecedního, kde se téma spojuje s některým příspěvkem a je k němu doplněno ještě krátka poznámka. Celkově se jeví web a především rejstřík jako poněkud nepřehledný. Nedostatkem je také absence alespoň základního vyhledávání příspěvků. 2.2 Požadavky na systém Systém má zpřístupnit archiv sborníků konference přes webové rozhraní. Se systémem bude pracovat jediný administrátor provádějící veškeré editace. Dalšími uživateli budou návštěvníci webu, kteří mohou zobrazovat obsah archivu a vyhledávat v něm. Pro každý rok lze přidat a editovat jeden sborník. Sborník se skládá z příspěvků. Každý příspěvek má alespoň jednoho autora. K autorovi se vždy uvádí organizace, kterou zastupuje, případně další kontaktní údaje. Obsah příspěvku může být přiložen jako soubor ve formátu PDF. Při změně stavu archivu se uchovává stručná poznámka o provedené akci (vytvoření, editace nebo smazání entity) do logu událostí, aby bylo možné zjistit případné narušení systému. Celý sborník se vždy nachází ve zvěřejněném nebo nezveřejněném stavu. Nezveřejněný sborník je přístupný pouze administrátorovi pro účely editace. 3

8 Zveřejněný sborník a jeho příspěvky jsou přístupné komukoli. Uživatelé mohou hledat příspěvky podle jejich názvu, jména autora, jména organizace autora a ročníku publikace. Data z původního statického webu bude potřeba převést do nového systému. Zdrojová data, ze kterých byl web vygenerovaná, ale bohužel nejsou k dispozici, proto bude nutné data extrahovat přímo z webu. Pro sjednocení zdroje se naskenované stránky každého příspěvku u starších ročníků sloučí do jednoho PDF souboru. Podle těchto požadavků lze sestavit základní logický datový model: Obrázek 1: Logický datový model - diagram entit Přínosem nového systému bude především lehká a rychlá aktualizace prostřednictvím webového rozhraní. V budoucnu bude systém dále snadno rozšiřitelný. 2.3 Kapacitní a zátěžové odhady Podle udajů z původního webu lze vysledovat a obecně předpokládat tyto trendy: Větší editace se budou prováděny jen jednou za rok v průběhu krátkého období. Každoročně přibyde přibližně tři až pět desítek příspěvků. Většina příspěvků má uvedeného jediného autora. Jeden příspěvek má v průměru přibližně 1,3 autorů. Velikost jednoho PDF souboru bývá do 300KiB. Každý rok přibyde cca 10MiB dat. Již existující data sborníků od roku 1975 zabírají přibližně 200MiB. Denní návštěvnost webu se bude pohybovat spíše v řádu desítek lidí. 2.4 Popis systému Systém bude rozdělen do dvou částí. Administrátorská část je neveřejná, vyžaduje autentizaci pro přístup a umožňuje modifikovat údaje v archivu. Veřejná část je přístupná jakémukoli uživateli a prezentuje obsah archivu podle ročníků nebo pomocí hledání Administrační část Administrace je jednouživatelský podsystém, tzn. že se vyžaduje jediný uživatelský účet pro celou část. Přístup k adminstraci systému je podmíněn zadáním loginu admin a hesla. Pro zvýšení bezpečnosti budou existovat dvě hesla běžné a bezpečnostní. Přihlašování bude vždy probíhat běžným heslem a v takovém případě nebude možné změnit bezpečnostní heslo. V případě, kdy by snad někdo nežádoucí odhalil běžné heslo a změnil jej, bude pořád možné přihlásit se s pomocí bezpečnostního hesla, změnit běžné heslo a znemožnit tak další přístup útočníka. Admnistrátor může také prohlížet jednoduchý log 4

9 událostí, ve kterém je pro každou událost měnící stav archivu zaznaménána ip adresa, ze které přišel ke změně podnět, čas, typ změny (vytvoření, modifikace, smazání) a krátky popis. Účel tohoto logu je odhalit diskreditaci hesla nebo nežádoucí chování administrátora, pokud by účet mezi sebou sdílelo více lidí. Administrace systému celkově umožňuje provedení následujících akcí: založení nového sborníku editace sborníku vytvoření příspěvku patřícího ke sborníku editace příspěvku smazání příspěvku přídání nového autora k příspěvku editace autora příspěvku smazání autora u příspěvku smazání PDF souboru přiloženého k příspěvku změna hesla Veřejná část Veřejná část zpřístupní zveřejněné sborníky přes webové rozhraní libovolnému návštěvníkovi. Sborníky jsou řazené podle jejich ročníků, příspěvky podle pořadí v tištěném sborníku. Od roku 1998 toto pořadí odpovídá abecednímu řazení podle jmen autora. Důležitá funkce je základní vyhledávání příspěvků. Portálová část zajišťuje provádění těchto akcí: zobrazení sborníku a jeho detailů včetně seznamu příspěvků zobrazení detailu příspěvku a jeho autorů stažení přiloženého PDF souboru vyhledání příspěvku podle jména příspěvku, jména autora, jména organizace a ročníku 2.5 Datový model Datový model definuje strukturu dat uložených v databázi. 5

10 Obrázek 2: Datový model Popis databázových tabulek a jejich atributů: Tabulka Sbornik Záznamy této tabulky představují jednotlivé ročníky konference. Den a měsíc u dat začátku i konce konání jsou rozděleny na samostatné atributů pro větší variabilitu zadávání. Pokud by byly v atributu typu DATE, nešlo by zadata například jen měsíc, ve kterém se konference konala. rok identifikace záznamu, rok pořádání konference zverejneny příznaka, zda je sborník zveřejněný nazev název konference v daném roce isbn mezinárodní standardní číslování knih, jednoznačná identifikace knižního vydání naklad počet výtisků sborníku misto_konani kde se konference konala datum_od_den den měsíce od kdy se konference konala datum_od_mesic měsíc od kdy se konference konala datum_do_den den měíce do kdy se konference konala datum_do_mesic měsíc do kdy se konference konala Tabulka Prispevek Každý záznam této tabulky se váže přímo na jeden záznam v tabulce sborníků. id identifikace záznamu 6

11 rok identifikace sborníku nazev název příspěvku nazev_ascii název příspěvku zbavený diakritiky, použitelné pro hledání strana číslo stránky, na které příspěvek začíná v tištěném sborníku Tabulka Autor Tabulka uchovává informace o jednotlivých autorech každého příspěvku. id identifikace záznamu prispevek_id identifikace příspěvku v tabulce Prispevek jmeno prostredni_jmeno prijmeni jmeno_slozene spojení jmen a příjmení autora, použitelné pro hledání autora jmeno_slozene_ascii stejně jako předchozí atribut, ale zbavený diakritiky ový kontakt na autora web webová prezentace autora organizace_nazev název organizace, kterou autor zastupuje organizace_nazev_ascii stejně jako předchozí atribut, ale zbavený diakritiky organizace_web adresa webu organizace Tabulka Log udalosti V této tabulce se uchovávají záznamy o provedených změnách dat prostřednictvím administračního rozhraní. id identifikace záznamu ip ip adresa, ze které byla provedena změna cas čas provedení změny udalost typ události, která nastala vytvoření, změna, nebo odstranění záznamu (insert, update, delete) popis stručný textový popis události Tabulky Sbornik, Prispevek a Log udalosti splňují náležitosti třetí normální formy (3NF). Tabulka Autor porušuje 3NF, protože údaje organizace jsou na primárním klíči závislé tranzitivně. Organizace by mohla být samostatnou entitou. Vzhledem ale k tomu, že v existujících datech se často jedna organizace vyskytuje opakovaně pod různými názvy, nebo by bylo značně problematické jednotně určovat organizaci, pokud je nějak složitěji členěna, nebylo by možné zamezit rendundanci v datech entity. Po diskusi se zadavatelem bylo proto rozhodnuto dat přednost méně problematickému řešení porušením formy. 7

12 2.6 Struktura částí webu Následující diagramy popisují hierarchii webu. Každý obdélník bude ve výsledném řešení odpovídat samostatné obrazovce. Obrázek 3: Struktura administrační části Obrázek 4: Struktura veřejné části 8

13 3 Implementace Tato část mé práce popisuje implementaci systému. Zabývá se stručným vysvětlením elementárních technologií a standardů, které byly použity k tvorbě celého systému. Dále popisuji vyprodukovaný zdrojový kód a specifika částí systému. Text doplňují odkazy na internetové zdroje a fragmenty kódu systému. Výsledný zdrojový kód doplněný o patřičné komentáře se nachází na médiu přiloženém k této práci. V době tvorby práce byl systém také otestován a zprovozněn na adrese 3.1 Použité technologie Před tvorbou nového webového archivu jsem se musel seznámit s několika standardy a technologiemi, které umožňují vzájemným provázáním vytvořit požadované řešení. Tato podkapitola popisuje pouze jejich určení. K samotné tvorbě je potřeba jejich více či méně detailní znalosti. Všechny pužívané technologie jsou veřejné standardy nebo software s oteveřeným zdrojovým kódem WWW WWW (World Wide Web, krátce web) označuje celosvětovou soustavu dokumentů. Definovat lze jako propojení těchto technologií: URI (Universal Resource Identifier) způsob jak jednoznačně identifikovat zdroj HTTP (Hypertext transfer protocol) protokol aplikační úrovně pro přenos informací. K tomuto protokolu existuje také bezpečnější verze HTTPS, která umožňuje přenášet data šifrovaně Architektura klient-server Značkovací jazyk HTML a XHTML HTML (Hypertext Markup Language) je značkovací jazyk založený na standardu SGML, což je univerzální značkovací metajazyk. XHTML je obdobný jazyk založený na XML, které také vychází ze SGML. Jazyky spojují obsah (data) s významem (metadata). Obsah bývá uzavřen mezi značky, které určují jejich význam, respektive způsob zobrazení CSS CSS (Cascading Style Sheets) je jazyk pro popis způsobu zobrazení dokumentu napsaného pomocí značkovacího jazyka, nejčastěji HTML, XHTML nebo XML. Hlavní účel je oddělení vzhledu dokumentu od jeho struktury a obsahu JavaScript JavaScript je skriptovací jazyk používaný na straně uživatele, tzn je interpretovaný 9

14 webovým prohlížečem. S jazykem Java jej kromě názvu spojuje jen podobná syntaxe. Umožňuje vložit do webových stránek proveditelný obsah a tak komunikovat s uživatelem, řídit prohlížeč nebo dynamicky vytvářet obsah PHP PHP je skriptovací jazyk určený především ke generování webových stránek. Na rozdíl od JavaScriptu je interpretovaný na straně serveru. Jeho syntaxe je podobná jazyku C. Vzniklo v roce Současná produkční verze má číslo 5 a jejím hlavním přínosem je zlepšená podpora objektového programování. Jazyk má otevřený zdrojový kód a volné použití. Obsáhlá knihovna funkcí, široka podpora různých databázových serverů a jednoduché použití vytvořilo z PHP velmi populární a rozšířerný jazyk. Informace lze nalézt na domovské stránce MySQL MySQL je multiplatformní relační databázový systém standardu SQL. Velmi často se pužívá ve spojení s PHP. K dispozici je pod GPL licencí. Vyniká rychlostí a snadným použitím. Další informace lze nalézt na 3.2 Nefunkční požadavky Je potřeba zajistit, aby systém běžel v produkčním prostředí na operačním systému Linux, webovém serveru Apache 2.0, PHP a MySQL V průběhu následujícího cca jednoho roku se očekává, že přibyde nový server s nainstalovanými novějšími verzemi těchto programů, především PHP ve verzi 5. Proto je vhodné do budoucna maximálně usnadnit přechod systému na novější prostředí. 3.3 Způsob kódování Před samotnou tvorbou ještě vysvětlím několik věcí, které se týkají kódu a programování, a kterých se budu snažit co nejvíce držet. Jednou z nich je jazyk používaný k pojmenovávání proměnných a funkcí. Vzhledem k tomu, ze TSW je především česká konference, jeví se jako vhodné, aby jména tabulek a atributů v databázi byly vždy česky. Stejně tak i v kódu jména proměnných, které jim budou odpovídat. Naopak názvy funkcí a zbylých proměnných by měly být vždy v angličtině podobně, jako jsou názvy funkcí v PHP. Doufám, že takové rozdělení přispěje k lepší čitelnosti a přehlednosti kódu. Podstatným omezením je potřeba, aby vytvořené řešení bylo plně funkční na PHP 4, a současně aby bylo možné v budoucnu s minimem námahy přenést na novější verzi PHP (pravděpodobně verze 5). Z toho důvodu jsem se rozhodl nepoužívat žádné frameworky, kterých existuje několik a i vcelku kvalitních, ale jsou buď psané pro PHP 5 (například v současnosti vznikající Zend framework), nebo by mohly způsobovat kompatibilní problémy při budoucím přechodu. Ze stejného důvodu jsem se také rozhodl neprogramovat systém objektově. PHP 4 obsahuje alespoň slabou podporu pro objektové programování. V PHP 5 byl objektový model docela výrazně změněn. To s sebou však nese často potřebu upravovat již existující kód, aby se v nové verzi dosáhlo správné a požadované funkčnosti. I když se často nejedná a žádné složité úpravy, přesto je to častý problém zabraňující přechodu na novější a bezpečnější verzi PHP. Místo tříd a jejich metod tedy budu používat 10

15 jen vhodně organizované funkce a místo objektů převážně asociativní pole. Projekt není natolik rozsáhlý, aby nutně vyžadoval objektové naprogramování. Obětuji proto výhody objektového přístupu, především dědičnost a zapouzdření, snazšímu přechodu v budoucnu. Nahradím je svojí snahou co nejlépe strukturovat kód a zachovávat tak jeho dobrou čitelnost. Zároveň se budu snažit, aby bylo řešení do budoucna v určitých mezích snadno rozšiřitelné. Zvláště v dřívějších letech bývalo nedobrým zvykem webových vývojářu míchat vzájemně mezi sebou aplikační a prezentační logiku. Pro lepší strukturování budou ve vyvíjeném systému oddělené. Aplikační kód bude obsahovat pouze řídící logiku. Prezentační logika bude uložena v samostatných souborech šablonách (angl. templates). Aplikační kód provádí manipulaci s daty a zajišťuje obsah, který má být zobrazen. Obsahem může být například název a autoři příspěvku. Tento obsah je pak předáván šabloně k zobrazení. Takovéto oddělení má výhody v tom, že při úpravě šablony nemůže dojít k narušení řídícího kódu. Ještě důležitější je u větších projektů, kde umožňuje nezávislou práci vývojářů a designerů. Samotná šablona bude tvořena XHTML kódem, do kterého bude vkládán kód PHP zobrazující dynamický obsah. 3.4 Struktura systému Celý sýstém je rozdělen na dvě na sobě nezávislé části administrace a portál. Portálová část zajišťuje především prezentaci obsahu z databáze. Administrační část je složitější. Kromě podobné prezentační funkce jako v portálové části musí umožňovat editaci obsahu. Klade se u ní také větší důraz na zabezpečení. Obě části mezi sebou sdílejí stejnou databázi a podobný kód. Nyní navrhnu rozložení celého systému do adresářů a pak dopním jejich význam: /inc sdílené knihovní kódy config.php konfigurační údaje /admin administrační část index.php code/ - aplikační logika a kód specifický pro administrační část templates/ - prezentační logika /portal veřejná část index.php getfile.php download zveřejněného PDF souboru code/ - aplikační logika templates/ - prezentační logika /pdf obsahy sborníků v PDF souborech Většina interakce s uživatelem probíhá v obou částech systému přes jediný soubor index.php. Na jednom místě se tak nachází kód společný pro všechny stránky. Aplikační kód se nachází v adresáři code, šablony v templates. V souboru index.php se provádí následující úkony: Inkluze potřebných sdílených souborů 11

16 Výběr aplikačního kódu, který má být proveden a jeho vykonání Zobrazení obsahu za pomoci šablony Nabízí se lehké přirovnání k architektuře MVC (model view-controller). V tomto případě by soubor index.php odpovídal controlleru, inkludovaný kód z code modelu a šablona view. Předpokládejme, že by byla aplikace provozována na doméně tsw.cz. Uvedu příklad, jak by fungovalo výše uvedené strukturování v praxi. Doména by směřovala do adresáře portal, doména admin.tsw.cz do adresáře admin. Tam se nachází indexové soubory, které převezmou požadavek uživatele a vytvoří odpověd v podobě webové stránky. Adresář pdf není přístupný přímo přes web, aby bylo možné kontrolovat přístup k souborům s obsahy příspěvků. Ty jsou totiž dostupné jen tehdy, když je sborník označen jako zveřejněný. Přístup k nim tedy bude prováděn přes skript getfile.php, který bude kontrolovat stav sborníku a přepošle uživateli přímo PDF soubor z adresářového stromu nebo mu zamezí v přístupu k němu. Zároveň je potřeba, aby byl z prostředí PHP možný zápis do tohoto adresáře, jinak by nešlo uploadovat soubor prostřednictvím administračního rozhraní. Obsah adresářů code a templates je v takovémto stromu přístupný veřejně. Uživatel by tak mohl zobrazit prázdnou šablonu nebo spustit PHP skript, což není chtěné. Přístupu k těmto adresářům by tedy mělo být zamezeno. Lze tak provést pomocí oprávnění, zakázem v.htaccess souboru, který zpracovává webserver Apache, nebo úplným přesunem těchto adresářů mimo dokumentový adresář webserveru. Takto navržená stromová struktura je samozřejmě jen jedna z možných. Vytvořený systém bude dostatečně variabilní, aby bylo možné ji bez složitých úprav ve zdrojových kódech nastavit podle potřeby. 3.5 Sdílený kód a jeho použití Sdíleným kódem je myšleno základní API umístěné do adresáře inc a používané v obou částech systému. Jeho prostřednictvím se především přistupuje k databázi a provádí výběr a manipulaci s daty Databáze Ve výchozím stavu je na výběr ze dvou souboru db.mysql.php a db.mysqli.php. Oba obsahují identické API, ale liší se v implementaci. V PHP totiž existují dvě nativní knihovny pro přístup k MySQL databázi, ale často se v prostředí běhu systému vyskytuje jen jedna z nich. Nejčastěji nastává případ, kdy v PHP4 je přístupná extension mysql a v PHP5 naopak extionsion mysqli. Podle toho, která je dostupná, je potřeba vybraný soubor přejmenovat na db.php. Obsažené API tvoří funkce dostačující pro absolutní většinu práce s databázi a zjednodušuje přístup k ní. Navíc vytváří nezávislost na použité extension. Dokumentace funkcí se nachází přímo v souboru, zde uvádím nejdůležitější: db_select($sql) provede dotaz do databáze obsažený v řetězci $sql a vrátí 12

17 výsledek v dvourozměrném asociativním poli. db_select_one($sql) provede dotaz, který vrací ve výsledku právě jeden nebo žádný řádek, a vrátí výsledek. Často jsou to výběry konkrétního záznamu podle primárního klíče nebo selecty s použitím agregačních funkcí. db_escape_value($val) vrátí zadanou hodnotu ošetřenou pro použití v SQL dotazu. db_execute($sql) provede zadaný insert, update nebo delete. db_get_insert_id() vrátí nové id posledního vloženého záznamu Databázové spojení se navazuje automaticky při prvním použití některé databázové funkce. Využívá se při tom konfiguračních hodnot ze souboru /inc/config.php. Příklad použití: <?php $rows = db_select('select id, attr FROM mytab'); foreach ($rows as $row) { echo $row['id'].', '.$row['attr']; } $sql = 'INSERT INTO mytab (attr) VALUES ('.db_escape_value($string).')'; db_execute($sql); $id = db_get_insert_id();?> Manipulace s daty Vytvářený systém není příliš složitý obsahuje tři hlavní entity: sborník, příspěvek, autor. Ke každé této entitě jsem vytvořil potřebné rozhraní umožňující provádět základní akce: vytvoření nového záznamu výběr podle primárního klíče výběr přidružených záznamů (například příspěvky pro daný sborník, autory pro daný příspěvek) modifikace existujícího záznamu smazání záznamu Při použití objektově orientovaného programování (OOP) by pravděpodobně byla vytvořena například třída Prispevek, která by mohla mít metodu insert zapouzdřující vložení instance příspěvku do databáze. O několik kapitol dříve jsem vysvětloval, proč jsem v projektu od OOP upustil. Místo volání metody insert na instanci třídy Prispevek tak používám funkci prispevek_insert, která dostává jako parametr asociativní pole představující instanci příspěvku. Tyto funkce jsou pro každou entitu velmi podobné, jsou dokumentované ve zdrojovém kódu a příklady jejich použití lze snadno nalézt v aplikačním kódu, proto je zde nebudu podrobně rozebírat. Uvedu pouze stručný vysvětlující příklad pro základní pochopení jejich aplikace: <?php /* Vytvoření nového záznamu */ $prispevek = get_prispevek(); // instanciace 13

18 $prispevek['nazev'] = Ukázkový příklad ; prispevek_insert($prispevek); $new_id = $prispevek['id']; /* Modifikace */ $prispevek = prispevek_get_by_id(1); $prispevek['nazev'] = Změněný název ; prispevek_update($prispevek); $autori = prispevek_get_autori($prispevek['id']); foreach ($autori as $autor) { echo $autor['prijmeni']; } /* Delece */ prispevek_delete($prispevek);?> Funkce jsou logicky rozděleny do souborů sbornik.php, prispevek.php a autor.php Ostatní Pro potřeby systému jsem vytvořil několik dalších obecně použitelných funkcí. Nachází se v souboru inc/general.php. Jejich význam, parametry a návratové hodnoty jsou více dokumentovány přímo v kódu. 3.6 Administrace Přístup do administrace je podmíněn autentizací uživatele. Navíc se pro zvýšení bezpečnosti vyžaduje přístup přes zabezpečené připojení (HTTPS). Toto testuji na začátku indexového souboru a v případě, že uživatel používá nezabezpečené připojení, dojde k jeho přesměrování na URI se změněným schématem: if ($_SERVER['HTTPS']!='on') { redirect('https://'.$_server['server_name'].$_server['request_uri']); } Autentizace Pro ověření uživatele se používá autentizace pomocí HTTP protokolu. Snadno se tak zamezí v přístupu k citlivým částem systému. Požadavek odeslaný prohlížečem musí obsahovat hlavičku se jménem uživatele a heslem. Pokud ji neobsahuje, nebo když nesouhlasí jméno či heslo, vrací se v HTTP odpovědi stavový kód 401 Unathorized a prohlížeč v takovém případě vetšinou zobrazí dialogové okno pro zadání jména a hesla. Více informací lze nalézt ve specifikaci HTTP protokolu. V tomto případě je jméno uživatele vždy admin. Může se ale prokázat jedním ze dvou hesel, jak je vysvětleno v požadavcích na systém v kapitole 2. Hesla musí být uložena 14

19 někde v systému. Pro toto místo jsem zvolil soubor /admin/code/passwords.php. Ten obsahuje dvě jednoduché funkce get_admin_password a get_master_password, které každá vrací odpovídající heslo hashovane funkcí md5. Implementace autentizačního mechanismu pak znamená ověření, zda bylo zadáno jméno, toto jméno je admin a zda zadané heslo odpovídá jednomu ze dvou možných: if (!isset($_server['php_auth_user']) $_SERVER['PHP_AUTH_USER']!='admin' (md5($_server['php_auth_pw'])!=get_admin_password() && md5($_server['php_auth_pw'])!=get_master_password())) { response_status_401(); exit(); } Další informace o HTTP autentizaci v PHP lze nalézt přímo v manuálu na adrese Provádění změn Údaje sborníků, příspěků a autorů jsou uživateli zobrazována prostřednictvím formulářových prvků, ve kterých může uživatel zároveň provádět editaci. Při ukládání ověřuji, zda zadal uživatel nezbytné údaje a u některých položek také zda jsou zadané ve správném formátu (např. čísla). V případě špatného zadání k žádné změně nedojde a uživateli se zobrazí zadaná data s vysvětlující hláškou. Při uploadu PDF souboru se také kontroluje jeho hlavička na přítomnost sekvence znaků %PDF-1.. K provedení změny je také potřeba, aby byly data v odeslaném požadvku předána metodou POST. Ta je podle specifikace protokolu HTTP k takovému účelu určena. 3.7 Veřejná část Veřejná část webu je oproti administraci značně jednoduší, protože nevyžaduje až tolik složité kontroly přijatých dat. Poskytuje navíc jednoduché i pokročilé vyhledavání příspěvků. Pro optimalizaci zátěže na server je implementována cache Cache Změny dat v databázi archivu nejsou časté. Větší změny se dělají jednou ročně v souvislosti s každoročním pořádáním konference. U starších ročníků jsou změny hodně výjimečné. Na rozdíl od nepoměrně běžnějšího zobrazovanání těchto dat. Zátěž na server způsobovaná opakovanou prezentací identických dat není sice velká, ale při dané častosti modifikace dat je zcela zbytečná. Z toho důvodu se jeví velmi smysluplné, aby byl u stránek zobrazujících detail sborníku a detail příspěvku použit nějaký kešovací mechanismus. Tzn. že vygenerovaný obsah stránky se při prvním zobrazení uloží někde bokem a je opakovaně používán při dalších přístupech na identickou stránku, dokud nedojde ke změně stavu v systému. Odpadá tak nutná režie způsobená selekcí dat z databáze a generováním výstupu při každém přístupu. Takovouto jednoduchou, ale velmi účinnou cache jsem implementoval do systému. Cache se chová zcela transparentně a řádově zkracuje čas odezvy na požadavek 1. Rozdíl je celkem významný, i když uživatel podstatné zrychlení ve většině případů zřejmě nepozná, 1 Při měření jsem zjistil, ze použití cache znamenalo minimálně dvojnásobné zrychlení. Ale i více než desetinásobné zrychlení nebylo výjimkou. 15

20 protože doba generování stránky bývá i bez použití cache v řádu setin až desetin sekundy. Princip je takový, že při přístupu na stránku se ověřuje, zda pro požadované údaje existuje již dříve vygenerovaná cache. Pokud ano, ověří se, zda došlo k nějaké změně v databázi. Nejjednoduší způsob, jak toto zjisit, je mít jeden synchronizační soubor, jehož čas poslední změny odpovídá času provedení poslední libovolné změny v databázi, která by mohla ovlivnit zobrazovaná data. To lze samozřejmě zabezpečit jen tak, že všechny změny se provádí prostřednictvím administračního rozhraní, které provede zneplatnění celé cache změnou data poslední změny synchronizačního souboru. Čas takovéto poslední změny musí být starší, než čas vygenerování cache, jinak by mohlo dojít k zobrazení neaktuálních dat. Další krok je postupné ověření, že nedošlo ke změně některého souboru, který se podílel na generování obsahu. Například při změně šablony je potřeba každou stránku generovat znovu, jinak by se zobrazoval obsah generovaný podle zastaralé šablony. Pokud tedy nedošlo k žádným změnám, může být cache povážována za stále platnou a odeslána uživateli. V opačném případě se běžným způsobem vygeneruje požadované stránka, odešle uživateli a zárověn uloží do cache pro budoucí požadavky. Současně se ukládá také informace o tom, které všechny zdrojové soubory byly při běhu skriptu použity. K tomu se skvěle hodí funkce get_included_files(). Celá logika procesu je znázorněna na následujícím diagramu aktivit. 16

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

STŘEDNÍ ŠKOLA INFORMAČNÍCH TECHNOLOGIÍ A SOCIÁLNÍ PÉČE STŘEDNÍ ŠKOLA INFORMAČNÍCH TECHNOLOGIÍ A SOCIÁLNÍ PÉČE WEBOWÉ STRÁNKY TŘÍD KAMIL POPELKA ZÁVĚREČNÁ MATURITNÍ PRÁCE BRNO 2011 Prohlášení Prohlašuji, že maturitní práce je mým původním autorským dílem, které

Více

Maturitní projekt do IVT Pavel Doleček

Maturitní projekt do IVT Pavel Doleček Maturitní projekt do IVT Pavel Doleček CO FILMBOOK JE Filmbook je uzavřená webová aplikace pro celkovou správu informací a dat souvisejících se sledováním filmů. Primárně je zaměřen na uchovávání a spravování

Více

WORKWATCH ON-LINE EVIDENCE PRÁCE A ZAKÁZEK

WORKWATCH ON-LINE EVIDENCE PRÁCE A ZAKÁZEK WORKWATCH ON-LINE EVIDENCE PRÁCE A ZAKÁZEK Systém WorkWatch je určen pro malé a střední firmy, které se zabývají službami nebo zakázkovou výrobou. Zajistí dokonalý přehled o všech zakázkách a jejich rozpracovanosti.

Více

MBI - technologická realizace modelu

MBI - technologická realizace modelu MBI - technologická realizace modelu 22.1.2015 MBI, Management byznys informatiky Snímek 1 Agenda Technická realizace portálu MBI. Cíle a principy technického řešení. 1.Obsah portálu - objekty v hierarchiích,

Více

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

Databázové aplikace pro internetové prostředí. 01 - PHP úvod, základní princip, vkládání skriptu, komentáře, výpis na obrazovku Databázové aplikace pro internetové prostředí 01 - PHP úvod, základní princip, vkládání skriptu, komentáře, výpis na obrazovku Projekt: Inovace výuky prostřednictvím ICT Registrační číslo: CZ.1.07/1.5.00/34.250

Více

Webové rozhraní pro datové úložiště. Obhajoba bakalářské práce Radek Šipka, jaro 2009

Webové rozhraní pro datové úložiště. Obhajoba bakalářské práce Radek Šipka, jaro 2009 Webové rozhraní pro datové úložiště Obhajoba bakalářské práce Radek Šipka, jaro 2009 Úvod Cílem práce bylo reimplementovat stávající webové rozhraní datového úložiště MU. Obsah prezentace Úložiště nasazené

Více

DELTA - STŘEDNÍ ŠKOLA INFORMATIKY A EKONOMIE, s.r.o. Obor informační technologie AJAX ESHOP. Maturitní projekt. Třída:

DELTA - STŘEDNÍ ŠKOLA INFORMATIKY A EKONOMIE, s.r.o. Obor informační technologie AJAX ESHOP. Maturitní projekt. Třída: DELTA - STŘEDNÍ ŠKOLA INFORMATIKY A EKONOMIE, s.r.o. Obor informační technologie AJAX ESHOP Maturitní projekt Vypracoval: Denis Ptáček Třída: 4B Rok: 2014/2015 Obsah 1. Použité nástroje... 3 1.1 NetBeans

Více

Vstupní požadavky, doporučení a metodické pokyny

Vstupní požadavky, doporučení a metodické pokyny Název modulu: Základy PHP Označení: C9 Stručná charakteristika modulu Modul je orientován na tvorbu dynamických stánek aktualizovaných podle kontextu volání. Jazyk PHP umožňuje velmi jednoduchým způsobem

Více

ANOTACE vytvořených/inovovaných materiálů

ANOTACE vytvořených/inovovaných materiálů ANOTACE vytvořených/inovovaných materiálů Číslo projektu Číslo a název šablony klíčové aktivity Tematická oblast Formát Druh učebního materiálu Druh interaktivity CZ.1.07/1.5.00/34.0722 III/2 Inovace a

Více

Národní elektronický nástroj. Import profilu zadavatele do NEN

Národní elektronický nástroj. Import profilu zadavatele do NEN Národní elektronický nástroj Import profilu zadavatele do NEN V 1.2 2014 Obsah 1 Cíl...... 2 2 Nutné podmínky k umožnění importu profilu zadavatele...... 2 3 Povinnosti zadavatele dle metodiky k vyhlášce

Více

plussystem Příručka k instalaci systému

plussystem Příručka k instalaci systému plussystem Příručka k instalaci systému Tato příručka je určena zejména prodejcům systému a případně koncovým uživatelům. Poskytuje návod, jak provést potřebná nastavení komponent. ITFutuRe s.r.o. 26.2.2015

Více

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

INOVACE PŘEDMĚTŮ ICT. MODUL 11: PROGRAMOVÁNÍ WEBOVÝCH APLIKLACÍ Metodika Vyšší odborná škola ekonomická a zdravotnická a Střední škola, Boskovice INOVACE PŘEDMĚTŮ ICT MODUL 11: PROGRAMOVÁNÍ WEBOVÝCH APLIKLACÍ Metodika Zpracoval: Jaroslav Kotlán srpen 2009s Úvod Modul Programování

Více

8.2 Používání a tvorba databází

8.2 Používání a tvorba databází 8.2 Používání a tvorba databází Slide 1 8.2.1 Základní pojmy z oblasti relačních databází Slide 2 Databáze ~ Evidence lidí peněz věcí... výběry, výpisy, početní úkony Slide 3 Pojmy tabulka, pole, záznam

Více

PHP framework Nette. Kapitola 1. 1.1 Úvod. 1.2 Architektura Nette

PHP framework Nette. Kapitola 1. 1.1 Úvod. 1.2 Architektura Nette Kapitola 1 PHP framework Nette 1.1 Úvod Zkratka PHP (z anglického PHP: Hypertext Preprocessor) označuje populární skriptovací jazyk primárně navržený pro vývoj webových aplikací. Jeho oblíbenost vyplývá

Více

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

rychlý vývoj webových aplikací nezávislých na platformě Jiří Kosek rychlý vývoj webových aplikací nezávislých na platformě Jiří Kosek Co je to webová aplikace? příklady virtuální obchodní dům intranetový IS podniku vyhledávací služby aplikace jako každá jiná přístupná

Více

Maturitní témata Školní rok: 2015/2016

Maturitní témata Školní rok: 2015/2016 Maturitní témata Školní rok: 2015/2016 Ředitel školy: Předmětová komise: Předseda předmětové komise: Předmět: PhDr. Karel Goš Informatika a výpočetní technika Mgr. Ivan Studnička Informatika a výpočetní

Více

1 Administrace systému 3. 1.3 Moduly... 3 1.4 Skupiny atributů... 4 1.5 Atributy... 4 1.6 Hodnoty atributů... 4

1 Administrace systému 3. 1.3 Moduly... 3 1.4 Skupiny atributů... 4 1.5 Atributy... 4 1.6 Hodnoty atributů... 4 CRM SYSTÉM KORMORÁN PŘÍRUČKA ADMINISTRÁTORA Obsah 1 Administrace systému 3 1.1 Uživatelské účty.................................. 3 1.2 Přístupová práva................................. 3 1.3 Moduly.......................................

Více

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

Ing. Přemysl Brada, MSc., Ph.D. Ing. Martin Dostal. Katedra informatiky a výpočetní techniky, FAV, ZČU v Plzni 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,

Více

SRSW4IT Inventarizační SW. Prezentace aplikace. Vedoucí DP: ing. Lukáš Macura Autor: Bc. Petr Mrůzek

SRSW4IT Inventarizační SW. Prezentace aplikace. Vedoucí DP: ing. Lukáš Macura Autor: Bc. Petr Mrůzek Prezentace aplikace Vedoucí DP: ing. Lukáš Macura Autor: Bc. Petr Mrůzek Osnova Úvod Programovací jazyk - PHP Etapy vývoje Funkce aplikace Co SW umí Na čem se pracuje Vize do budoucna Úvod Úvod Inspirováno

Více

Databázové systémy. Doc.Ing.Miloš Koch,CSc. koch@fbm.vutbr.cz

Databázové systémy. Doc.Ing.Miloš Koch,CSc. koch@fbm.vutbr.cz Databázové systémy Doc.Ing.Miloš Koch,CSc. koch@fbm.vutbr.cz Vývoj databázových systémů Ukládání dat Aktualizace dat Vyhledávání dat Třídění dat Výpočty a agregace 60.-70. léta Program Komunikace Výpočty

Více

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

PHP PHP je skriptovací programovací jazyk dynamických internetových stránek PHP je nezávislý na platformě PHP PHP původně znamenalo Personal Home Page a vzniklo v roce 1996, od té doby prošlo velkými změnami a nyní tato zkratka znamená Hypertext Preprocessor. PHP je skriptovací programovací jazyk, určený především

Více

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

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 Aktivní webové stránky Úvod: - statické webové stránky: pevně vytvořený kód HTML uložený na serveru, ke kterému se přistupuje obvykle pomocí protokolu HTTP (HTTPS - zabezpečený). Je možno používat i různé

Více

Olga Rudikova 2. ročník APIN

Olga Rudikova 2. ročník APIN Olga Rudikova 2. ročník APIN Redakční (publikační) systém neboli CMS - content management system (systém pro správu obsahu) je software zajišťující správu dokumentů, nejčastěji webového obsahu. (webová

Více

Dobrý SHOP Popis produktu a jeho rozšíření

Dobrý SHOP Popis produktu a jeho rozšíření Dobrý SHOP Popis produktu a jeho rozšíření 501M012.N01 11/11/2011 www.dlaex.cz info@dlaex.cz OBSAH 1 Úvod...3 2 Účel produktu...3 3 Vlastnosti produktu...3 3.1 Koncepce...3 3.2 Základní y...3 3.3 Doplňkové

Více

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

P@wouk nástroj pro jednoduchou správu a vedení agendy studentských počítačových sítí na kolejích SU OPF Karviná Ing. P@wouk nástroj pro jednoduchou správu a vedení agendy studentských počítačových sítí na kolejích SU OPF Karviná Ing. Tomáš Petránek tomas@petranek.eu Karviná, 21. 10. 2011 Obsah prezentace 1. Okolnosti

Více

45 Plánovací kalendář

45 Plánovací kalendář 45 Plánovací kalendář Modul Správa majetku slouží ke tvorbě obecných ročních plánů činností organizace. V rámci plánu je třeba definovat oblasti činností, tj. oblasti, ve kterých je možné plánovat. Každá

Více

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);

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); Programovací jazyk PHP doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes Miroslav.Benes@vsb.cz Obsah Třídy a objekty Výjimky Webové aplikace

Více

Využití OOP v praxi -- Knihovna PHP -- Interval.cz

Využití OOP v praxi -- Knihovna PHP -- Interval.cz Page 1 of 6 Knihovna PHP Využití OOP v praxi Po dlouhé teorii přichází na řadu praxe. V následujícím textu si vysvětlíme možnosti přístupu k databázi pomocí různých vzorů objektově orientovaného programování

Více

Novinky verze 2.3.0 systému Spisové služby (SpS) e-spis LITE

Novinky verze 2.3.0 systému Spisové služby (SpS) e-spis LITE ICZ a.s. Správa a řízení dokumentů Na hřebenech II 1718/10 147 00 Praha 4 Tel.: +420-222 271 111 Fax: +420-222 271 112 Internet: www.i.cz Novinky verze 2.3.0 systému Spisové služby (SpS) e-spis LITE Vypracoval

Více

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

DUM č. 11 v sadě. 36. Inf-12 Počítačové sítě projekt GML Brno Docens DUM č. 11 v sadě 36. Inf-12 Počítačové sítě Autor: Lukáš Rýdlo Datum: 06.05.2014 Ročník: 3AV, 3AF Anotace DUMu: WWW, HTML, HTTP, HTTPS, webhosting Materiály jsou určeny pro bezplatné

Více

Postupy práce se šablonami IS MPP

Postupy práce se šablonami IS MPP Postupy práce se šablonami IS MPP Modul plánování a přezkoumávání, verze 1.20 vypracovala společnost ASD Software, s.r.o. dokument ze dne 27. 3. 2013, verze 1.01 Postupy práce se šablonami IS MPP Modul

Více

Zpráva o zhotoveném plnění

Zpráva o zhotoveném plnění Zpráva o zhotoveném plnění Aplikace byla vytvořena v souladu se Smlouvou a na základě průběžných konzultací s pověřenými pracovníky referátu Manuscriptorium. Toto je zpráva o zhotoveném plnění. Autor:

Více

Evidence požadavků uživatelů bytů a nebytových prostor

Evidence požadavků uživatelů bytů a nebytových prostor Evidence požadavků uživatelů bytů a nebytových prostor Úvod Pro zjednodušení a zprůhlednění Vaší komunikace se správní firmou (dále jen SF ), která má na starost objekt, v němž se nachází bytový či nebytový

Více

Š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

Š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 Škola: Gymnázium, Brno, Slovanské náměstí 7 Šablona: III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN prostřednictvím ICT Číslo projektu: CZ.1.07/1.5.00/34.0940

Více

SYLABUS IT V. Jiří Kubica. Ostrava 2011

SYLABUS IT V. Jiří Kubica. Ostrava 2011 P MODULU SYLABUS IT V DÍLČÍ ČÁST PROGRAMOVÁNÍ BUSINESS APLIKACÍ PODNIKU Bronislav Heryán Jiří Kubica Ostrava 20 : Autoři: Vydání: Počet stran: Tisk: Vydala: Sylabus modulu IT v podniku Programování business

Více

CZ.1.07/1.5.00/34.0527

CZ.1.07/1.5.00/34.0527 Projekt: Příjemce: Digitální učební materiály ve škole, registrační číslo projektu CZ.1.07/1.5.00/34.0527 Střední zdravotnická škola a Vyšší odborná škola zdravotnická, Husova 3, 371 60 České Budějovice

Více

Obsah. Rozdíly mezi systémy Joomla 1.0 a 1.5...15 Systém Joomla coby jednička online komunity...16 Shrnutí...16

Obsah. Rozdíly mezi systémy Joomla 1.0 a 1.5...15 Systém Joomla coby jednička online komunity...16 Shrnutí...16 Obsah Kapitola 1 Seznámení se systémem Joomla!................................. 9 Přehled systémů pro správu obsahu....................................................10 Použití systému pro správu obsahu.....................................................11

Více

Návrh a tvorba WWW stránek 1/14. PHP a databáze

Návrh a tvorba WWW stránek 1/14. PHP a databáze Návrh a tvorba WWW stránek 1/14 PHP a databáze nejčastěji MySQL součástí balíčků PHP navíc podporuje standard ODBC PHP nemá žádné šablony pro práci s databází princip práce s databází je stále stejný opakované

Více

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

Vyšší odborná škola a Střední škola,varnsdorf, příspěvková organizace. Šablona 4 VY 32 INOVACE 0101 0304 Vyšší odborná škola a Střední škola,varnsdorf, příspěvková organizace Šablona 4 VY 32 INOVACE 0101 0304 VÝUKOVÝ MATERIÁL Identifikační údaje školy Číslo projektu Název projektu Číslo a název šablony Autor

Více

GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER. váš partner na cestě od dat k informacím

GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER. váš partner na cestě od dat k informacím GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER váš partner na cestě od dat k informacím globtech spol. s r.o. karlovo náměstí 17 c, praha 2 tel.: +420 221 986 390 info@globtech.cz

Více

HTML Hypertext Markup Language

HTML Hypertext Markup Language HTML Hypertext Markup Language je jazyk určený na publikování a distribuci dokumentů na Webu velmi jednoduchý jazyk používá ho mnoho uživatelů má výkonné prostředky (příkazy) k formátování dokumentů (různé

Více

VÝVOJ INTERNETOVÝCH APLIKACÍ - VIA

VÝVOJ INTERNETOVÝCH APLIKACÍ - VIA Metodický list č. 1 Způsob zakončení : Úvod Technologie webových aplikací Protokol HTTP Po zvládnutí tématického celku bude student mít základní přehled o problematice programování internetových (webových)

Více

POKYNY K REGISTRACI PROFILU ZADAVATELE

POKYNY K REGISTRACI PROFILU ZADAVATELE POKYNY K REGISTRACI PROFILU ZADAVATELE Stav ke dni 4. 12. 2012 Obsah: 1 Úvod... 3 1.1 Podmínky provozu... 3 1.2 Pokyny k užívání dokumentu... 3 2 Registrace profilu zadavatele... 4 2.1 Přihlášení uživatele...

Více

Dobrý FOTO Popis produktu a jeho rozšíření

Dobrý FOTO Popis produktu a jeho rozšíření Dobrý FOTO Popis produktu a jeho rozšíření 502M012.N00 11/11/2011 www.dobry-foto.cz www.dlaex.cz info@dlaex.cz OBSAH 1 Úvod...3 2 Účel produktu...3 3 Vlastnosti produktu...3 3.1 Koncepce...3 3.2 Základní

Více

ODBORNÁ KNIHOVNA ČESKÉ POJIŠŤOVNY ONLINE SW ŘEŠENÍ AIP SAFE

ODBORNÁ KNIHOVNA ČESKÉ POJIŠŤOVNY ONLINE SW ŘEŠENÍ AIP SAFE ODBORNÁ KNIHOVNA ČESKÉ POJIŠŤOVNY ONLINE SW ŘEŠENÍ AIP SAFE Ludmila Langová, AiP Safe Lenka Vavrušková, ČP Příspěvek se věnuje stručnému popisu systému AiP Safe a možnostem jeho využití pro archivaci,

Více

Stručný úvod pro programátory. Michal Kuchta

Stručný úvod pro programátory. Michal Kuchta Stručný úvod pro programátory Michal Kuchta Alespoň základní znalost PHP Základy klasického OOP a jeho implementaci v PHP Schopnost oprostit se od konvenčního tvoření stránek 2 Framework pro snazší vývoj

Více

E-NABÍDKA PARTNER.REDA.CZ

E-NABÍDKA PARTNER.REDA.CZ E-NABÍDKA PARTNER.REDA.CZ Reda e-nabídka představuje mocný nástroj, díky kterému mohou naši registrovaní klienti přímo z prostředí e-shopu partner.reda.cz vytvářet vlastní produktové nabídky pro své zákazníky.

Více

24 Uživatelské výběry

24 Uživatelské výběry 24 Uživatelské výběry Uživatelský modul Uživatelské výběry slouží k vytváření, správě a následnému používání tématicky seskupených osob a organizací včetně jejich kontaktních údajů. Modul umožňuje hromadnou

Více

přes webový prohlížeč pomocí P@wouka Ing. Tomáš Petránek tomas@petranek.eu

přes webový prohlížeč pomocí P@wouka Ing. Tomáš Petránek tomas@petranek.eu Open Sourceřešení správy studentských počítačových sítí na kolejích SU OPF Karviná aneb cesta, jak efektivně administrovat síť a její uživatele přes webový prohlížeč pomocí P@wouka Ing. Tomáš Petránek

Více

Elektronická podpora výuky předmětu Komprese dat

Elektronická podpora výuky předmětu Komprese dat Elektronická podpora výuky předmětu Komprese dat Vojtěch Ouška ouskav1@fel.cvut.cz 19. června 2006 Vojtěch Ouška Elektronická podpora výuky předmětu Komprese dat - 1 /15 Co je to SyVyKod? SyVyKod = Systém

Více

Webová aplikace Znalostní testy online UŽIVATELSKÁ PŘÍRUČKA

Webová aplikace Znalostní testy online UŽIVATELSKÁ PŘÍRUČKA Webová aplikace Znalostní testy online UŽIVATELSKÁ PŘÍRUČKA 2005 Lukáš Trombik OBSAH ÚVOD... 1 SPUŠTĚNÍ... 1 POPIS OVLÁDÁNÍ INFORMAČNÍHO SYSTÉMU... 1 POPIS KLIENTSKÉ ČÁSTI... 1 POPIS ADMINISTRÁTORSKÉ ČÁSTI...

Více

Ukázka knihy z internetového knihkupectví www.kosmas.cz

Ukázka knihy z internetového knihkupectví www.kosmas.cz Ukázka knihy z internetového knihkupectví www.kosmas.cz U k á z k a k n i h y z i n t e r n e t o v é h o k n i h k u p e c t v í w w w. k o s m a s. c z, U I D : K O S 1 8 1 1 4 5 Oracle průvodce správou,

Více

26 Evidence pošty. Popis modulu. Záložka Evidence pošty

26 Evidence pošty. Popis modulu. Záložka Evidence pošty 26 Evidence pošty Uživatelský modul Evidence pošty realizuje podrobnou evidenci všech došlých a odesílaných poštovních zásilek s možností přidělovat tyto zásilky uživatelům informačního systému k vyřízení,

Více

Systém elektronického rádce v životních situacích portálu www.senorady.cz

Systém elektronického rádce v životních situacích portálu www.senorady.cz Systém elektronického rádce v životních situacích portálu www.senorady.cz Obec Senorady Miroslav Patočka 2006 Obsah: 1. Úvodní informace 1.1 Informace pro uživatele 1.1.1 Přístupnost HTML, PDA, WAP, XML

Více

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

Střední odborná škola a Střední odborné učiliště, Hořovice Kód DUM : VY_32_INOVACE_DYN.1.19 Název materiálu: 19 PHP- Základy práce s databází PHP 2. část MySQL (Aplikace knihovna) Anotace Autor Jazyk Očekávaný výstup DUM je žákům průvodcem vytvoření databáze knih

Více

Jan Forman Manuál 30.5.2013. CLASSIFICATIO N: public / veřejný dokument IDE NTIFICATIO N N U MBER: 0000000000001 AUTH OR:

Jan Forman Manuál 30.5.2013. CLASSIFICATIO N: public / veřejný dokument IDE NTIFICATIO N N U MBER: 0000000000001 AUTH OR: CLASSIFICATIO N: public / veřejný dokument TITLE: Manuál k webovému rozhraní hostingu P ub l i c URL: http://janforman.org/files/webhosting.pdf OFFICE NAME AND ADDRESS: --- IDE NTIFICATIO N N U MBER: 0000000000001

Více

Obsah Úvod 4. TF Wmake 1.5

Obsah Úvod 4. TF Wmake 1.5 Obsah Úvod 4 Struktura systému 5 Uživatelské role 6 Přihlášení do systému 7 Úvodní stránka 8 enu redaktora 9 enu autora 9 azyky 0 Odhlášení ze systému 0 Nastavení Bloky Editace bloku Přidání nového bloku

Více

Individuální projekt z předmětu webových stránek 2012/2013 - Anketa

Individuální projekt z předmětu webových stránek 2012/2013 - Anketa Individuální projekt z předmětu webových stránek 2012/2013 - Anketa Daniel Beznoskov, 2 IT A Skupina 1 Úvod Prohlášení o autorství Prohlašuji, že jsem individuální projekt z předmětu webových stránek na

Více

Dobrý CMS Popis produktu a jeho rozšíření

Dobrý CMS Popis produktu a jeho rozšíření Dobrý CMS Popis produktu a jeho rozšíření 503M012.N01 11/09/2012 www.dlaex.cz info@dlaex.cz OBSAH 1 Úvod...3 2 Účel produktu...3 3 Vlastnosti produktu...3 3.1 Koncepce...3 3.2 Základní y...3 3.3 Doplňkové

Více

XML A XWEB JAKO NÁSTROJE PRO TVORBU WEBOVÉHO SÍDLA S VELKÝM MNOŽSTVÍM KŘÍŽOVÝCH ODKAZŮ

XML A XWEB JAKO NÁSTROJE PRO TVORBU WEBOVÉHO SÍDLA S VELKÝM MNOŽSTVÍM KŘÍŽOVÝCH ODKAZŮ XML A XWEB JAKO NÁSTROJE PRO TVORBU WEBOVÉHO SÍDLA S VELKÝM MNOŽSTVÍM KŘÍŽOVÝCH ODKAZŮ Vlastimil Čevela 664 42 Modřice, Benešova 279, tel. 547 216 183, http://www.volweb.cz/cevelavl/, e-mail: cevelavl@vol.cz

Více

Webová stránka. Matěj Klenka

Webová stránka. Matěj Klenka Webová stránka Matěj Klenka Osobní webová stránka Toto je dokumentace k mé webové stránce This is a documentation to my web page Já, Matěj Klenka, prohlašuji, že má webová stránka byla vytvořena mnou a

Více

Semestrální práce 2 znakový strom

Semestrální práce 2 znakový strom Semestrální práce 2 znakový strom Ondřej Petržilka Datový model BlockFileRecord Bázová abstraktní třída pro záznam ukládaný do blokového souboru RhymeRecord Konkrétní třída záznamu ukládaného do blokového

Více

Databáze prodejců. Tlačítka. Vytvoří kartu nového prodejce (Alt+N); Změní vybraného prodejce Uloží nového prodejce nebo změnu (Alt+U);

Databáze prodejců. Tlačítka. Vytvoří kartu nového prodejce (Alt+N); Změní vybraného prodejce Uloží nového prodejce nebo změnu (Alt+U); Databáze prodejců Tlačítka Vytvoří kartu nového prodejce (Alt+N); Změní vybraného prodejce (Alt+E); Uloží nového prodejce nebo změnu (Alt+U); Při zakládání nového prodejce zadejte jeho číslo (musí to být

Více

Ukládání a vyhledávání XML dat

Ukládání a vyhledávání XML dat XML teorie a praxe značkovacích jazyků (4IZ238) Jirka Kosek Poslední modifikace: $Date: 2014/12/04 19:41:24 $ Obsah Ukládání XML dokumentů... 3 Ukládání XML do souborů... 4 Nativní XML databáze... 5 Ukládání

Více

MATLABLINK - VZDÁLENÉ OVLÁDÁNÍ A MONITOROVÁNÍ TECHNOLOGICKÝCH PROCESŮ

MATLABLINK - VZDÁLENÉ OVLÁDÁNÍ A MONITOROVÁNÍ TECHNOLOGICKÝCH PROCESŮ MATLABLINK - VZDÁLENÉ OVLÁDÁNÍ A MONITOROVÁNÍ TECHNOLOGICKÝCH PROCESŮ M. Sysel, I. Pomykacz Univerzita Tomáše Bati ve Zlíně, Fakulta aplikované informatiky Nad Stráněmi 4511, 760 05 Zlín, Česká republika

Více

Personální evidence zaměstnanců

Personální evidence zaměstnanců Mendelova univerzita v Brně Provozně ekonomická fakulta Personální evidence zaměstnanců Uživatelská dokumentace Bc. Petr Koucký Bc. Lukáš Maňas Bc. Anna Marková Brno 2015 1 Popis funkcionality Námi řešená

Více

17. července 2005 15:51 z moravec@yahoo.com http://www.z-moravec.net/

17. července 2005 15:51 z moravec@yahoo.com http://www.z-moravec.net/ 17. července 2005 15:51 z moravec@yahoo.com http://www.z-moravec.net/ Úvod 1 Úvod Nedávno jsem zveřejnil návod na vytvoření návštěvní knihy bez nutnosti použít databázi. To je výhodné tehdy, kdy na serveru

Více

Kerio IMAP Migration Tool

Kerio IMAP Migration Tool Kerio IMAP Migration Tool 2011 Kerio Technologies s.r.o. Všechna práva vyhrazena. Verze: 7.2 1 Úvod Tato příručka slouží jako průvodce migrací uživatelských účtů a dat z libovolného IMAP serveru do úložiště

Více

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/34.0333 Vzdělávání v informačních a komunikačních technologií

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/34.0333 Vzdělávání v informačních a komunikačních technologií VY_32_INOVACE_33_02 Škola Název projektu, reg. č. Vzdělávací oblast Vzdělávací obor Tematický okruh Téma Tematická oblast Název Autor Vytvořeno, pro obor, ročník Anotace Přínos/cílové kompetence Střední

Více

36 Elektronické knihy

36 Elektronické knihy 36 Elektronické knihy Uživatelský modul Elektronické knihy slouží k přípravě a publikování informací ve formátu HTML. Tento formát je vhodný pro prezentaci informací na internetu a je široce podporován

Více

Manuál pro implementaci aplikace Na poštu

Manuál pro implementaci aplikace Na poštu Manuál pro implementaci aplikace Na poštu Verze: 1.4.2013 0 Obsah 1. Popis služby... 2 2. Jak to funguje... 2 3. Ukázka souboru... 3 4. Implementace... 4 5. Specifikace souboru... 5 6. Logika vyhledávání...

Více

Aplikace pro srovna ní cen povinne ho ruc ení

Aplikace pro srovna ní cen povinne ho ruc ení Aplikace pro srovna ní cen povinne ho ruc ení Ukázkový přiklad mikroaplikace systému Formcrates 2010 Naucrates s.r.o. Veškerá práva vyhrazena. Vyskočilova 741/3, 140 00 Praha 4 Czech Republic tel.: +420

Více

Úvod...1 Instalace...1 Popis funkcí...2 Hlavní obrazovka...2 Menu...3 Práce s aplikací - příklad...5

Úvod...1 Instalace...1 Popis funkcí...2 Hlavní obrazovka...2 Menu...3 Práce s aplikací - příklad...5 Rejstřík Úvod...1 Instalace...1 Popis funkcí...2 Hlavní obrazovka...2 Menu...3 Práce s aplikací - příklad...5 Úvod Správcovská aplikace slouží k vytvoření vstupního a zašifrovaného souboru pro odečtovou

Více

1.13 ACCESS popis programu

1.13 ACCESS popis programu Název školy Číslo projektu Autor Název šablony Název DUMu Tematická oblast Předmět Druh učebního materiálu Anotace Vybavení, pomůcky Střední průmyslová škola strojnická Vsetín CZ.1.07/1.5.00/34.0483 Ing.

Více

Maturitní otázky z předmětu PROGRAMOVÁNÍ

Maturitní otázky z předmětu PROGRAMOVÁNÍ Wichterlovo gymnázium, Ostrava-Poruba, příspěvková organizace Maturitní otázky z předmětu PROGRAMOVÁNÍ 1. Algoritmus a jeho vlastnosti algoritmus a jeho vlastnosti, formy zápisu algoritmu ověřování správnosti

Více

Aplikace je program určený pro uživatele. Aplikaci je možné rozdělit na části:

Aplikace je program určený pro uživatele. Aplikaci je možné rozdělit na části: Aplikace Aplikace je program určený pro uživatele. Aplikaci je možné rozdělit na části: prezentační vrstva vstup dat, zobrazení výsledků, uživatelské rozhraní, logika uživatelského rozhraní aplikační vrstva

Více

Instalace a první spuštění Programu Job Abacus Pro

Instalace a první spuštění Programu Job Abacus Pro Instalace a první spuštění Programu Job Abacus Pro Pro chod programu je nutné mít nainstalované databázové úložiště, které je připraveno v instalačním balíčku GAMP, který si stáhnete z našich webových

Více

5 Evidence manželských smluv

5 Evidence manželských smluv 5 Evidence manželských smluv 5.1 Společné vyhledávání v evidencích Společné vyhledávání v evidencích slouží k vyhledání evidovaných závětí, listin i smluv a to pouze vyhledáním podle rodného čísla a data

Více

Pokročilé techniky tvorby sestav v Caché. ZENové Reporty

Pokročilé techniky tvorby sestav v Caché. ZENové Reporty Pokročilé techniky tvorby sestav v Caché ZENové Reporty Úvodem Jednoduché sestavy Pokročilé sestavy Ladění Historie ZEN reporty sdílejí podobný princip definování obsahu jako ZENové stránky Byly uvedeny

Více

Implementace LMS MOODLE. na Windows 2003 Server a IIS 6.0

Implementace LMS MOODLE. na Windows 2003 Server a IIS 6.0 Implementace LMS MOODLE na Windows 2003 Server a IIS 6.0 Obsah 1 ÚVOD... 3 1.1 Instalace PHP... 3 1.1.1 Nastavení práv k adresáři PHP... 3 1.1.2 Úprava souboru php.ini... 4 1.1.3 Proměnné prostředí...

Více

2 PŘÍKLAD IMPORTU ZATÍŽENÍ Z XML

2 PŘÍKLAD IMPORTU ZATÍŽENÍ Z XML ROZHRANÍ ESA XML Ing. Richard Vondráček SCIA CZ, s. r. o., Thákurova 3, 160 00 Praha 6 www.scia.cz 1 OTEVŘENÝ FORMÁT Jednou z mnoha užitečných vlastností programu ESA PT je podpora otevřeného rozhraní

Více

PRODUKTY. Tovek Tools

PRODUKTY. Tovek Tools jsou desktopovou aplikací určenou k vyhledávání informací, tvorbě různých typů analýz a vytváření přehledů a rešerší. Jsou vhodné pro práci i s velkým objemem textových dat z různorodých informačních zdrojů.

Více

NÁVOD NA OBSLUHU INTERNETOVÉ PREZENTACE. Ataxo Czech s.r.o.

NÁVOD NA OBSLUHU INTERNETOVÉ PREZENTACE. Ataxo Czech s.r.o. NÁVOD NA OBSLUHU INTERNETOVÉ PREZENTACE Ataxo Czech s.r.o. ÚVOD Internetové stránky vytvořené společností Ataxo v rámci produktu Mini web můžete jednoduše a rychle upravovat prostřednictvím on-line administrace.

Více

Uživatelský manuál. Aplikace GraphViewer. Vytvořil: Viktor Dlouhý

Uživatelský manuál. Aplikace GraphViewer. Vytvořil: Viktor Dlouhý Uživatelský manuál Aplikace GraphViewer Vytvořil: Viktor Dlouhý Obsah 1. Obecně... 3 2. Co aplikace umí... 3 3. Struktura aplikace... 4 4. Mobilní verze aplikace... 5 5. Vytvoření projektu... 6 6. Části

Více

DATABÁZE MS ACCESS 2010

DATABÁZE MS ACCESS 2010 DATABÁZE MS ACCESS 2010 KAPITOLA 5 PRAKTICKÁ ČÁST TABULKY POPIS PROSTŘEDÍ Spuštění MS Access nadefinovat název databáze a cestu k uložení databáze POPIS PROSTŘEDÍ Nahoře záložky: Soubor (k uložení souboru,

Více

M4 PDF rozšíření. Modul pro PrestaShop. http://www.presta-addons.com

M4 PDF rozšíření. Modul pro PrestaShop. http://www.presta-addons.com M4 PDF rozšíření Modul pro PrestaShop http://www.presta-addons.com Obsah Úvod... 2 Vlastnosti... 2 Jak modul funguje... 2 Zdroje dat... 3 Šablony... 4 A. Označení šablon... 4 B. Funkce Smarty... 5 C. Definice

Více

Zabezpečení proti SQL injection

Zabezpečení proti SQL injection Zabezpečení proti SQL injection ESO9 intranet a.s. Zpracoval: Tomáš Urych U Mlýna 2305/22, 141 Praha 4 Záběhlice Dne: 19.9.2012 tel.: +420 585 203 370-2 e-mail: info@eso9.cz Revize: Urych Tomáš www.eso9.cz

Více

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

Mgr. Vlastislav Kučera přednáška č. 1 Mgr. Vlastislav Kučera přednáška č. 1 jazyk (x)html kaskádové styly Castro, E.: HTML, XHTML a CSS. CPress, 2007 Písek, S.: HTML a XHTML, začínáme programovat. Grada Publishing, 2003 Wempen, F.: HTML a

Více

Metody tvorby ontologií a sémantický web. Martin Malčík, Rostislav Miarka

Metody tvorby ontologií a sémantický web. Martin Malčík, Rostislav Miarka Metody tvorby ontologií a sémantický web Martin Malčík, Rostislav Miarka Obsah Reprezentace znalostí Ontologie a sémantický web Tvorba ontologií Hierarchie znalostí (D.R.Tobin) Data jakékoliv znakové řetězce

Více

UDS for ELO. Univerzální datové rozhraní. >> UDS - Universal Data Source

UDS for ELO. Univerzální datové rozhraní. >> UDS - Universal Data Source Univerzální datové rozhraní UDS for ELO UDS pro ELO je univerzální datové rozhraní, schopné napojit systém pro archivaci a správu dokumentů ELO na libovolný datový zdroj a to bez nutnosti programování.

Více

Uživatelská příručka

Uživatelská příručka B2B CENTRUM a.s. 3.2011 Obsah Začínáme... 3 Přihlášení a zapomenuté heslo... 3 Vytvoření uživatele... 3 Editace osobních údajů... 5 Vkládání souborů... 6 Elektronický podpis... 8 Stavební deník... 11 Identifikační

Více

IntraVUE 2.0.3 Co je nového

IntraVUE 2.0.3 Co je nového IntraVUE 2.0.3 Co je nového Michal Tauchman Pantek (CS) s.r.o. Červen 2008 Strana 2/8 Úvod IntraVUE je diagnostický a podpůrný softwarový nástroj pro řešení komunikačních problémů, vizualizaci a dokumentaci

Více

INFORMAČNÍ SYSTÉM VIDIUM A VYUŽITÍ MODERNÍCH TECHNOLOGIÍ

INFORMAČNÍ SYSTÉM VIDIUM A VYUŽITÍ MODERNÍCH TECHNOLOGIÍ INFORMAČNÍ SYSTÉM VIDIUM A VYUŽITÍ MODERNÍCH TECHNOLOGIÍ Michal Brožek, Dominik Svěch, Jaroslav Štefaník MEDIUM SOFT a.s., Cihelní 14, 702 00 Ostrava, ČR Abstrakt Neustále rostoucí význam sběru dat, možnost

Více

Databázové a informační systémy Informační systém prodejny nábytku. Jakub Kamrla, KAM087

Databázové a informační systémy Informační systém prodejny nábytku. Jakub Kamrla, KAM087 Databázové a informační systémy Informační systém prodejny nábytku Jakub Kamrla, KAM087 1. část Funkční a nefunkční požadavky 1. K čemu má systém sloužit Jedná se o informační systém pro jednu nejmenovanou

Více

2015 GEOVAP, spol. s r. o. Všechna práva vyhrazena.

2015 GEOVAP, spol. s r. o. Všechna práva vyhrazena. 2015 GEOVAP, spol. s r. o. Všechna práva vyhrazena. GEOVAP, spol. s r. o. Čechovo nábřeží 1790 530 03 Pardubice Česká republika +420 466 024 618 http://www.geovap.cz V dokumentu použité názvy programových

Více

Základy WWW publikování

Základy WWW publikování Ing. Igor Kopetschke Oddělení aplikované informatiky Ústav nových technologií a aplikované informatiky Fakulta mechatroniky a mezioborových inženýrských studií Technická univerzita v Liberci Email : igor.kopetschke@tul.cz

Více