Programovßnφ strßnek

nßstin mo₧nostφ

Klient/server - KlientskΘ skripty - ServerovΘ skripty - Co pou₧φvat - Zdroje a odkazy

Jazyk HTML, kter²m se pφÜou strßnky, spoustu v∞cφ nedokß₧e. PokroΦilφ auto°i proto do strßnek p°idßvajφ skripty v r∙zn²ch jazycφch. Tento text by m∞l pouze usnadnit zßkladnφ orientaci kolem jazyk∙ a technologiφ aktivnφch internetov²ch strßnek.

Klient / server

Zßkladnφ rozd∞lenφ skript∙ je podle toho, na kterΘm poΦφtaΦi program b∞₧φ -- na klientovi nebo na serveru. (Rozdφly mezi ob∞ma skupinami jsou tak znaΦnΘ, ₧e skoro nemß smysl popisovat je na jednΘ strßnce. Ale risknul jsem to.)

Pokud vßhßte, kter² typ skript∙ je pro vßs ten prav², existuje kritΘrium:

Kde to b∞₧φ Klient Server
Jazyky (p°φklady) JavaScript, VBScript, JScript CGI, PHP, ASP
Program, na kterΘm to b∞₧φ Prohlφ₧eΦ (nap°. Internet Explorer) Server (jako software), nap°. Apache nebo IIS
Po₧adavky ₧ßdnΘ na serveru nainstalovanß podpora
Co to umφ vizußlnφ efekty, animace, hlßÜky, zm∞ny styl∙ a podobnΘ blbinky plnohodnotnΘ aplikace, spoluprßce s formulß°i, databßzemi a s poÜtou
ZaΦßtky m∙₧e se zaΦφt ihned musφ se nap°ed nainstalovat spousta v∞cφ
Pot°ebnΘ znalosti
  • HTML
  • zßklady programovßnφ
  • hodφ se CSS
  • HTML
  • zkuÜenost s programovßnφm
  • orientace v operaΦnφm systΘmu
Omezenφ
  • dß se v prohlφ₧eΦi vypnout
  • r∙znΘ verze skript∙ nejsou kompatibilnφ navzßjem a s prohlφ₧eΦi, z Φeho₧ vypl²vß nespolehlivost
  • n∞kterΘ jazyky (VBScript, Java) nejsou v ka₧dΘm prohlφ₧eΦi
  • skripty nemohou uklßdat data
  • mßlo server∙ to umo₧≥uje, v∞tÜinou se za to platφ
  • je-li to zadarmo, b²vß to nekvalitnφ
  • program mnohdy zat∞₧uje server
  • musφ se ladit on-line, nebo mφt doma takΘ nainstalovan² veÜker² software

KlientskΘ skripty

Princip: na poΦφtaΦ u₧ivatele (Φili na klienta) se odeÜle HTML strßnka spolu se skriptem. Skript je vykonßn a₧ p°i naΦφtßnφ a prohlφ₧enφ strßnky.

V oblasti klientsk²ch skript∙ naprosto dominuje jazyk JavaScript (a jeho klon JScript od Microsoftu). P°es usilovnou snahu Microsoftu se VBScript p°φliÜ neujal. 

DalÜφm Φast²m pojmem je DHTML -- DynamickΘ HTML. Je to nejasn∞ definovanß kolekce zp∙sob∙, jak strßnky "rozh²bat". Prakticky je to synonymum pro pou₧itφ JavaScriptu s CSS.

Pon∞kud stranou klientsk²ch aplikacφ stojφ programovΘ objekty vklßdanΘ do strßnek, nejsou to skripty. Jde zejmΘna o Macromedia Flash a Java applety.

Java applety a JavaScript nemajφ krom∞ podobnΘho jmΘna, syntaxe a p∙vodu nic spoleΦnΘho. Aneb Java nenφ JavaScript!

Osobn∞ doporuΦuji nauΦit se zßklady JavaScriptu. Nemß ale smysl d∞lat v n∞m velkΘ programy, proto₧e mß malΘ mo₧nosti, zejmΘna nedokß₧e uklßdat data.

Zßkladnφ jazyky Podpora Objektov² model Podobnost
JavaScript VÜechny prohlφ₧eΦe zßkladnφ syntaxe typu Java nebo C
JScript Internet Explorer 4 + rozÜφ°en² zßkladem je JavaScript
VBScript Internet Explorer voliteln∞ rozÜφ°en² Visual Basic, syntaxe typu Pascal
DHTML Internet Explorer 4 +, Mozilla nejde o jazyk, DynamickΘ HTML je pojem pro ÜirÜφ pou₧itφ JavaScriptu s objekty prohlφ₧eΦe.

ServerovΘ skripty

Princip: p°i po₧adavku server vykonß program a klientovi posφlß pouze data ve formßtu HTML. Klient s programem nep°ichßzφ v∙bec do styku.

Na poli serverov²ch skript∙ si dnes (2001) tvrd∞ konkurujφ PHP a ASP, d°φve naprosto dominovaly CGI skripty v Perlu, kterΘ jsou stßle (dφky setrvaΦnosti) nejΦast∞jÜφm p°φpadem serverov²ch skript∙.

