VYSOKÉ UENÍ TECHNICKÉ V BRN


1 VYSOKÉ UENÍ TECHNICKÉ V BRN BRNO UNIVERSITY OF TECHNOLOGY FAKULTA ELEKTROTECHNIKY A KOMUNIKANÍCH TECHNOLOGIÍ &Uac...
Author:  Tereza Hájková

0 downloads 16 Views 1MB Size

Recommend Documents


Masarykova univerzita v Brn
1 Masarykova univerzita v Brn Ekonomicko-správní fakulta Studijní obor: Finan ní podnikání ANALÝZA KO...

MENDELOVA UNIVERZITA V BRN
1 MENDELOVA UNIVERZITA V BRNĚ Agronomická fakulta Ústav zemědělské, potravinářské a environmentální t...

MENDELOVA UNIVERZITA V BRN
1 MENDELOVA UNIVERZITA V BRNĚ Zahradnická fakulta v Lednici Cesty v krajině Bakalářská práce Vedoucí bakalář...

VYSOKÉ UENÍ TECHNICKÉ V BRN
1 VYSOKÉ UENÍ TECHNICKÉ V BRN BRNO UNIVERSITY OF TECHNOLOGY FAKULTA ELEKTROTECHNIKY A KOMUNIKANÍCH TECHNOLOGIÍ &Uac...

VYSOKÉ UENÍ TECHNICKÉ V BRN
1 VYSOKÉ UENÍ TECHNICKÉ V BRN BRNO UNIVERSITY OF TECHNOLOGY FAKULTA STAVEBNÍ ÚSTAV POZEMNÍHO STAVITELSTV&Iac...

VYSOKÉ UČENÍ TECHNICKÉ V BRN
1 VYSOKÉ UČENÍ TECHNICKÉ V BRN BRNO UNIVERSITY OF TECHNOLOGY FAKULTA ELEKTROTECHNIKY A KOMUNIKAČNÍCH TECHNOLOGIÍ FA...

VYSOKÉ UENÍ TECHNICKÉ V BRN
1 VYSOKÉ UEÍ TEHIKÉ V BR BRO UIVERSITY OF TEHOLOGY FAKULTA STROJÍHO IŽEÝRSTVÍ ÚSTAV MATERIÁLOV...

VYSOKÉ UENÍ TECHNICKÉ V BRN
1 VYSOKÉ UENÍ TECHNICKÉ V BRN BRNO UNIVERSITY OF TECHNOLOGY FAKULTA STAVEBNÍ ÚSTAV BETONOVÝCH A ZDNÝC...

VYSOKÉ UČENÍ TECHNICKÉ V BRN
1 VYSOKÉ UČENÍ TECHNICKÉ V BRN BRNO UNIVERSITY OF TECHNOLOGY FAKULTA STAVEBNÍ ÚSTAV VODNÍCH STAVEB FACULTY O...

VYSOKÉ UČENÍ TECHNICKÉ V BRN
1 VYSOKÉ UČENÍ TECHNICKÉ V BRN BRNO UNIVERSITY OF TECHNOLOGY FůKULTů PODNIKůTELSKÁ ÚSTůV INFORMATIKY FACULTY OF BUS...



VYSOKÉ U ENÍ TECHNICKÉ V BRN BRNO UNIVERSITY OF TECHNOLOGY

FAKULTA ELEKTROTECHNIKY A KOMUNIKA NÍCH TECHNOLOGIÍ ÚSTAV TELEKOMUNIKACÍ

FACULTY OF ELECTRICAL ENGINEERING AND COMMUNICATION DEPARTMENT OF TELECOMMUNICATIONS

APLIKACE PRO SPRÁVU OBSAHU INTERNETOVÝCH STRÁNEK APPLICATION FOR ADMINISTRATION OF CONTENT INTERNET PAGES.

DIPLOMOVÁ PRÁCE MASTER´S THESIS

AUTOR PRÁCE

Bc. Ji í KAPLAN

AUTHOR

VEDOUCÍ PRÁCE SUPERVISOR

BRNO 2008

Ing. Jan KACÁLEK

2

LICEN NÍ SMLOUVA POSKYTOVANÁ K VÝKONU PRÁVA UŽÍT ŠKOLNÍ DÍLO uzav ená mezi smluvními stranami: 1. Pan/paní Jméno a p íjmení: Ji í Kaplan Bytem: Lu ní 2600/68, 61600, Brno - Žabovresky Narozen/a (datum a místo): 28.6.1984 v Brn (dále jen „autor“) a 2. Vysoké u ení technické v Brn Fakulta elektrotechniky a komunika ních technologií se sídlem Údolní 244/53, 602 00, Brno jejímž jménem jedná na základ písemného pov ení d kanem fakulty: prof. Ing. Kamil Vrba, CSc. (dále jen „nabyvatel“)

l. 1 Specifikace školního díla 1. P edm tem této smlouvy je vysokoškolská kvalifika ní práce (VŠKP): diserta ní práce diplomová práce bakalá ská práce jiná práce, jejíž druh je specifikován jako ....................................................... (dále jen VŠKP nebo dílo)

3

Název VŠKP:

Aplikace pro správu internetových stránek

Vedoucí/ školitel VŠKP:

Ing. Jan Kacálek

Ústav:

Telekomunikací

Datum obhajoby VŠKP: VŠKP odevzdal autor nabyvateli v*: tišt né form



po et exemplá

2

elektronické form



po et exemplá

2

2. Autor prohlašuje, že vytvo il samostatnou vlastní tv r í inností dílo shora popsané a specifikované. Autor dále prohlašuje, že p i zpracovávání díla se sám nedostal do rozporu s autorským zákonem a p edpisy souvisejícími a že je dílo dílem p vodním. 3. Dílo je chrán no jako dílo dle autorského zákona v platném zn ní. 4. Autor potvrzuje, že listinná a elektronická verze díla je identická.

lánek 2 Ud lení licen ního oprávn ní 1. Autor touto smlouvou poskytuje nabyvateli oprávn ní (licenci) k výkonu práva uvedené dílo nevýd le n užít, archivovat a zp ístupnit ke studijním, výukovým a výzkumným ú el m v etn po izovaní výpis , opis a rozmnoženin. 2. Licence je poskytována celosv tov , pro celou dobu trvání autorských a majetkových práv k dílu. 3. Autor souhlasí se zve ejn ním díla v databázi p ístupné v mezinárodní síti ihned po uzav ení této smlouvy 1 rok po uzav ení této smlouvy 3 roky po uzav ení této smlouvy 5 let po uzav ení této smlouvy 10 let po uzav ení této smlouvy

*

hodící se zaškrtn te

4

(z d vodu utajení v n m obsažených informací) 4. Nevýd le né zve ej ování díla nabyvatelem v souladu s ustanovením § 47b zákona . 111/ 1998 Sb., v platném zn ní, nevyžaduje licenci a nabyvatel je k n mu povinen a oprávn n ze zákona.

lánek 3 Záv re ná ustanovení 1.

Smlouva je sepsána ve t ech vyhotoveních s platností originálu, p i emž po jednom vyhotovení obdrží autor a nabyvatel, další vyhotovení je vloženo do VŠKP.

2.

Vztahy mezi smluvními stranami vzniklé a neupravené touto smlouvou se ídí autorským zákonem, ob anským zákoníkem, vysokoškolským zákonem, zákonem o archivnictví, v platném zn ní a pop . dalšími právními p edpisy.

