| Výuka > Úvod do PHP > Formuláře |

Formuláře

O formulářích bylo psáno již v kapitole o JavaScriptu, ovšem neuškodí si je osvěžit. HTML umožňuje formulářové prvky pouze zobrazovat, ovšem pokud mají začít fungovat, je zapotřebí sáhnout po nějakém skriptovacím jazyce (JavaScript, PHP, atp.). Vlastní formulář se vloží do stránky pomocí párové značky <form>, jehož syntaxe je uvedena dále. Značka <form> obsahuje celou řadu parametrů, které slouží pro ovládání formuláře.

<form parametry>
  formulářové prvky
</form>

Jako parametry značky <form> se používají:

action="URL" udává URL skriptu, který formulář zpracuje a vyhodnotí
enctype="kódování" definuje, jak mají být hodnoty formuláře kódovány
method="metoda" způsob předávání parametrů
name="jméno" jméno formuláře používané při zpracování formuláře skriptem
onSubmit="událost" událost, která se spustí při odeslání formuláře
target="cíl" jméno rámce nebo okna, které obdrží výsledky zpracování formuláře

Pro zpracování formuláře se používají dvě metody - post a get (get je implicitní způsob). Při odesílání metodou get jsou všechna zadaná data formuláře přidána k řetězci s URL adresou skriptu ve tvaru klíč=hodnota. Metoda post také zahrnuje data formuláře jako součást těla požadavku, ovšem umožňuje předávat větší množství dat než metoda get. U metody get také může nastat situace, kdy byly předány hodnoty, které jsou již zastaralé (požadavek byl vyřízen při předchozím zpracování formuláře). Kterou metodu tedy používat? Metoda get by se měla používat pro předání dat modifikováním URL, které odesílá data serveru, metoda post pak v situacích kdy skript mění obsah dat na serveru (get tedy např. pro jednoduché procházení databází, post např. pro program závislý na času).

HTML nabízí celou řadu formulářových prvků. Některé se zapisují pomocí značky <input>

type="text" textové políčko
type="password" políčko pro vstup hesla (při zadávání se zobrazují hvězdičky)
type="button" obecné tlačítko
type="checkbox" zaškrtávací políčko
type="radio" přepínací políčko
type="file" pole pro zadání souboru
type="hidden" skrytý formulářový prvek
type="image" prvek typu obrázek
type="reset" tlačítko pro vymazání formuláře
type="submit" tlačítko pro odeslání formuláře

Krom těchto prvků se ještě můžete setkat se seznamy:

<select>
 <option> První položka seznamu </option>
 <option> Druhá položka seznamu </option>
 <option> Třetí položka seznamu </option>
 ...
 <option> Poslední položka seznamu </option>
</select>

a textovým polem:

<textarea>
</textarea>

Jednotlivé formulářové prvky je nutné pojmenovat parametrem name=" ", případně k nim přiřadit nějakou hodnotu parametrem value=" ". Více si ukážeme v následující jednoduché ukázce. Vytvoříme jednoduchý formulář sestávající ze dvou vstupních formulářových prvků (textové políčko a políčko pro heslo) a dvou tlačítek (odeslání a vymazání formuláře). Tento formulář pak uložíme jako HTML soubor.

<html> <!-- soubor formular.html -->
<head> <title> Formulář </title> </head>

<body>
<form name="prihlaseni" action="prihlaseni.php"
  method="get" enctype="text/plain">
 Uživatel: <input type="text" name="id"> <br>
 Heslo: <input type="password" name="pw"> <br>
 <br>
 <input type="reset" value="Zrušit">
 <input type="submit" value="Přihlásit">
</form>
</body></html>
<?php
  # soubor prihlaseni.php
  echo ("Uživatel: ".$id."<br>\n");
  echo ("Heslo: ".$pw);
?>

Tento příklad zobrazí v prohlížeči jednoduchý formulář, do kterého obsluha vyplní požadované údaje a po odeslání je server zpracuje a předá zpět prohlížeči (zadané hodnoty vypíše).

31.08.2007, 13:12 vytvořil Administrator