logo MojeWebovky
ÚVOD XHTML CSS PHP OSTATNÍ
PHP
< Předchozí

Zpracování formulářů

Protože webové stránky jsou interaktivní záležitost, jednoznačně k PHP patří i formuláře. Díky nim může uživatel zadávat nějaká vstupní data, se kterými pak PHP skript pracuje.

Asi nejjednodužší je udělat si dvě stránky. První bude čisté XHTML s formulářem a druhá bude obsahovat PHP skript, který odeslané informace zpracuje.

První stránka (formular.htm) obsahuje takovýto formulář:

  <form action="./zpracuj.php" method="post">
  <p>
  Co jste měli dnes k obědu:
  <input type="text" name="jidlo" />
  <input type="submit" value="potvrdit" />
  </p>
  </form>

Jako hodnota atributu action je nastavena stránka, na kterou se zadané informace odešlou (zde stránka zpracuj.php).

Druhá stránka (zpracuj.php):

  <?php
  echo "Dnes jste obědvali ".$_REQUEST['jidlo'];
  ?>

Proměnná $_REQUEST je asociativní pole, které obsahuje všechna odeslaná data. Namísto toho lze ještě použít pole $_POST a $_GET, která rozlišují data podle metody odeslání.

Celé to pak bude vypadat takto.

Tento příklad lze ještě přepracovat tak, aby se využívala jen jediná stránka, která bude odkazovat sama na sebe. Ta musí být pochopitelně uložena jako PHP. Kód by pak vypadal následovně:

  <?php
  if (empty ($_REQUEST))
  	{
  ?>
	
	<form action="./zpracuj.php" method="post">
  	<p>
  	Co jste měli dnes k obědu:
  	<input type="text" name="jidlo" />
  	<input type="submit" value="potvrdit" />
  	</p>
  	</form>
  
  <?php
  	}
  else
	{  
	echo "Dnes jste obědvali ".$_REQUEST['jidlo'];
	}
  ?>

Vysvětlení je jednoduché. Funkce empty zjistí, zda je prázdná proměnná $_REQUEST. Pokud ano, nebyl ještě formulář odeslán, a proto ho zobrazíme. Když je proměnná naplněna, nemá již smysl vypisovat formulář, ale rovnou zobrazíme výstup PHP, které zpracovalo odeslané informace.

Z uživatelského hlediska bude vše vypadat stejně, jako předchozí varianta.

< Předchozí

© 2006-2007 Petr Kuda - www.troska.cz

O webu
Slovníček pojmů
Odkazy
Verze pro tisk (pdf)
TOPlist