3.

Licen ní smlouva byla uzav ena na základ svobodné a pravé v le smluvních stran, s plným porozum ním jejímu textu i d sledk m, nikoliv v tísni a za nápadn nevýhodných podmínek.

4.

Licen ní smlouva nabývá platnosti a ú innosti dnem jejího podpisu ob ma smluvními stranami.

V Brn dne: 28.5.2008

………………………………………..

…………………………………………

Nabyvatel

Autor

5

Anotace: Tato diplomová práce je zam ena na popis prost edí .NET Framework, jeho verzí, architektury, assembly a jejich formátu. Popisuje programovací jazyk C#, jeho podporované programovací postupy a atributy. Obsahuje popis ASP.NET, jeho charakteristiku, používané adresá e, ovládací prvky a návrhový vzor Model-View-Controller. Dále popisuje vhodnost .NET prost edí pro tvorbu aplikací a porovnání s PHP. Krátce seznamuje s ADO.NET, vázáním dat, databázemi, jejich typy a jazykem SQL a redak ním systémem. Na konci je popsána struktura databáze navrhnutého redak ního systému, administrace uživatel a jeho ásti a funkce.

Klí ová slova: .NET Framework, ASP.NET, C#, databáze, SQL, CMS

Abstract: This master’s thesis is focused on description of .NET Framework, versions, architecture, assembly and data formats. Describes programming language C#, his supporting programming processes and architecture. Contains description of ASP.NET, characteristics, used directories, control items and design model Model-View-Controller. Next part describes usability .NET background for creation of aplication and comparsion with PHP. Shortly introduces with ADO.NET, databinding, databases, his types and SQL language and content management system. At the end is desribed database structure of drafted content management system, user administration and his parts and functions.

Keywords: .NET Framework, ASP.NET, C#, database, SQL, CMS

6

PROHLÁŠENÍ: Prohlašuji, že svou diplomovou práci na téma Aplikace pro správu obsahu internetových stránek jsem vypracoval samostatn pod vedením vedoucího diplomové práce a s použitím odborné literatury a dalších informa ních zdroj , které jsou všechny citovány v práci a uvedeny v seznamu literatury na konci práce. Jako autor uvedené diplomové práce dále prohlašuji, že v souvislosti s vytvo ením této diplomové práce jsem neporušil autorská práva t etích osob, zejména jsem nezasáhl nedovoleným zp sobem do cizích autorských práv osobnostních a jsem si pln

v dom následk

porušení ustanovení § 11 a následujících

autorského zákona . 121/2000 Sb., v etn možných trestn právních d sledk vyplývajících z ustanovení § 152 trestního zákona . 140/1961 Sb.“

V Brn dne 28.5.2008

………………….. (podpis autora)

7

POD KOVÁNÍ: D kuji vedoucímu diplomové práce Ing. Janu Kacálkovi, za velmi užite nou metodickou pomoc a cenné rady p i zpracování diplomové práce.

V Brn dne 28.5.2008

……………………….. (podpis autora)

8

Obsah Obsah .................................................................................................................................... 1 Seznam obrázk ................................................................................................................... 11 1. Úvod................................................................................................................................ 12 2. .NET Framework ............................................................................................................. 13 2.1 Verze .NET Framework ............................................................................................. 13 2.2 Architektura .NET...................................................................................................... 15 2.3. Assembly .NET ......................................................................................................... 17 2.3.1. Formát assembly .NET ....................................................................................... 19 2.4. Reflexe...................................................................................................................... 20 3. C# .................................................................................................................................... 21 3.1 Programovací postupy ................................................................................................ 21 3.2. Atributy..................................................................................................................... 22 4. ASP.NET ......................................................................................................................... 23 4.1 Charakteristika ........................................................................................................... 23 4.2 Adresá e..................................................................................................................... 23 4.3. Ovládací prvky .......................................................................................................... 24 4.4. Model-View-Controller ............................................................................................. 25 4.5. Vhodnost .NET prost edí pro tvorbu aplikací............................................................. 29 5. ADO.NET........................................................................................................................ 30 5.1. Vázání dat ................................................................................................................. 31 6. Databáze .......................................................................................................................... 32 6.1 SQL ........................................................................................................................... 33 7. Redak ní systém .............................................................................................................. 34 8. Návrh struktury databáze.................................................................................................. 35 9. Tvorba systému................................................................................................................ 37 9.1 Databáze .................................................................................................................... 37 9.2 Struktura .................................................................................................................... 37 9.3 Administrace uživatel ............................................................................................... 38 10. ásti redak ního systému ............................................................................................... 39 10.1 Prezenta ní ást ........................................................................................................ 39 10.1.1 P ispívání do diskuse ......................................................................................... 39 9

10.2 Administra ní ást .................................................................................................... 41 10.2.1 P idání sekce ..................................................................................................... 41 10.2.2 Generování sekce............................................................................................... 41 10.2.3 Mazání a editace sekce ...................................................................................... 42 10.2.4 P idání lánku.................................................................................................... 43 10.2.5 Mazání a editace lánku..................................................................................... 43 9. Záv r ............................................................................................................................... 45 10. Literatura ....................................................................................................................... 46

10

Seznam obrázk Obr. 1: Architektura .NET Framework 2.0 ........................................................................... 16 Obr. 2: Assembly ................................................................................................................. 18 Obr. 3. Struktura t íd MVC .................................................................................................. 26 Obr. 4: Chování pasivního modelu ....................................................................................... 27 Obr. 5: Použití pozorovatele k odd lení modelu od pohledu v aktivním modelu ................... 28 Obr. 6: Chování aktivního modelu ....................................................................................... 29 Obr. 7. Schéma struktury databáze. ...................................................................................... 36 Obr. 8: Prezentace................................................................................................................ 40 Obr. 9: Psaní p ísp vk . ....................................................................................................... 40 Obr. 10: P idání sekce. ......................................................................................................... 42 Obr. 11: Mazání a editace sekcí............................................................................................ 42 Obr. 12: P idání nového lánku. ........................................................................................... 44 Obr. 13: Mazání a editace lánku. ........................................................................................ 44

11

1. Úvod Tato diplomová práce

tená e seznamuje s prost edím .NET Frameworku, jeho

verzemi, architekturou a jazykem C#. Jsou v ní popsány výhody a nevýhody .NET a porovnání s konkurentem PHP, dále obsahuje

popis databází a jazyka SQL.V záv ru je

popsán hlavní cíl této práce a to návrh struktury databáze redak ního systému a jeho realizace spolu s popisem jeho funkcí a možností. Redak ní systém neboli CMS ( Content Management Systém ) je výkonný nástroj, který velmi zjednodušuje administraci webových stránek. Uživatel nemusí mít žádné znalosti HTML, respektive nemusí v bec nic v d t o programování webu. To otevírá dve e k tvorb webových stránek tisíc m uživatel . D kazem toho jsou nap íklad blogy, kterých je jen na eském internetu bez po et.

12

