Kód souboru novy_obyvatel.php pro opsání
<?php /*Kroužek webdesignu DDM Chomutov - soubor s vložením nového řádku záznamu do databáze*/ $query = "SELECT * FROM `mesto`"; //do proměnné $query vložíme příkaz co všechno chceme zobrazit, v tomto případě vše a netříděné. include "link.php"; //aktivujeme připojovací sekvenci ze souboru link.php /*Proměnná $volba signalizuje skriptu, jakou část kódu má provést. Po prvním najetí na tuto stránku je proměnná prázdná a proto se objeví základní formulář pro přidání záznamu do databáze. V momentě, kdy ho vyplněný odešleme se do proměnné $volba vloží hodnota 1 a tím skript provede kontrolu vložených dat a pokud vyhovují, tak je vloží do databáze.*/ if ($volba=="") //zahajovací stránka { include "novy_obyvatel_form.php"; } elseif ($volba=="1") //kontrola dat a vložení dat do databáze { /*První zkontrolujeme, zda do proměnných byla vůbec vložená data, abychom do databáze zbytečně nevkládali prázdné řádky*/ $kontrola=0; //pokud je tato proměnná 0 budou data odeslána do databáze $text_chyby="Zapoměl jste do formuláře zadat tato data: "; //generujeme text chybového hlášení $vek=(int)$vek; //přetypování věku na celá čísla, pokud tam někdo zadá text, skript není chráněný if ($jmeno=="") { $kontrola=1; //vložení chyby do kontrolní proměnné $text_chyby=$text_chyby."jméno nového obyvatele "; } if ($prijmeni=="") { $kontrola=1; //vložení chyby do kontrolní proměnné $text_chyby=$text_chyby."příjmení nového obyvatele "; } if ($vek=="") { $kontrola=1; //vložení chyby do kontrolní proměnné $text_chyby=$text_chyby."věk nového obyvatele "; } if ($zamestnani=="") { $kontrola=1; //vložení chyby do kontrolní proměnné $text_chyby=$text_chyby."zaměstnání nového obyvatele "; } $text_chyby=$text_chyby."."; //ukončíme první větu chybového hlášení /*Druhé kontrolujeme, zda nám někdo nevkládá do databáze nesmyslný věk - povolíme reálnou hranici 120 let, číslo nula budeme uvažovat, jako že ještě děťátku není ani rok*/ if (($vek<0) or ($vek>120)) // podmínka se aktivuje, pokud vložený věk je menší než 0, nebo větší než 120 { $kontrola=1; //vložení chyby do kontrolní proměnné $text_chyby3="Nebyl vložen reálný lidský věk!"; } /*Odesílání dat do databáze*/ if ($kontrola==1) //akce se stane, pokud skript zachytí chybu { $volba=""; //proměnná volba se vrátí na původní hodnotu, aby umožnila uživateli znova vložit údaje, tentokrát se mu ale vloží i chybové hlášky include "novy_obyvatel_form.php"; //znovu se načte soubor $vek=""; } else { $query = "INSERT INTO `mesto` ( `id_obyvatel` , `jmeno` , `prijmeni` , `vek` , `zamestnani` , `pohlavi` ) VALUES ('', '".$jmeno."', '".$prijmeni."', '".$vek."', '".$zamestnani."', '".$pohlavi."')"; //do proměnné $query vložíme příkaz, kterým vkládáme nový řádek do databáze. include "link.php"; //aktivujeme připojovací sekvenci ze souboru link.php $data=mysql_query($query, $link); //odesíláme dotaz na server, v proměnné $data máme údaje z databáze, které nám server vrátil zpět $text_chyby="Nový člen vašeho města ".$jmeno." ".$prijmeni." byl úspěšně vložen do databáze"; //hlášení o úspěšném vykonání příkazu $volba=""; //proměnná volba se vrátí na původní hodnotu, aby umožnila uživateli znova vložit údaje, tentokrát se mu ale vloží i chybové hlášky $vek=""; $text_chyby2=""; $text_chyby3=""; include "novy_obyvatel_form.php"; //znovu se načte soubor } } ?> |