|
Pro vlastní zprávu anket jsem navrhl malý projekt, který zařídí všechny základní operace.Je třeba si uvědomit že jde o zprávu dvou tabulek. První znich "" obsahuje hlavičku ankety .... tedy otázku a další podrobnosti ankety a druhá tabulka obsahuje odpovědi. Mezi těmito tabulkami existuje relace 1-n. Platí tedy že k jednomu záznamu v tabulce hlaviček připadá více záznamů v tabulce odpovědí. Pro názorné uzpořádání scriptů tohoto projktu slouží následující obrázek. |
|
Zcela mimo jsou postaveny scripty keré anketu přidávají. Jde o scripty anketa_i01.php a anketa_i02.php. První znich je vstupním formulářem a druhý znich pak provádí vlasní zápis do databáze. Script anketa_i02.php požívá pro konektování stejný script jako jsme si ukázali v předchozím díle. Vlastní uložení do databáze pak vypadá asi takto: |
|
mysql_query("INSERT INTO anketa_hlavicka (otazka,sirka) VALUES ('$otazka',$sirka)"); |
|
Proměnné $otazka a $sirka se předávají z formuláře ve scriptu anketa_i01.php. Jde o vlastní otázku ankety a šířku ankety v obrazových bodech. Pro jednoduchost zde nejsou zařazeny žádné větší kontroly zprávnosti vyplnění polí formuláře. Srdcem celého projektu je seznam všech anket ve scriptu anketa_all.php. V jeho jádru je tabulka vypisující všechny ankety.. |
|
<? echo "<tr><td colspan=\"7\"><hr
size=\"1\" noshade></td></tr>\n"; |
|
Pokud budete chtít opravit hlavičku ankety zavoláte scripty anketa_e01.php a anketa_e02.php s parametrem ID = ID_Anketa z databáze. První znich je opět formulář podobný formuláři pro přidávání. Hlavním rozdílem je naplnění položek z databáze. Výkonný script anketa_e02.php pak provede následující. |
|
mysql_query("UPDATE anketa_hlavicka SET otazka='$otazka' ,sirka=$sirka WHERE id_anketa=$id"); |
|
Rozhodneme-li se anketu smazat, zavoláme script anketa_d02.php. Jako parametr ID mu předáme číslo ankety = ID_Anketa. Nesmíme zapomenout že je třeba smazat nejen hlavičku ankety, ale také všechny otázky ankety. Výsledné script pak bude vypadat asi takto: |
|
<? require ("db/connect.php"); if ( ($id!=0) ) |
|
Po vykonání scriptu se presunete pomocí zavolání HEADERS("Location .... zpět do zprávy anket. Okamžitě tak vidíte zda vybraná anketa byla smazána. |
|
<? $dbhost = "localhost"; $dbusername = ""; $dbname = "sny"; $dbpassword = ""; $Con2 = mysql_connect($dbhost,$dbusername,$dbpassword); if (!$Con2) |
|
Všechny tyto scripty si můžete stáhnout .....zde |
Obrázky pro grafi jsou také ke stáhnutí .....zde |
Pokud používáte phpMyAdmin můžete si do něho stáhnout SQL script pro vytvoření tabulek ..... zde |
Příště pro vás připravím pár scriptů které budou sloužit jako prostředí pro přípravu vašich anket. Pokud budete mít nějaké otázky klidně napište na adresu provaz@volny.cz |