2. .NET Framework .NET Framework je moderní platforma, která zjednodušuje vývoj aplikací v prost edí internetu. Platforma m že být do opera ního systému Microsoft Windows p idána, nebo v p ípad nov jšího opera ního systému je v n m již obsažena. Následuje vý et hlavních vlastností poskytovaných platformou .NET Framework. Úplná interoperabilita s existujícím kódem – Existující binární jednotky COM se mohou kombinovat s jednotkami .NET a obrácen . Dále je možno volat z kódu .NET knihovny založené na C. To je tzv. Pinvoke. Kompletní integrace jazyk – Podpora d d ní, zpracování výjimek a lad ní p es jazyky. Spole ný engine pro všechny .NET jazyky – Každý jazyk rozumí definované sad typ . Knihovna základních t íd – Poskytuje jednotný objektový model, který používají všechny .NET jazyky a ochra uje p ed voláním API v surovém stavu. Bezpe nost - .NET povoluje b h kódu s r zným stupn m d v ry bez použití sandbox.

2.1 Verze .NET Framework .NET Framework byl vydáván v následujících verzích. Verze 1.0 První verze .NET Framework. Uvoln na 13. 2. 2002, dostupná pro Windows 98, NT 4.0, 2000 a XP. Verze 1.1 První významný upgrade. Publikován 3. 4. 2003. Distribuován jako samostatný balík nebo jako ást MS Visual Studio .NET 2003. Toto je první verze obsažená p ímo v opera ním systému a to MS Windows server 2003. Zm ny obsažené v této verzi jsou: Vestav ná podpora pro mobilní ASP.NET. -d íve pouze jako dopln k. Zm ny v bezpe nosti. Vestav ná podpora pro ODBC a Oracle databáze. 13

.NET Compact Framework. Verze .NET Frameworku pro malé za ízení. IPv6 Zm ny v API Verze 2.0 Uvoln no s Visual Studio .NET 2005, MS SQL Server 2005 a BizTalk 2006. Jako samostatný balí ek publikováno 22. 1. 2006. Poslední verze s podporou pro MS Windows 2000. Zm ny oproti verzi 1.1: Zm ny v API Podpora 64 bitové platformy Nov hostující API pro p vodní aplikace p ející si hostovat instanci .NET runtimu? Nová kontrola dat s deklarovaným vázáním dat Nový vzhled pro ASP.NET podporující skiny i themes .NET Micro Framework – verze .NET Framework pro domácí elektroniku Vylepšení ovládacích prvk ASP.NET Verze 3.0 Tato verze je integrovaná ve Windows Vista a Windows Server 2008. M že být p idána i do Windows XP a Windows Server 2003. Obsahuje ty i nové významné komponenty. Windows Presentation Foundation WPF – grafický subsystém p ímo p íbuzný s XAML. Zprost edkovává konzistentní programovací model pro tvorbu aplikací a ist odd luje uživatelské prost edí a algoritmy obsluhující vým nu informací mezi databází a uživatelským rozhraním. M že být umíst n na desktopu nebo hostován webovým prohlíže em. Windows Communication Foundation WCF – komunika ní subsystém k podpo e spojování aplikací na jednom nebo n kolika sítí spojenými po íta i. Windows Workflow Foundation WF – Technologie pro definování, spoušt ní a ízení organizace práce.

14

Windows CardSpace Softwarová komponenta, která bezpe n ukládá digitální identitu a zprost edkovává jednotné rozhraní pro výb r identity pro jednotlivé operace jako t eba p ihlašování na webové stránce. Verze 3.5 Oficiáln uvoln na 19. listopadu 2007. Používá CLR verze 2.0 SP1, které p idává n kolik vlastností a metod pro podporu prvk jako nap . LINQ. Tyto zm ny nemají vliv na aplikace napsané pro verzi 2.0. Plná podpora pro .NET Framework 3.5 je obsažena ve Visual Studiu 2008. Zdrojový kód BCL je uvoln n v licenci Microsoftu. S touto verzí je uvoln n i nový .NET Compact Framework zprost edkovávající LINQ, http kompresi a zlepšuje podporu audia pro mobilní za ízení. Následují n které další zm ny: Nové vlastnosti jazyka v C# 3.0 a VB.NET 9.0 kompileru Anonymní typy se statickým rozhraním LINQ ( Language Integrated Query - komponenta p idávající schopnost nativn se dotazovat na data do .NET jazyk , užívající syntaxi p ipomínající SQL ) Podpora stránkování pro ADO.NET V ADO.NET synchroniza ní API pro synchronizaci lokální cache a pam ti serveru

2.2 Architektura .NET Základem platformy .NET Framework je spole ný jazykový modul ( Common Language Runtime – CLR ) . D vodem jeho vytvo ení bylo zjednodušení vývoje aplikací, vytvo ení bezpe ného prost edí a podpora více programovacích jazyk . Slouží jako výkonové jádro pro ízené aplikace. Spravuje spoušt ní kódu a poskytuje základní služby, stará se o nízkoúrov ové operace jako nap . správa pam ti. Nad tímto modulem stojí knihovna základních t íd ( Basic Class Library – BCL ), která obsahuje adu funkcí pro práci se soubory, sítí, bezpe ností, službami aj. Následující vrstvu tvo í Windows Forms, ASP.NET a ADO.NET. Windows Forms zprost edkovává p ístup k p irozeným Windows rozhraním obalením existujícího Windows API do kódu, který se spouští pod správou CLR. Pro tvorbu dynamických webových aplikací, webových stránek a XML webových služeb je ASP.NET. ADO.NET slouží pro p ístup k dat m a datovým službám. Na úplném vrcholu struktury se 15

nachází jazyky. ( Obr. 1.) Na každou úlohu si pak v .NET Framework m žeme vybrat libovolný podporovaný jazyk, který nám nejvíce vyhovuje. Na výb r máme nap . Visual Bacis, C++, C#, Python, Pearl atd.

Obr. 1: Architektura .NET Framework 2.0

CLI Common Language Infrastructure je otev ená specifikace vyvinutá Microsoftem, která popisuje spustitelný kód a b hové prost edí jádra .NET Framework. Definuje prost edí, které dovoluje rozmanité vysokoúrov ové jazyky používané na r zných platformách bez p edchozího p epsání pro danou platformu. Implementace CLI Microsoftem se jmenuje CLR. CLR se skládá ze spole ného systému typ

( CTS – Common Type System) a spole né

specifikace jazyk ( CLS – Common Language Specification). Spole ný systém typ popisuje datové typy a programovací konstrukce, které CLR podporuje. Specifikuje komunikaci entit a podrobnosti o její reprezentaci ve formátu metadat . NET. CLS Definuje podmnožinu typ

a programových konstrukcí, na kterých se mohou dohodnout

všechny programovací jazyky .NET

16

BCL Knihovna základních t íd je dostupná pro všechny programovací jazyky .NET. Zapouzd uje všemožné základní v ci. T mi jsou nap . vlákna, grafická realizace, práce se soubory, komunikace s hardwarem, interakci s databázemi, manipulaci s XML dokumenty

