Jednoduchý formulář a jeho zpracování (1)

Pomocí formulářů se dají dělat divy. Hlavně poslat nějaké hodnoty - ale kam vlastně? Někdy se pomocí formuláře přihlásíte k registraci, pošlete něco někomu mailem (ani nevíte na jakou adresu), vložíte položku do databáze...

Celá taková atrakce se dá rozdělit na tři fáze:

Podíváme se na všechny tři části na příkladu - vytvoření formuláře pro zaslání zprávy na e-mail.

Pokud jste přišli na tuto stránku v domnění, že tady najdete kód, který okopírujete, vložíte do stránky a budete mít funkční formulář, tak tady nejste správně. Zkuste se podívat na jaknaweb.com, případně se zaregistrovat na www.blueboard.cz.

Formulář v HTML

Co se týče samotného formuláře, vezmu to spíš zběžně. Podrobné informace o vytvoření formuláře v HTML najdete u Yuhůa.

Uděláme si úplně jednoduchý formulář. Detaily vysvětlím postupně dále.

<form method="post" action="zpracovat.php" >
  <input type="text" name="odesilatel" /><br />
  <textarea name="zprava"></textarea><br />
  <input type="submit" name="odeslano" value="Odeslat mail" />
</form>

Necháme-li stranou samotnou syntaxi HTML (znovu připomínám výše uvedený odkaz na JPW), tak důležité je:

Formulář bude vypadat přibližně takto (klidně mačkejte, nic se nestane ;-) ):



(Ve skutečnosti by byl formulář vybaven asi také atributy jako width a height u jednotlivých polí, ty by byly třeba v tabulce… Pro nás to teď není podstatné.)

Odeslání formuláře

Takže máme tento formulář, vložený v nějaké - libovolné - stránce. Co se stane, když se zmáčkne odesílací tlačítko:

Do proměnné $_POST['odesilatel'] se uloží hodnota vyplněná v prvním poli; do proměnné $_POST['zprava'] se uloží hodnota z druhého pole, a do $_POST['odeslano'] hodnota "Odeslat mail" (viz atribut "value" u tohoto inputu ve formuláři, která rovněž tvoří nápis na tlačítku). Pak se zavolá skript "zpracovat.php" - ten ale zatím nemáme.

Pokud jste už prostudovali pojednání o include a porozuměli předávání proměnných pomocí GET, všimněte si zde analogie při použití metody POST, a to včetně názvu superglobální proměnné ($_GET, $_POST).


Mozilla Firefox: Bezpečnější, rychlejší, lepší
píše -dis- bb(zavináč)choltice.eu