[ 02. December 1999]
- Svato_Straka Formuláre ako vstup CGI skriptu - 4. časť CGI Predpokladám že snáď každý už niekedy navštívil stránku vyhľadávača Altavista. Tam hneď na začiatku stránky na vás vykúka pole pre zadanie reťazca, ktorý chcete hľadať.
Keď potom kliknete na tlačítko search, laebo stlačíte enter, reťazec, ktorý ste zadali je odovzdaný na vstup CGI skriptu. Pozrieme sa dnes spoločne na to, aké všetky možnosti vám formuláre v HTML poskytujú na odovzdanie údajov vášmu CGI programu.
Pokým chcete na svoju stránku umiestniť formulár, mal by kód tohto formulára vždy obsahovať ako prvý tag <FORM>. Tento tag je povinne párový, to znamená že obsah formulára musí byť ukončený tagom </FORM>. V praxi môže vyzerať kód formulára nasledovne:
<FORM METHOD="POST" ACTION="/cgi-bin/skript.cgi">
<!-- samotný formulár -->
</FORM>
Dostávame sa k ponukám a posuvným zoznamom. V zásade medi tymito dvoma prvkami je len minimálny rozdiel: v posuvnom zozname je možné zobraziť a vybrať viac prvkov naraz, kdežto v ponuke je možné vybať len jednu položku. Oba tieto prvky sú tvorené pomocou tagu SELECT, ktorý nadobúda známy atribút NAME. Tag SELECT je povinne párový a vo svojom tele obsahuje skupinu tagov OPTION. Tu je ukážka vytvorenia ponuky:
Určite ste si všimli, že pomocou atribútu SELECTED je možné vopred nastaviť položku, ktorá bude vybraná. Pri odoslaní dát formulára takáto ponuka odošle na vstup CGI skriptu meno ponuky dané atribútom NAME tagu SELECT a hodnotu zvolenej položky - tagu OPTION. Túto hodnotu tvorí text, ktorý nasleduje za tagom OPTION, resp. ju môžete určiť atribútom VALUE.
Pokým chcete vytvoriť posuvný zoznam, použijete rovnakú konštrukciu ako pre vytvorenie ponuky a v tagu SELECT pomocou atribútu SIZE určíte počet položiek, ktoré budú naraz viditeľné. Môžete tiež pomocou atribútu MULTIPLE určiť, že bude možné vybrať viac hodnôt naraz. Príklad:
Na záver nám ostal už len jeden prvok formulára, a to viacriadkové textové pole. Toto je tvorené povinne párovým tagom TEXAREA, ktorému atribútmi COLS a ROWS určíte počet zobrazených stĺpcov a riadkov. Pokým užívateľ zadá viac znakov, ako sa do daného priestoru vojde, na okraji tohto prvku sa vytvorí posuvník a užívateľ môže kľudne vpisovať ďalej. Názov tohto prvku opäť určujete atribútom NAME. Pokým chcete zadať nejaký text, ktorý sa má v danom poli zobraziť, neurčujete ho priamo ako atribút tagu TEXTAREA, ale musíte ho zadať do tela tagu:
<textarea name="pole" cols="45" rows="5">
Sem môžete vpísať svoj text...
</textarea>
Nabudúce si vysvetlíme, ako v skripte spracovať vstupné dáta.
Všetky články sú vlastníctvom autorov Developer Zone. Všetky práva vyhradené.
Stránky Developer.sk sú vytvorené pomocou PHP-Nuke.
Odkazy na nové články je možné preberať pomocou:Backend.php.