2.3. Assembly .NET Kompilátory platformy .NET Framework produkují pouze ízené moduly, které požadují CLR ke svému b hu. CLR ovšem nepracuje p ímo s ízenými moduly, ale pracuje s assembly. Assembly je logicky uspo ádaná skupina ízených modul , nebo resource modul . Dále je Assembly nejmenší jednotkou, která se používá, chrání a ísluje verzemi. ( Fajfr, 2006 ). I p es to, že binární jednotky .NET mají stejnou p íponu jako COM a binární jednotky Win32 ( .dll nebo .exe ), nejsou si obsahem podobné. Binární jednotky .dll .NET neexportují metody pro usnadn ní komunikace s runtimem COM. Nepopisují se pomocí typových knihoven COM a neregistrují se v systémovém registru. Nejd ležit jší je však to, že binární jednotky .NET obsahují intermediální jazyk CIL a metadata typ a neobsahují instrukce specifické pro platformy. Z toho vyplývá, že se musí CIL následn zkompilovat ješt pro danou platformu ( Obr. 2. ). To se provádí tzv. kompilátorem JIT ( Just In Time – za pochodu). Každé CPU je vybavené kompilátorem JIT a je pro n j optimalizováno. Nap . na kapesních PC je kompilátor vybaven pro b h v prost edí s malou pam tí. Dále je zkompilovaný strojový kód uchován v pam ti vhodným zp sobem pro danou platformu pro další použití. P i dalším volání se tedy již nemusí kompilovat.

17

Obr. 2: Assembly

18

2.3.1. Formát assembly .NET Assembly .NET se skládá z následujících prvk . Záhlaví Win32 Toto záhlaví ustanovuje systém m Windows možnost na ítat a manipulovat s assembly. Data záhlaví identifikují druh aplikace ( konzolová, s GUI, knihovna ), jejímž hostitelem mají být Windows. Záhlaví CLR Záhlaví CLR je blok dat, jenž musejí podporovat všechny soubory .NET, aby mohly být hostovány CLR. Záhlaví definuje p epína e umož ující runtimu pochopit rozvržení ízeného souboru. Kód CIL Kód CIL obsažený v jádru se kompiluje za pochodu do instrukcí, které jsou specifické pro platformu a CPU. Metadata Popisují všechny typy ( t ídy, struktury atp. ) a také všechny leny typ ( metody, vlastnosti atp.). Obsahuje i externí typy, na n ž odkazuje. Toto je klí ový prvek platformy .NET. Pomocí metadat runtime umis uje typy uvnit jednotky a rozvrhuje je v pam ti Manifest Popisuje samotnou assembly. Dokumentuje všechny moduly, všechny externí assembly, na které se aktuáln odkazuje a z izuje verzi assembly.

19

2.4. Reflexe Jedním z d sledk

použití mechanismu metadat pro všechny typy v prost edí .NET

frameworku je možnost tyto typy v našem programu prozkoumávat a tato v c je nazývána reflexe. Jmenný prostor, který obsahuje nemalý po et t íd, jež námi mohou být použity pro manipulaci s danými elementy konkrétní aplikace, nese název System.Reflection.( Puš, 2005 ) Je možno nap íklad získat seznam všech typ , metod, vlastností, událostí a

lenských

prom nných uvnit dané assembly. Dá se zjistit i sada podporovaných rozhraní, parametry metody

a

další

detaily.

Následuje

n kolik

klí ových

t íd

jmenného

prostoru

System.Reflection. Assembly – t ída obsahující metody umož ující na íst assembly, prozkoumávat a manipulovat s ní AssemblyName – odhaluje podrobnosti ukryté za identitou assembly EventInfo – obsahuje informace o dané události FieldInfo – obsahuje informace o dané datové lenské prom nné PropertyInfo – obsahuje informace o dané vlastnosti MethodInfo – obsahuje informace o dané metod MemberInfo – definuje chování typ EventInfo, FieldInfo, MethodInfo a PropertyInfo Module – umož uje p ístup k modulu uvnit vícesouborové assembly ParameterInfo – obsahuje informace o parametru

20

3. C# C# je programovací jazyk, který byl uveden spole n s Visual Studiem .NET na za átku roku 2002. Je to vlastn zjednodušená, syntakticky istá, vylepšená a striktn objektov orientovaná verze C++. Pro programování v C# je bezpodmíne n nutné mít nainstalovaný .NET Framework. To samé platí pro spoušt ní program

v C# vytvo ených. C# umí

produkovat pouze kód vykonavatelný uvnit runtime .NET. Pro popis takového kódu se používá termín ízený kód ( managed code ). Binární jednotka obsahující tento ízený kód se jmenuje assembly. Jazyk nabízí následující schopnosti: Nepožadují se žádné ukazatele. Není t eba s nimi p ímo manipulovat. Automatická správa pam ti pomocí garbage collection. Formální syntaktické konstrukce pro vý ty, struktury a vlastnosti t íd. Možnost jednoduše p et žovat operátory. Podpora programovacích technik založených na rozhraních. Podpora aspektov orientovaného programování.

3.1 Programovací postupy Programovací jazyk C# podporuje jak postupy objektov orientované programování, tak generického programování. Objektov

orientovaným programováním rozumíme

programovací vzor, který pro vytvá ení aplikací užívá objekty. P i programování se využívá vlastností t chto objekt . Tyto vlastnosti jsou nap . vnit ní pam , metoda objektu, schopnost p ijmotu a zpracovat zprávu z venku a obsahovat jiné objekty. Dalším programovacím postupem je generické programování. P i generickém programování je kód psán tak, že je odd len algoritmus od datových typ . Jsou odd leny zp sobem, že kód algoritmu je možno brát jako obecný, bez ohledu na použité datové typy. Teprve dosazením datových typ lze kód algoritmu chápat jako konkrétní.

21

3.2. Atributy V programovacím jazyce se u jednotlivých

ástí kódu deklaruje ada informací.

Nap íklad u t ídy m žeme uvést jaké rozhraní má implementována, typ návratové hodnoty aj. Atributy jsou tedy konstrukce dopl ující elementy kódu. ( assembly, typy, moduly, leny, atd.) o ur ité informace. Atributy jsou stejn jako vše ostatní objekt. Každý z nich je instancí t ídy Systém.Attribute. V C# jsou specifikovány napsáním atributu do hranatých závorek. Podle konvence by název p edstavující t ídu atributu kon il slovem Attribute. Atribut m že být i více a odd lují se árkami. Atributy mohou p ebírat parametry rozši ující množství dopl ujících informací a m žeme tvo it i svoje vlastní atributy. Musíme proto vytvo it t ídu d dící p ímo nebo ne ze t ídy Systém.Attribute.

22

4. ASP.NET ASP.NET je systém na tvorbu webových stránek, webových aplikací a XML webových služeb. Je to nástupce Microsoft technologie ASP. ASP.NET je postaven na CLR, dovolující psát kód v jakémkoliv .NET jazyce.

4.1 Charakteristika V klasickém ASP je logika vložena do HTML. To je vhodné, pokud je kód krátký. Pracuje se s ním pohodln ji, jelikož je naráz vid t kód i HTML zna ky. Mezi výhody tohoto ešení pat í snadn jší odesílání jinému vývojá i, snadn jší p ejmenování z d vodu neexistujících závislostí mezi soubory a správa soubor v systému pro ízení zdrojového kódu. V opa ném p ípad jsou vytvo eny dva soubory. .aspx a .aspx.cs nebo .aspx.vb. Tomu se íká kód v pozadí - code-behind. Tato technika odd lí programovací kód od prezenta ní logiky HTML. Je vhodné jej použít tehdy, máme-li dost kódu a na jeho vývoji se podílí více lidí. Výhody takového ešení jsou: úplná separace HTML, na kterém pracují designé i a kódu, který zpracovávají programáto i. Kód se dá využít ve více souborech a nemají k n mu p ístup další nezainteresované osoby.