Zßkladnφ jazyky OznaΦenφ Charakteristika Omezenφ
CGI Common Gateway Interface Zßkladnφ v²m∞nnΘ prost°edφ pro p°φjem vstupu a publikovßnφ v²stupu jakΘhokoliv programu (t°eba z Pascalu nebo Perlu) Je pot°eba n∞jak² dalÜφ jazyk.
CGI + Perl Perl je jazyk Perl umφ v²born∞ pracovat se soubory a °et∞zci, proto je velmi oblφben² pro psanφ CGI. Interpretovan² jazyk. Relativn∞ t∞₧k² jazyk, h∙°e se pracuje s HTML.
SSI Server-side Include Prostß vsuvka, kterß na stran∞ serveru vlo₧φ do strßnky n∞jak² objekt, nejΦast∞ji jin² soubor nebo v²stup programu. Nelze p°edßvat parametry, malΘ mo₧nosti.
ASP Active Server Pages Vsuvky v obyΦejnΘ HTML strßnce, kterΘ jsou serverem p°i odeslßnφ zpracovßvßny. Umo₧≥ujφ p°istupovat k databßzφm, soubor∙m, poÜt∞ atd. ╚astΘ bezpeΦnostnφ dφry, omezenφ na platformu Windows (na serveru!).
PHP Hypertext preprocesor Bez omezenφ
JSP, Cold fusion atd. R∙znΘ dalÜφ technologie VφcemΘn∞ totΘ₧, co ASP Malß rozÜφ°enost, z Φeho₧ vypl²vajφ nejr∙zn∞jÜφ trable.
Servlety PlnohodnotnΘ aplikace v Jav∞, kterΘ generujφ HTML k≤d pro klienta Obtφ₧nß instalace, obtφ₧n∞jÜφ jazyk, problΘmy s ΦeÜtinou.

VÜechny serverovΘ skriptovacφ technologie vy₧adujφ:

V poslednφ dob∞ se konkurence na poli serverov²ch skript∙ omezuje na rivalitu PHP versus ASP. ZjednoduÜen∞ se dß °φci, ₧e ASP je mΘn∞ stabilnφ, horÜφ, zßhadn∞jÜφ a pomaleji vyvφjen², zato mß lepÜφ napojenφ na COM objekty a ActiveX. ASP mß dobr² marketing (prost∞ je od Microsoftu). Nedß se moc dob°e rozb∞hnout na Linuxov²ch serverech, kterΘ tvo°φ pßte° i svaly dneÜnφho Internetu. To by se vÜechno dalo n∞jak strßvit. Zßkladnφ p°ednostφ PHP je ale existence v²bornΘ ΦeskΘ literatury (Ji°φ Kosek, PHP), kde₧to knihy o ASP jsou jen sn∙Ükou dojm∙.

ServerovΘ skripty umo₧≥ujφ nep°ebernou spoustu v∞cφ. Zßkladnφmi v²hodami jsou spoluprßce s databßzemi a E-mailem, reakce na u₧ivatele (obsluha formulß°∙) a automatizace sklßdßnφ strßnek. Pomocφ serverov²ch skript∙ jsou postaveny vÜechny v∞tÜφ servery -- portßly, internetovΘ Φasopisy nebo obchody.

Co pou₧φvat

KlientskΘ skripty m∙₧ete pou₧φvat ihned, doporuΦuji nauΦit se zßklady JavaScriptu, abyste poznali mo₧nosti.

Pou₧φvßnφ serverov²ch skript∙ zßvisφ na serveru, na kterΘm publikujete. V∞tÜina server∙ umo₧≥uje n∞jakou skriptovacφ technologii, ale ne vÜechny je dovolujφ pou₧φvat za standardnφ cenu. 

NaÜt∞stφ existuje asi tucet voln²ch server∙, kterΘ umo₧≥ujφ provozovßnφ PHP (s databßzφ) zdarma. M∙₧ete si PHP  pro testovßnφ snadno nainstalovat i doma. Mo₧nß u₧ jste pochopili, ₧e jß osobn∞ jsem fanda jazyka PHP -- moje nßklonnost je ovÜem dßna zkuÜenostφ s jin²mi jazyky. Prost∞ si myslφm, ₧e PHP je pro malΘ a st°edn∞ velkΘ servery nejlepÜφ. 

Zdroje a odkazy

Kurz JavaScriptu zrovna pφÜu, bokem jsem napsal zßklady DynamickΘho HTML. Zatφm se zkuste poohlΘdnout po webu. Hledejte JavaScript.

Na serverovΘ skripty je fantastick²m zdrojem strßnka Jirky Koska. V sekci o CGI, ASP a PHP si m∙₧ete vyzkouÜet pßr zßkladnφch v∞cφ. M∙₧ete si tam i objednat knihu o PHP od tΘho₧ autora, co₧ je dneÜnφ bible poloviny programßtor∙ webu. Stojφ pßr stovek, ale vyplatφ se mnohonßsobn∞.

Vizte tΘ₧: Jak zaΦφt s PHP, Mo₧nosti PHP, JavaScript
Odkaz mimo: PPWizard, univerzßlnφ preprocesor (Sova v sφti)

o tvorb∞, ·dr₧b∞ a zlepÜovßnφ internetov²ch strßnek

PφÜe Yuh∙, dusan@pc-slany.cz

Hledßnφ:

Jak psßt web: www.jakpsatweb.cz

PφÜe Yuh∙: http://dusan.pc-slany.cz, mail: dusan@pc-slany.cz

Poslednφ aktualizace 10.12.2003