Str nku vystavte, jak je obvykl‚. Jedin‚, co se zmØn¡, bude URL, kterìm je týeba se na ni odk zat. Jestli§e URL str nky bez pýek¢dov n¡ by bylo
http://www.kdesi.ca/user/cesta/stranka.htmlbude URL t‚§e str nky pýi po§adavku jej¡ho pýek¢dov n¡ do sedmibitov‚ho ASCII napý.
http://www.kdesi.ca/user/cgi-bin/ascii.cgi/cesta/stranka.htmlPýedpokl d m, §e URL cesta ke k¢duj¡c¡m skript…m je http://www.kdesi.ca/user/cgi-bin. M…§ete pou§¡t libovolnì ze skript… toXXX[.cgi]. nebo yyy[.cgi] (kde XXX Ÿi yyy jsou jm‚na k¢d… popsan v pýedchoz¡ch kapitol ch). Pokud cesta ke k¢duj¡c¡m skript…m je http://www.jinde.cz/cgi-bin (glob ln¡ CGI adres ý serveru), bude URL po§aduj¡c¡ pýek¢dovanou str nku m¡t tvar:
http://www.jinde.cz/cgi-bin/ascii.cgi/user/cesta/stranka.html
Odkazy tohoto typu vçak pýedpokl d j¡, §e pýedem v¡te, jakì k¢d bude u§ivatel vy§adovat. To Ÿasto nemus¡ bìt pravda. V takov‚m pý¡padØ doporuŸuji pou§¡t skript whichcode[.cgi] a URL
http://www.kdesi.ca/user/cgi-bin/whichcode.cgi/cesta/stranka.htmlpý¡padnØ
http://www.jinde.cz/cgi-bin/whichcode.cgi/user/cesta/stranka.htmlSkript whichcode u§ivateli ozn m¡, §e c¡lovì dokument obsahuje diakritick znam‚nka a umo§n¡ mu zvolit k¢d, kterì pova§uje za optim ln¡.
<A HREF="kapitola1.html">Prvn¡ kapitola</A>klient pýepracuje relativn¡ URL kapitola1.html na absolutn¡. Vyjde pýitom z URL dokumentu, obsahuj¡c¡ho znaŸku. Pokud bylo p…vodn¡ URL dokumentu napý¡klad http://www.kdesi.ca/user/cgi-bin/toCP1250/cesta/obsah.html, povede zm¡nØnì odkaz k dokumentu http://www.kdesi.ca/user/cgi-bin/toCP1250/cesta/kapitola1.html. Informace o k¢du byla zachov na.
Pozor! Chcete-li vyu§¡vat pro uchov n¡ k¢du relativn¡ odkazy, nesm¡te v dokumentu pou§¡t znaŸku <BASE>, kter urŸuje z kladn¡ URL dokumentu. Kdybyste ji pou§ili, budou vçechna relativn¡ URL vzta§ena k lok toru, definovan‚mu touto znaŸkou, nikoli k URL, pod kterìm klient z¡skal str nku.
Absolutn¡ odkazy se zachov n¡m k¢du distribuovan verze SaCzech-Uju nezvl dne. Mus¡te pou§¡t whichcode[.cgi]. Pokud chcete, bylo by mo§no jednoduçe zajistit prov dØn¡ substituce za ýetØzec __CHARSET__ stejnìm zp…sobem jako u programu SaCzech-U. StaŸ¡ vlo§it napý. do skriptu mac.cgi tØsnØ pýed pý¡kaz print $_; (ý dek Ÿ. 29) n sleduj¡c¡ týi ý dky:
s/to__CHARSET__/toMAC/g;(týi separ tn¡ substituce jsou mnohem rychlejç¡ ne§ jedna substituce se týemi alternativn¡mi vzory (to|charset=|)). Pý¡padnØ jen ty z tØchto tý¡ substituc¡, kter‚ budete pou§¡vat. PodobnØ pro ostatn¡ skripty. Tyto substituce mohou ale vìraznØ zpomalit konverzi. Pokud je nutnØ nepotýebujete, vyhnØte se jim.
s/charset=__CHARSET__/charset=MAC/g;
s/__CHARSET__/mac/g;
D¡ky tomuto mechanismu m…§ete na sv‚ str nky vkl dat relativn¡ odkazy na obr zky, zvuky a dalç¡ druhy dat, kterìm by pýek¢dov n¡ rozhodnØ neprospØlo.
Jestli§e se na str nce vyskytne znaŸka
<IMG SRC="obraz.gif">a URL str nky je http://www.kdesi.cz/cgi-bin/toASCII/cesta/stranka.html, bude klient po serveru po§adovat http://www.kdesi.cz/cgi-bin/toASCII/cesta/obraz.gif. Server spust¡ skript toASCII. Ten vçak zjist¡, §e je po nØm po§adov no k¢dov n¡ souboru s pý¡ponou .gif. M¡sto aby se pustil do d¡la, odpov¡ klientovi "hele s t¡mhle j nechci nic m¡t, vezmi si rovnou ten soubor". Klient si ho vezme a vçe funguje k pln‚ spokojenosti vçech z£ŸastnØnìch.
Milovn¡ci patologickìch pý¡pad… prostØ pýijdou zkr tka!
Nab¡dka k¢d…
¬asto je vhodn‚ nab¡dnout u§ivateli pý¡mo na str nce mo§nost zmØny k¢du t‚to
str nky. Takovou nab¡dku je nutno zkonstruovat ruŸnØ
(nebo pýedem pomoc¡ programu SaCzech-U a pak
ruŸnØ "vlepit" do dan‚ str nky).
SaCzech-Uj a CGI
SaCzech-Uj zat¡m metody http a guess
nepodporuje.
Tipy, triky, rizika
Pros¡m, obraœte se pý¡mo na dokumentaci p…vodn¡ho programu
SaCzech.