4.2 Adresá e P i tvorb stránek pomocí ASP.NET si m žeme vytvo it libovolnou adresá ovou strukturu, nicmén existuje ur itá skupina názv , které mají pro APS.NET speciální význam. App_Browsers: Složka pro defini ní soubory prohlíže e identifikující prohlíže e a jejich schopnosti

23

App_Code: Složka, kam se ukládá zdrojový kód, který se kompiluje jako sou ást aplikace. Kód se kompiluje p i požadavku na stránku a je automaticky p ístupný. App_Data: Složka pro ukládání databází App_GlobalResources: Obsahuje soubory .resx p ístupné každé stránce. App_LocalResources: Obsahuje soubory .resx, které jsou ur eny pro konkrétní stránku. App_Themes: Zde se ukládají soubory ur ující vzhled stránky a ovládacích prvk ASP.NET. App_WebReferences: Obsahuje schémata a jiné soubory asociované n jakou službou v aplikaci.

4.3. Ovládací prvky D ležitou ástí ASP.NET jsou serverové ovládací prvky ( server controls ). Jsou to t ídy .NET Frameworku reprezentující vizuální prvky na webovém formulá i. N které jsou jednoduché, mapované na konkrétní zna ku HTML. Jiné realizují komplexní zobrazení, složené z více HTML prvk . Serverové ovládací prvky se d lí do n kolika kategorií:

Webové ovládací prvky: T ídy duplikující základní zna ky HTML. Mají však smyslupln jší a konzistentn jší vlastnosti a metody. Tím pádem se snadn ji deklarují a lépe se k nim p istupuje. Bohat

vybavené ovládací prvky: Vysp lé ovládací prvky realizující velké množství

HTML zna ek i JavaScriptu u klienta. Valida ní ovládací prvky: Prvky umož ující snadné ov ení, zda s nimi asociované vstupní ovládací prvky spl ují standardní a definovaná pravidla. Existují i další, specializovan jší skupiny ovládacích prvk : Datové ovládací prvky: Seznamy a m ížky, jejichž ú elem je zobrazovat rozsáhlé objemy dat. Nebo ovládací prvky pro zdroje dat umož ující vázat se na r zné zdroje dat bez nutnosti vytvá et další kód.

24

Naviga ní ovládací prvky: Ur eny ke snadnému zobrazování mapy webu a dalších naviga ních prvk . P ihlašovací ovládací prvky: Prvky podporující autentizaci pomocí formulá e. Toto je model ASP.NET pro autentizaci uživatel založený na databázi a sledování statusu uživatel . Ovládací prvky pro ásti webu: Ovládací prvky podporující WebParts. Pomocí tohoto modelu se budují konfigurovatelné webové portály založené na komponentách. Ovládací prvky pro mobilní za ízení: Podobné webovým ovládacím prvk m, ale p izp sobeno pro podporu mobilních klient . I p es množství t chto prvk obsažených v ASP.NET je n kdy pot eba n jaký upravit, i vytvo it zcela nový prvek, vyhovující p esn naší p edstav . Mohou se tvo it dva druhy ovládacích prvku. Uživatelské ovládací prvky ( user controls ) a vlastní serverové ovládací prvky ( custom controls ). Uživatelské ovládací prvky ( user controls ) jsou vlastní ovládací prvky tvo ené kódem HTML a serverovým skriptem. Jednou vytvo ený uživatelský prvek m žeme znovu využívat na dalších stránkách stejné webové aplikace. Tyto prvky se používají v p ípad jednodušších ovládacích prvku. Vlastní serverové ovládací prvky ( custom controls ). Toto jsou prvky, které se jeví jako serverové ovládací prvky, ale zapouzd ují funkce, které serverový prvek neobsahuje. Používá se v p ípad pot eby složit jších prvk .

4.4. Model-View-Controller MVC je architektonický vzor používaný p i vývoji software ( Obr. 3.) . Vývojá i podle n j rozd lují aplikaci na t i nezávislé ásti: datový model aplikace (model), uživatelské rozhraní (pohled) a ídící logiku ( adi ). P i modifikaci uživatelského rozhraní není ovlivn no zpracování dat a naopak p i reorganizaci dat, není ovlivn no uživatelské rozhraní. Toho je 25

docíleno odd lením logiky a p ístupu k dat m od prezentace dat vložením prost edníka adi e. D ležité je, že pohled a adi závisí na modelu. Nicmén , model nezávisí na pohledu ani na adi i. Toto je klí ová výhoda separace. Jednotlivé komponenty mají následující funkce: Model ( model ): Reprezentace informací, se kterou pracuje aplikace. MVC nespecifikuje vrstvu p ístupu k dat m, protože je vyrozum na spodní vrstvou nebo zapouzd ena modelem. View ( pohled ): P evádí data reprezentovaná modelem do podoby pro prezentaci uživateli. Controller ( adi ): Zpracovává a odpovídá na události, typicky uživatelské akce a m že vyvolat zm ny v modelu nebo pohledu. Obecný princip MVC Akce v uživatelském rozhraní ( nap . stisk tla ítka ) Oznámení z uživatelského rozhraní adi i P ístup adi e k modelu a p ípadná aktualizace na základ provedené akce uživatelem ( nap . aktualizace nákupního košíku ) Zpracování dat doménovou logikou ( nap . p epo ítání celkovou cenu položek v ceníku ) Aktualizovaný model je použit pohledem pro zobrazení zaktualizovaných dat uživateli ( nap . vypsání obsahu košíku ) Model není závislý na pohledu - nepot ebuje z n j žádné informace, ale pohled získává data p ímo z modelu.

Obr. 3. Struktura t íd MVC

26

Existují dv varianty MCV. T mi jsou pasivní a aktivní model. Pasivní model ( Obr. 4. ) je použit, když adi manipuluje výhradn s modelem.

adi modifikuje model a pak

informuje pohled, že model byl zm n n a m l by být obnoven. V tomto scéná i je model nezávislý na pohledu a adi i, což znamená, že zde nejsou prost edky pro model, aby oznámil zm ny v jeho stavu. P íkladem tohoto je model HTTP protokolu. Není jednodušší cesta pro prohlíže dostat asynchronní updaty ze serveru. Prohlíže zobrazí pohled a odpovídá na uživatelský vstup, ale nedetekuje zm ny v datech na serveru. Pouze v p ípad , že uživatel výslovn požaduje obnovení, je server dotázán na zm ny.

Obr. 4: Chování pasivního modelu

Aktivní model je použit, když model zm ní stav bez zapojení adi e. To se m že stát, když ostatní zdroje m ní data a zm ny musí být reflektovány v pohledu. Nap íklad display burzovního telegrafu. Obdržíte burzovní data z externího zdroje a chcete obnovit pohled, když burza data zm ní. Protože jen model dokáže detekovat nastalé zm ny, musí je notifikovat pohledu, aby obnovil display. Nicmén jednou z motivací pro použití MVC vzoru je ud lat model nezávislý na pohledu. Když model musí hlásit zm ny pohledu, využije se vzor

27

