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.