pozorovatel ( observer ). Zprost edkovává mechanismus na upozorn ní jiným objekt m o zm n stavu bez závislosti na n m ( Obr. 5. ). Individuální pohled implementuje rozhraní pozorovatele a registruje ho s modelem. Model sleduje seznam všech pozorovatel odebírající zm ny. Když se model zm ní, opakuje se to skrz všechny registrované pozorovatele a upozor uje se na zm nu. Tento p ístup je asto nazýván jako ve ejný odb r. Model nikdy nepot ebuje specifické informace o n kterém pohledu. Ve scéná i, kde adi informován o zm n

modelu, vše co adi

musí být

musí ud lat je, že implementuje rozhraní

pozorovatele a odebere zm ny modelu. ( Obr. 6. )

Obr. 5: Použití pozorovatele k odd lení modelu od pohledu v aktivním modelu

28

Obr. 6: Chování aktivního modelu

4.5. Vhodnost .NET prost edí pro tvorbu aplikací ASP.NET jako technologie pro vývoj webových aplikací má konkurenta v PHP. Ob aplikace jsou rozdílné, mají své výhody a nevýhody a je tedy na vývojá i, pro kterou se rozhodne. Zatímco ASP.NET je sou ástí mohutného .NET Frameworku, musí se ídit jeho pravidly a p sobí složit , jednoduší PHP je samostatná menší technologie s ú elovými nástroji. Mezi syntaxí PHP a ASP.NET je také velký rozdíl. Zatímco PHP skriptování využívá p ímo aré funkce a tudíž je jednoduší, ASP.NET je o poznání náro n jší objektov orientované programování. V .NET Frameworku je na výb r více programovacích jazyk , které lze použít, PHP je zárove platforma i jediný skriptovací jazyk. U ASP.NET m žeme kód rozd lit do dvou sobor a odd lit tak programovací kód od prezenta ní logiky, u PHP se vše píše do jednoho souboru - tzv. spaghetti code. Velká výhoda PHP je v platformní nezávislosti a v tom, že je vyvíjeno jako open source, tudíž je zdarma. Ze své povahy je tedy PHP vhodné pro jednoduší projekty, kde je brán z etel na cenu, jednoduchost programování a je požadována multiplatformnost. Po ASP.NET naopak sáhne vývojá velkého projektu dbající na komplexnost celého projektu, robustnosti ešení a podpory.

29

5. ADO.NET ADO.NET je sada softwarových komponent, které nej ast ji programáto i používají pro p ístup a modifikaci dat uložených v rela ních databázích. Mohou být využity i pro p ístup k nerela ním zdroj m. ADO.NET je n kdy považováno za evoluci ADO ( ActiveX Data Object ), ale bylo zm n no natolik, že ho lze považovat za zcela nový produkt. ADO.NET používá vícevrstvou architekturu a skládá se ze dvou hlavních ástí. T mi jsou „Data provider“ a „DataSets“ .NET Framework je vybaven ty mi poskytovateli a jsou to: SQL Server, OLE DB, Oracle, ODBC. Data provider Tyto t ídy zprost edkovávají p ístup ke zdroji dat, jako je Microsoft SQL Server, nebo Oracle databáze. Každý zdroj dat má svou vlastní sadu dodavatel

objekt ,

ale všichni mají

spole nou sadu pomocných t íd. Connection: Zprost edkovává propojení použité pro komunikaci se zdroji dat. Command: Používá se k provedení akcí na zdroji dat jako je tení, updatování nebo smazání. DataAdapter: Post používaný pro p enos dat mezi zdrojem dat a objektem DataSet DataReader:

T ída používaná k efektivnímu zpracování dlouhého seznamu výsledk

najednou. DataSets DataSets je skupina t íd reprezentující v pam ti data, které zprost edkovává rela ní model bez ohledu na zdroj dat, který obsahuje. Reprezentuje kompletní obsah tabulek, stejn jako propojení mezi tabulkami. Objekt DataTable reprezentuje samostatnou tabulku v databázi, která má jméno, ádky a sloupce. DataView adí data a filtruje záznamy. DataColumn reprezentuje sloupec tabulky. Obsahuje jeho jméno a typ. DataRow reprezentuje ádek v tabulce a povoluje tení a updatování obsažených informací. DataRowView reprezentuje jeden ádek z rozdílu DataView. Rozdíl mezi DataRow a DataRowVier je d ležitý p i opakování výsledk . DataRelation popisuje propojení mezi tabulkami.

30

Constraint popisuje vynucené vlastnosti databáze jako unikátnost hodnot v primárním klí ovém sloupci.

5.1. Vázání dat O vázání dat se mluví v p ípad , kdy je svázán zdroj dat s ovládacím prvkem, který automaticky zobrazuje data. Toto vázání není programátorské, ale deklarativní. Definuje se ve stránce .aspx s ovládacími prvky. V tšina prvk podporuje jednoduché vázání dat. N které podporují i složité vázání dat a vznikají tak r zné seznamy i m ížky. P i jednoduchém vázání je prvek vázán jen k jedné hodnot , p i emž nemusí být vázáno n co, co je vid t p ímo na stránce. P i složitém vázání se nenapl uje prvek p ímo daty, ale volá se metoda DataBind(), která ze zdroje data extrahuje a zobrazí. Tabulka dat neboli relace je uspo ádaná do sloupc a ádk . Sloupce zna í atributy a ádky jsou hodnoty atributu. Primární klí je jednozna nou identifikací ádku tabulky. Cizí klí omezuje spojení jednoho, nebo více sloupc tabulky do jiné tabulky. Pokud jsou hodnoty shodné, ádek tabulky je rozší en ádkem cizí tabulky.

31

6. Databáze Dnes je velmi mnoho odv tví postaveno na databázích. Eviduje se v nich v podstat vše, po ínaje knihami v knihovn , p es seznam klient

bank až po evidenci ob an

na

ú adech. Databáze se dá zjednodušen popsat jako úložišt dat. K jejich používání existuje n kolik d vod . Databáze poskytuje rychlejší p ístup k dat m, m že k nim p istupovat paraleln , má zabudován systém uživatelských práv a pomocí dotaz m žeme vybírat jen požadované množiny dat. Databází je mnoho typ , níže jsou uvedeny jsou n které z nich. Rela ní databáze Základem databáze je tabulka ( relace ). Tabulky jsou mezi sebou propojeny a tento soubor tabulek pak tvo í databázi. Tabulka je ur ena primárním klí em a propojení tabulek se nazývá funk ní závislost. Tabulka se závislostí na jinou má jak primární klí , tak cizí klí . Rela ní databáze jsou jednoduché a díky tomu hojn rozší ené. Objektov orientované databáze Databáze funguje na principech objektového programování. Základem databáze není tabulka, ale objekt. Každý takový objekt má vlastnosti a metody, které manipulují s hodnotami vlastností. Jednotlivé záznamy jsou instance objektu s ur itou hodnotou. Díky možnosti využití d di nosti, zapouzd ení a polymorfismu jsou rozší eny možnosti tvorby aplikací. Deduktivní databáze Deduktivní databáze funguje na principu logického programování. Použití t chto databází je úpln jiné a využívají se nap . pro v decké ú ely ( um lá inteligence ). V t chto databázích se používají relace a deduktivní pravidla. Temporální databáze Využívá se tam, kde je pot eba zpracovávat nová a zárove stará data. Jedná se o rozší ení p edchozích typ databází. Oproti nim nejsou asov závislé. Je zaveden systém asových razítek a m že se tedy dotazovat na minulost, p ítomnost a budoucnost.

32

6.1 SQL V této práci je využíváno rela ní databáze a jazyka SQL, což je strukturovaný dotazovací jazyk pro práci s daty v rela ní databázi. Jeho p edch dce SEQUEL se za al vyvíjet už v 70. letech minulého století. SQL bylo nakonec standardizováno jako jazyk rela ních databází. Každá rela ní databáze tento standard podporuje, ale nejsou implementovány vždy všechny normy. V tomto projektu bude dále používán jako zdroj dat databáze MS SQL Server 2005. SQL p íkazy jsou rozd leny do ty skupin. Jsou to: P íkazy pro manipulaci s daty - p íkazy získají data z databáze a mohou je upravovat. P íkazy pro definici dat – p íkazy na tvorbu struktury databáze. P íkazy pro ízení dat – ízení transakcí a nastavování p ístupových práv. Ostatní p íkazy – pro p idávání uživatel a nastavování systémových parametr .

33

7. Redak ní systém Redak ní systém je aplikace b žící na serveru, která umož uje správu obsahu webových stránek. Správu s pomocí redak ního systému m že provád t i laický uživatel neznalý HTML a programování webových stránek obecn . Takovýto systém nevyžaduje instalaci žádných drahých aplikací na klientské PC a není tudíž omezen na stroj, na který je nainstalován. Uživatel m že stránku administrovat odkudkoliv a sta í mu k tomu pouze internetový prohlíže . Pro malou firmu a jednotlivce je to nástroj pro snadné a efektivní aktualizování, pro velké firmy prakticky nezbytnost. Hlavním cílem této práce je návrh struktury databáze redak ního systému a jeho realizace. Systém se skládá ze dvou ástí. První ást je administra ní, ta dovoluje vkládat data, mazat a editovat. Druhou je prezenta ní, tj. ta, kterou vidí b žný návšt vník.

34

8. Návrh struktury databáze. Byla navržena základní struktura ( Obr. 7. ) databáze redak ního systému. Jedná se o relativn jednoduchou databázi.Obsahuje ty i tabulky popsané níže. Tabulka SiteMaps ID – primární klí . Name – jméno sitemapy. Tabulka Sections ID – primární klí . Name – popis sekce v SiteMaps. Title – název sekce. Cizí klí SiteMapRef – ukazující do ádku SiteMaps. Tabulka Article ID – primární klí . Title – název lánku. Text – vlastní text lánku. Date – datum vložení lánku. SectionRef – cizí klí , ukazatel do tabulky Sections. Udává p íslušnost k sekci. Autor - Jméno autora. ImgPath – cesta k obrázku p ipojeného k lánku. Visible – ur uje, zda lánek bude viditelný, i ne. Tabulka Discussion ID – primární klí Topic – nadpis p ísp vku. Text – text p ísp vku. Nick – jméno autora. Email – email autora. ArticleRef – cizí klí ukazuje, ke kterému lánku p ísp vek pat í. Datum – datum vložení p ísp vku. 35

Obr. 7. Schéma struktury databáze.

36

9. Tvorba systému Redak ní systém byl naprogramován v jazyce C# ve Visual Studiu 2005. Sou ástí instalace Visual Studia 2005 je i databázový server Microsoft SQL Server 2005, na kterém byla umíst na používaná databáze, vytvo ená podle návrhu v této práci. Databáze, stejn jako celý program byly používány lokáln , nebyly tedy umíst ny na serveru v internetu. Práce na síti je emulována komponentou Visual Studia ASP.NET Development Server.

9.1 Databáze Ovládání Visual Studia je velmi intuitivní a rychlé. Obsahuje komponentu Server Explorer, která umož uje spravovat databázi. Nebylo tedy t eba využívat externího programu jako nap . SQL Server Management Studio. Dovoluje tvorbu, editaci, mazaní a pln ní databázových tabulek, databázového diagramu, testování dotaz na databázi atp. Pomocí této komponenty byly vytvo eny tabulky podle návrhu, nastaveny parametry bun k a vytvo eny vzájemné relace mezi tabulkami. U relací bylo nastaveno kaskádovité mazání dat. P i odstran ní dat v nad azené tabulce se automaticky odstraní i data nich závislá. P i odstran ní sekce se tak smažou i lánky pat ící do této sekce a p ísp vky k lánk m. Dále zde bylo nastaveno automatické vypl ování primárního klí e.

íslo ID se automaticky inkrementuje a

nem že tak dojít k zadání jednoho ID dvakrát.

9.2 Struktura Pro tvorbu vlastního systému byl založen projekt podle šablony „ASP.NET Web site“, který po zvolení programovacího jazyka a umíst ní projektu p edp ipraví adresá ovou strukturu. Ta byla dopln na o adresá e „Autor“ a „Pictures“ pro ukládání stránek dostupných pouze pro autora resp. ukládání obrázk k jednotlivým lánk m. Další d ležité prvky mimo vlastních soubor s kódem jsou:

37

MasterPage. - tento soubor obsahuje jakousi šablonu celého projektu. Vloží se zde tabulka, která nadefinuje celkový vzhled. Bylo zvoleno rozložení se záhlavím a jednou stranou. Tyto prvky se p i prohlížení stránek nem ní a umis ují se zde prvky, které by m ly být neustále viditelné, jako nap . mapa stránek v tomto p ípad zastoupená prvkem menu, prvek pro zobrazení zda je tená /autor p ihlášen atp. M ní se jen obsah v okn prvku ContentPlaceHolder, ve kterém jsou zobrazovány vlastní stránky. Web.config - tento soubor obsahuje konfigura ní informace. Jsou zde uloženy informace o typu autentizace, použitá témata nebo et zec pro p ipojení k databázi. Web.sitemap -soubor definující zdroj pro prvky jako menu, zprost edkovávající mapu stránek. App_Data - adresá obsahující vytvo enou databázi používanou programem pro ukládání dat a databázi vytvo enou administra ním nástrojem. App_Themes - v tomto adresá i jsou uloženy grafická témata využívané jednotlivými stránkami. M žeme zde nap . globáln nastavit velikost písma pro ur ité prvky, barvu atp.

9.3 Administrace uživatel Administrace uživatel je vytvo ena pomocí nástroje Web Site Administration Tool obsaženém ve Visual Studiu. Bezpe nostní politika je zajišt na pomocí uživatel a rolí. V roli se nastavuje pro který adresá platí a zda jde o pravidlo povolení nebo zakázání. Poté uživatel m p i adíme role. Byly vytvo eny dv role a to sice auto i a registrovaní tená i. Uživatelé v roli autora mají pak povolen vstup na stránky umož ující editaci, generovaní sitemapy, mazání lánk a sekcí. Registrovaní tená i mohou vkládat p ísp vky ke lánk m. Ostatní – nep ihlášení mohou jen íst.

38

10.

ásti redak ního systému Systém je rozd len na dv

ásti. Jedna ást je prezenta ní, druhá administra ní.

V prezenta ní ásti jsou všem zobrazovány veškeré sekce, lánky a diskuse ke lánk m. Ke druhé, administra ní ásti, má p ístup pouze vlastník webových stránek, který disponuje uživatelským jménem a heslem pro p ístupu k této ásti.

10.1 Prezenta ní ást Tato ást je ihned viditelná po vstupu na stránky ( Obr.8 ). Je to klasická webová prezentace, kde pro p ístup není vyžadováno heslo ani jiná autorizace. Návšt vník m že procházet sekce, íst lánky a zobrazovat diskuse ke lánk m. V záhlaví okna je neustále vypisováno, v jaké ásti se návšt vník nachází.

lánky zobrazené v seznamech se zobrazují

zkrácen . Teprve po kliknutí na název lánku, nebo odkaz „Více“ se lánek zobrazí celý i s možnosti p idání p ísp vku nebo prohlédnutí diskuse. Návšt vník ovšem nem že do diskusí p ispívat. Pro p ispívání musí mít založen ú et, ke kterému je p i azena role registrovaného tená e. Ú et m že založit vlastník prezentace p es Web Site Administration Tool .

10.1.1 P ispívání do diskuse Pokud má tená založen sv j ú et a chce psát p ísp vek ( Obr. 9 ), p ihlásí se tla ítkem „Login“ v levém horním rohu. Poté je mu umožn no vkládat pod lánky p ísp vky. Na stejném míst se m že poté odhlásit.

39

Obr. 8: Prezentace.

Obr. 9: Psaní p ísp vk .

40

10.2 Administra ní ást Tato ást je skryta pod tla ítkem „Editovat“ v pravém horním rohu. Pro vstup do ní musí být uživatel – administrátor stránek p ihlášen ke svému uživatelskému ú tu, jenž mu umož uje do administra ní ásti vstupovat. Zde má na výb r z n kolika možností.

10.2.1 P idání sekce Tímto odkazem se administrátor dostane na stránku p idávání sekce. Zde se zadává název nové sekce a její popisek, zobrazovaný p i najetí kurzorem na její název v menu. Název i popisek je omezen na 50 znak . Zaškrtávací pole slouží k ur ení, zda má být sekce viditelná. Pokud ješt nemá být zve ejn n a bude se dále editovat, pole z stane nezatržené.Tla ítkem „Vlož“ se sekce uloží do databáze ( Obr.10 ). Po vložení sekce je nutné vygenerovat znovu sitemapu, aby nová sekce byla zobrazena v menu. Bez vygenerování se v menu zobrazují jen sekce vložené p ed posledním vygenerováním.

10.2.2 Generování sekce Do ásti generování sitemapy se vstupuje odkazem „Vygenerovat sitemapu“ v sekci editace. Zde se nachází jen jedno tla ítko, jehož stisknutím se provede vygenerování.

41

Obr. 10: P idání sekce.

10.2.3 Mazání a editace sekce V této ásti m že administrátor smazat nebo editovat název i popisek existující sekce a to, zda sekce bude vid t. Existující sekce jsou vypsány v tabulce a operace se provádí tla ítky „Edit“ a „Delete“ ( Obr.11 ). V p ípad , že je sekce smazána, smažou se automaticky i veškeré lánky v ní obsažené a všechny p ísp vky k t mto lánk m. Po každém smazání i editaci musí být op t vygenerována sitemapa.

Obr. 11: Mazání a editace sekcí.

42

10.2.4 P idání lánku P i vytvá ení lánku ( Obr. 12 ) musí být pomocí rolovacího menu vybrána sekce, do které nový lánek bude pat it. V tomto menu se zobrazují i sekce p idané p ed aktualizací sitemapy. Do pole název lánku je zadán nadpis a do následujícího pole je zapsán vlastní text lánku. Text je omezen na 2000 znak a nadpis na 50 znak . Do dalšího pole se zadá jméno autora, omezeno je na 30 znak . Pokud má být k textu p iložen obrázek, na te se pomocí následujícího tla ítka „Procházet“ a zaškrtnutím pole „P ipojit obrázek“ se potvrdí zám r obrázek vložit. Další zaškrtávací pole slouží k ur ení, zda má být lánek zobrazen tená m. Pokud se jedná o koncept, co ješt nemá být zve ejn n a bude se dále editovat, pole z stane nezatržené. Poté se tla ítkem „Vlož“

lánek uloží do databáze a obrázek se ze svého

p vodního umíst ní nahraje do složky s redak ním systémem.

10.2.5 Mazání a editace lánku ást podobná s mazáním a editací sekce. Zde je možno lánek bu

pozm nit, nebo

úpln smazat pomocí tla ítek „Edit“ a „Delete“ ( Obr. 13 ). P i editaci lze zm nit jeho název, vlastní text, autor, zda bude viditelný a datum.

43

Obr. 12: P idání nového lánku.

Obr. 13: Mazání a editace lánku. 44

9. Záv r V této semestrální práci je popsáno prost edí .NET Framework, jeho verze a architektura. Byly prozkoumány možnosti .NET pro správu webového obsahu a porovnáno s PHP. Jsou popsány základy ASP.NET a ADO.NET. Dále je v práci obsaženo stru né seznámení s programovacím jazykem C#. V práci je uveden take popis n kterých druh databází a stru ný popis jazyka SQL. Pratickou ástí této práce je pak návrh struktury databáze a následná tvorba redak ního systému na ní založeného. Redak ní systém je nástroj vhodný k tvorb

webových stránek i pro uživatele, jenž nemají znalosti HTTP

i

programování. Jeho struktura je navržena pro tvorbu jednoduchých webových stránek obsahující lánky d lené do sekcí. Ke každému lánku mohou být p idány diskusní p ísp vky. lánky a sekce m že vkládat pouze autor stránek. M že také ur it, zda budou viditelné a ke každému lánku m že vložit obrázek. Tím pádem bude moci editovat text, který z stane uložený na serveru a k jeho editaci se m že vrátit, aniž by byl mezitím p ístupný ve ejnosti. Odpadá tak nutnost ukládání rozd lané práce mimo webové stránky. Diskusní p ísp vky mohou vkládat pouze registrovaní uživatelé, ov ení autorem, ímž se zabrání vkládání spamu do diskuse od neregistrovaných uživatel .

45

10. Literatura [1] FAJFR. Architektura Microsoft .NET Framework – 1. díl [online]. 2006 [cit. 2007-12-12]. Dostupný z WWW: . [2] PUŠ, Petr. Poznáváme C# a Microsoft.NET 36. díl – úvod do reflexe [online]. 2005 [cit. 2007-12-15]. Dostupný z WWW: . [3] BOREK, Bernard. Využití objektových technologií p i vývoji webových aplikací:. [s.l.], 2004. 55 s. Bakalá ská práce. [4] Troelsen Andrew, C# a .NET 2.0 profesionáln , ZONER Press 2006, ISBN 80-86815-42-0 [5] Jason Price, C# programování databází, Grada 2005, ISBN 80-247-0982-1 [6] Jeff Prosise, Microsoft .NET Webové aplikace v :NET Framework, C# a ASP.NET, Computer Press 2002, ISBN 80-7226-879-1 [7] MacDonald Matthew, Szpuszta Mario, ASP.NET 2.0 a C# tvorba dynamických stránek profesionáln , ZONER Press 2006, ISBN 80-86815-38-2 [8] Model-View-Controller [online]. 2007 [cit. 2007-12-18]. Dostupný z WWW: . [9] SK IVAN, Jaromír. Databáze nejsou jen MySQL. Interval.cz [online]. 2002 [cit. 200804-20]. Dostupný z WWW: .

46

Life Enjoy

" Life is not a problem to be solved but a reality to be experienced! "

Get in touch

Social

© Copyright 2013 - 2019 TIXPDF.COM - All rights reserved.