Počítače Okna Internet

Návštěvní kniha PHP. Psaní skriptu návštěvní knihy Crazy dealer guestbook php

PHP 5.2 a vyšší;
- mod_rewrite;
- Základna Data MySQL 4.1 a vyšší.

Příležitosti

Vloží pod jakoukoli stránku (k tomu stačí upravit soubory top.php a bottom.php);
- protipovodňové;
- seznam zákazů;
- zobrazení navigace na stránce<< < ...| 5 | 6 | 7 ... > >>;
- podpora BBCode;
- zobrazení emotikonů;
- upozornění na nově přidané zprávy;
- možnost přidávat zprávy pro moderování;
- administrátorská lišta;
- Snadná instalace a nastavení.

Instalace

Rozbalte archiv a zkopírujte obsah archivu do libovolné složky na vašem webovém serveru (např. "kniha hostů"). Otevřete soubor config/config_db.php v textový editor a zadejte nastavení připojení (hostitel databáze nebo IP, název databáze, přihlašovací jméno a heslo). Umístěte databázové tabulky MySQL SQL dotaz ze souboru guestbook.sql. obvykle na většině hostingů se to provádí přes webové rozhraní přes phpMyAdmin. Přejděte do administračního panelu (http://your_site/folder_with_script/admin/) a zadejte heslo 1111. Dále zadejte potřebná nastavení.

Komerční verze

Na přání zákazníka mohu skript přizpůsobit konkrétním podmínkám. Lze přidat různé doplňkové funkce.

Poznámka

SCRIPT "PHP Návštěvní kniha", TEDY JEN PROGRAM JE ZCELA ZDARMA. SVÉ ZMĚNY VE ZDROJOVÉM KÓDU PROGRAMU MŮŽETE VOLNĚ DISTRIBUOVAT, KOPÍROVAT, PROVÁDĚT POUZE V PODMÍNCE AUTORSKÝCH PRÁV AUTORA. POUŽÍVÁNÍ PROGRAMU „PHP Kniha návštěv“ PRO KOMERČNÍ ÚČELY JE ZAKÁZÁNO. TENTO PROGRAM POUŽÍVÁTE NA VLASTNÍ RIZIKO. AUTOR NENÍ ODPOVĚDNÝ ZA PLNĚNÍ PROGRAMU, TAKÉ ZA ZTRÁTU, POŠKOZENÍ DAT NEBO CO ČEHO NEBO COKOLIV SPOJENÝCH S POUŽÍVÁNÍM A PROVOZEM TOHOTO PROGRAMU.

Pokud se vám můj scénář líbil a chcete mi poděkovat rublem, zde jsou mé údaje:

WebMoney
U237811811298
R198597198920
Z917380288657

Yandex peníze
41001635943434

PayPal

Pokud máte nějaké dotazy nebo návrhy, napište mi na: Tato adresa E-mailem chráněna před spamovacími roboty. Pro zobrazení musíte mít povolený JavaScript.

» » @lexguestbook

@lexguestbook- je to zdarma PHP návštěvní kniha skript webových stránek. Napsáno v jazyce PHP, @lexguestbook Snadná instalace během několika minut, dokonce i začátečníci to snadno zjistí.

PHP kniha návštěv zcela zdarma skript - hlavní podmínka: neodstraňujte autorská práva ve spodní části stránky. PHP kniha návštěv je nainstalován na vašem serveru a je zcela nezávislý na jakýchkoli jiných stránkách. Záloha Zveřejněte v návštěvní knize PHP na vaši žádost, alespoň každý den. Automatická instalace Alex návštěvní kniha: Názvy tabulek v databázi se registrují samy.

Výhody skriptu

  • Díky skinům se můžete změnit vzhled @lexguestbook pro design vašeho webu. (všechny vzhledy jsou platné XHTML 1.0 Transitional)
  • PROTI PHP kniha návštěv vestavěných asi 20 jazyků.
  • Každá země zobrazuje svou vlastní vlajku.
  • Podpora emotikonů: možnost přidávat vlastní emotikony, mazat, upravovat.
  • Zobrazí se statistika znaků: můžete nastavit maximální počet písmen v jedné zprávě.
  • Interní vyhledávač.
  • Možnost hodnocení návštěvníky. Hodnocení na 10bodovém systému.

Podporované jazyky

Úplný překlad.
Francouzština, angličtina, polština, němčina, norština, italština, holandština, slovenština, perština, turečtina.

Částečný překlad. Některá slova jsou stále v angličtině.
Španělština, ruština, švédština, čeština, chorvatština, portugalština, islandština, srbština, dánština.

Kurz návštěvní knihy PHP. Dnes jsem připravil nový zajímavý tutoriál – řeknu vám, jak vytvořit ajax PHP návštěvní knihu s vlastním unikátním designem. Naše záznamy budou uloženy do SQL databáze. Tato tabulka bude obsahovat další informace: jméno odesílatele, email, záznam z knihy návštěv, datum a čas záznamu a IP odesílatele. Samozřejmě budeme používat i jQuery (aby to bylo Ajax). Jednou z důležitých funkcí bude ochrana proti spamu (nemůžeme zveřejnit více než jeden záznam každých 10 minut)!

Nyní – stáhněte si zdrojové soubory a začněte kódovat!

Krok 1. SQL

Potřebujeme přidat jednu tabulku do naší databáze (pro uložení našich záznamů):

VYTVOŘIT TABULKU, POKUD NEEXISTUJE `s178_guestbook` (`id` int(10) unsigned NOT NULL auto_increment, `name` varchar(255) default "", "email" varchar(255) default "", ,description` varchar(255) výchozí "", `když` int(11) NOT NULL výchozí "0", `ip` varchar(20) výchozí NULL, PRIMÁRNÍ KLÍČ (`id`)) ENGINE=MyISAM DEFAULT CHARSET=utf8;

Krok 2 PHP

Zde je zdrojový kód našeho hlavního souboru:

návštěvní kniha.php

=") == 1) error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED); else error_reporting(E_ALL & ~E_NOTICE); require_once("classes/CMySQL.php"); // včetně třídy služby pro práci s databází // získat funkce IP návštěvníka getVisitorIP() ( $ip = "0.0.0.0"; if((isset($_SERVER["HTTP_X_FORWARDED_FOR"])) && (!empty($_SERVER["HTTP_X_FORWARDED_FOR"]))) ( $ip = $ _SERVER["HTTP_X_FORWARDED_FOR"]; ) elseif((isset($_SERVER["HTTP_CLIENT_IP"])) && (!empty($_SERVER["HTTP_CLIENT_IP"]))) ( $ip = explode(".",$_SERVER[ "HTTP_CLIENT_IP"]); $ip = $ip.".".$ip.".".$ip.".".$ip; ) elseif((!isset($_SERVER["HTTP_X_FORWARDED_FOR"])) | | (prázdné ($_SERVER["HTTP_X_FORWARDED_FOR"])) ( if (!isset($_SERVER["HTTP_CLIENT_IP"])) && (prázdné ($_SERVER["HTTP_CLIENT_IP"]))) ( $ip = $_SERVER ["REMOTE_ADDR"]; ) ) return $ip; ) // funkce získání posledních záznamů návštěvní knihy getLastRecords($iLimit = 3) ( $sRecords = ""; $aRecords = $GLOBALS["MySQL"]->getAll("SELECT * Z `s178_guestbook` OBJEDNEJTE PODLE `id` DESC LIMIT ($iLimit)"); forea ch ($aRecords as $i => $aInfo) ( $sWhen = date("F j, Y H:i", $aInfo["when"]); $sRecords .=<<

Záznam od ($aInfo["name"]) (($sWhen)):

($aInfo["popis"])

EOF; ) return $sRecords; ) if ($_POST) ( // přijímání nových záznamů $sIp = getVisitorIP(); $sName = $GLOBALS["MySQL"]->escape(strip_tags($_POST["name"])); $sEmail = $GLOBALS ["MySQL"]->escape(strip_tags($_POST["name"])); $sDesc = $GLOBALS["MySQL"]->escape(strip_tags($_POST["text"])); if ($ sName && $sEmail && $sDesc && $sIp) ( // ochrana proti spamu $iOldId = $GLOBALS["MySQL"]->getOne("SELECT `id` FROM `s178_guestbook` WHERE `ip` = "($sIp)" AND `when` >= UNIX_TIMESTAMP() - 600 LIMIT 1"); if (! $iOldId) ( // povolit přidání komentáře $GLOBALS["MySQL"]->res("INSERT INTO `s178_guestbook` SET `name` = "($sName)", `email` = "($sEmail)", `description` = "($sDesc)", `když` = UNIX_TIMESTAMP(), `ip` = "($sIp)"") ; // vykreslení posledních 10 záznamů $sOut = getLastRecords(); echo $sOut; exit; ) ) echo 1; exit; ) // vykreslení posledních 10 záznamů $sRecords = getLastRecords(); ob_start(); ?>

Záznamy návštěvní knihy

Zde přidejte svůj záznam

PHP kniha návštěv | Tutoriály skriptů

PHP návštěvní kniha

Zpět na původní výukový program o výukových programech skriptů

Po otevření této stránky uvidíme knihu, vlevo nakreslíme seznam posledních tří záznamů, vpravo forma zaúčtování nových záznamů. Při odeslání formuláře – skript odešle POST data (na stejnou php stránku), skript uloží tato data do databáze a vrátí nám seznam 3 čerstvých záznamů. Poté pomocí efektu slábnutí vykreslíme vrácená data v levém sloupci. Veškerý kód obsahuje komentáře - přečtěte si jej pro lepší pochopení kódu. Ok, další soubor PHP je:

class/CMySQL.php

Toto je moje vlastní třída služeb pro práci s databází. Toto je pěkná třída, kterou můžete také použít. Podrobnosti o připojení k databázi umístěné v této třídě v několika proměnných, ujistěte se, že to budete moci nakonfigurovat pro svou databázi. Nebudu zveřejňovat jeho zdroje – to zatím není nutné. k dispozici v balení.

Krok 3. CSS

Nyní - všechny použité styly CSS:

css/main.css

*( margin:0; padding:0; ) body ( background-color:#fff; color:#fff; font:14px/1.3 Arial,sans-serif; ) zápatí ( background-color:#212121; bottom:0; box-shadow: 0 -1px 2px #111111; display:block; height:70px; left:0; position:fixed; width:100%; z-index:100; ) footer h2( font-size:22px; font- váha:normální; vlevo:50%; levý okraj:-400px; odsazení:22px 0; pozice:absolutní; šířka:540px; ) zápatí a.stuts,a.stuts:visited( border:none; text-decoration:none ; color:#fcfcfc; font-size:14px; left:50%; line-height:31px; margin:23px 0 0 110px; position:absolute; top:0; ) footer .stuts span ( font-size:22px; font-weight:bold; margin-left:5px; ) .container ( background: transparent url(../images/book_open.jpg) no-repeat top center ; color: #000000; height: 600px; margin: 20px auto; overflow: hidden; padding: 35px 100px; position: relativní; width: 600px; ) #col1, #col2 ( float: left; margin: 0 10px; overflow: hidden; text-align: center; width: 280px; ) #col1 ( -webkit-transform: rotation(3deg); -moz-transform: otočit(3deg); -ms-transform: otočit(3deg); -o-transformace: rotace(3deg); ) #records form ( margin:10px 0; padding:10px; text-align:left; ) #records table td.label ( barva: #000; font-size: 13px; padding-right: 3px; text-align: right ; ) #records table label (font-size: 12px; vertical-align: middle; ) #records table td.field input, #records table td.field textarea ( background-color: rgba(255, 255, 255, 0.4) ; border: 0px solid #96A6C5; font-family: Verdana,Arial,sans-serif; font-size: 13px; margin-top: 2px; padding: 6px; width: 190px; ) #records table td.field input ( background -color: rgba(200, 200, 200, 0.4); kurzor: ukazatel; float:right; width: 100px; ) #records table td.field input:hover ( background-color: rgba(200, 200, 200, 0.8) ); ) #records_list ( text-align:left; ) #records_list .record ( border-top: 1px solid #000000; font-size: 13px; padding: 10px; ) #records_list .record:first-child ( border-top -width:0px; ) #records_list .record p:first-child ( font-weight:bold; font-size:11px; )

Dnes popíšu snad nejlepší úkol pro začátečníky v programovacím jazyce PHP – Kniha hostů. Tento úkol je dle mého názoru nejjednodušší, ale zároveň umožňuje naučit se všechny hlavní funkce práce s PHP a databází MySQL. Tento úkol je navíc nekonečně rozšiřitelný, což vám umožňuje zdokonalovat nové technologie.

Popis a řešení tohoto problému zde bude napsáno ihned, bez kontrol výkonu, takže může být někde chyba. Nebylo to kvůli mé lenosti, ale zase kvůli dodatečnému školení, když jste tvořili knihu návštěv. Také prezentované řešení bude trochu „pokřivené“, ale o tom více na konci tohoto článku v sekci „Samostatná práce“.

Pokud vůbec nevíte, jak pracovat s PHP, pak vám nejprve doporučuji přečíst si poznámku PHP - kde začít.

Rozebereme si tvorbu té nejprimitivnější návštěvní knihy, bez designu a administrace. Jinými slovy, omezíme se na vstup do knihy, registraci a zanechání zpráv.
Ze samotného úkolu je zřejmé, že se můžeme zcela omezit na tři php soubory k realizaci tohoto úkolu. Registrační úlohu lze samozřejmě rozdělit na dvě části: registrační formulář a přidání dat do databáze, ale to neuděláme. Obdobné zdůvodnění platí i pro postup při vkládání připomínek. Vytvoříme tedy tři soubory: index.php, registration.php, book.php.

Podle názvů souborů okamžitě pochopíte, za co budou zodpovědné: index.php je přihlašovací stránka, registration.php je registrační stránka, book.php je stránka knihy návštěv.

Nejjednodušší je v našem případě přihlašovací stránka. Jelikož je stránka zodpovědná za zadání dvojice login a heslo, musí mít formulář pro odeslání těchto údajů na stránku book.php. Je zde také odkaz na registrační stránku. My máme:

Zápis do knihy návštěv

Přihlásit se:
Heslo:

Registrace

Trochu mimo téma, pro ty, kteří nevědí, co znamená výše uvedený kód. Zde máme holé HTML. klíčový bod je značka formulář který má dva parametry akce, který zodpovídá za adresu stránky, která se otevře po potvrzení zadání údajů, a parametr metoda, který určuje, jak budou data formuláře odeslána zadanou stránku(viz POST a GET jednoduchými slovy). Uvnitř tagu formuláře jsou specifikována vstupní pole (input, select), která musí mít atribut název. Právě hodnotou tohoto atributu bude možné získat data zadaná uživatelem na stránce uvedené v parametru akční formuláře. Ujistěte se, že uvnitř formuláře musí být vstup s typem Předložit, což je v podstatě tlačítko, kliknutím na to, která data budou odeslána na stránku akce.

Pokračujme... Nyní musíme vytvořit novou registrační stránku uživatele. Stojí za to okamžitě přemýšlet o tom, co přesně chceme mít. Rozhodl jsem se, že pro jednoduchou knihu návštěv bude stačit mít uživatele s jedinečnými přihlašovacími údaji a také znát adresu jejich webu (pokud existuje). Jakmile se rozhodneme, co chceme o uživateli vědět, můžeme začít s návrhem naší databáze.

Jdeme do phpMyAdmin. Vytvořme tam základ s názvem gb. V této databázi vytvořte tabulku Uživatelé s následujícími poli:

Login varchar(50) unique //přihlášení uživatele, jedinečné heslo pole varchar(150) //heslo www varchar(255) //adresa webu

A protože jsme již vstoupili do editoru databáze, můžeme hned přemýšlet, jak budeme zprávy ukládat. V našem případě je docela vhodné vědět, kdo a kdy zanechal zprávu, tedy skutečný text naší zprávy. Pro pohodlí se také vyplatí naše zprávy očíslovat. Rozhodli jsme se pro to, takže můžeme bezpečně vytvořit další tabulku zpráv s následující strukturou:

Id int ai(auto_increment) primární_klíč //číslo zprávy, počítadlo, které se bude samo zvyšovat text zprávy //text zprávy kdo varchar(50) //přihlášení osoby, která zanechala zprávu, když časové razítko výchozí (aktuální) //čas zprávy bylo ponecháno, ve výchozím nastavení aktuální datum a čas

Hotovo s databází. Nyní přejdeme k souboru registration.php. Shrneme-li výše uvedené, máme:

Registrace

Přihlásit se:
Heslo:
Heslo znovu:
WWW: http://


Na hlavní

Něco málo o kódu. Jak jste si již všimli, je zde přítomno PHP. Formulář nebudu popisovat, ale jak vidíme, zde se údaje formuláře odesílají na stejnou stránku, kde se tento formulář nachází. Jinými slovy, soubor registration.php posílá data sám sobě. Nikdo to nezakazuje, ale ne vždy to lze použít, protože to velmi kazí čitelnost kódu. To však na druhou stranu jasně ukazuje možnosti jazyk PHP. Ve skutečnosti je naše stránka rozdělena na dva případy. Prvním případem je odeslání dat na stránku pomocí požadavku POST, druhým případem, kdy na stránku není odeslán žádný požadavek POST. V druhém případě zobrazíme registrační formulář a v prvním případě zahájíme kontrolu zaslaných údajů. Jak vidíte, data se odesílají jako asociativní pole (tj. pole, jehož indexy jsou řetězce). Kromě toho indexy odpovídají názvům vstupních polí uvedených ve formuláři pro předkládání údajů. Tito. pokud píšeme

pak my, když posíláme tato data s POST požadavkem, budeme mít proměnnou

$_POST["vasa-peta"]

Za zmínku také stojí, že neprovádíme žádné kontroly opakování přihlášení. Tato kontrola bude provedena na úrovni databáze, protože přihlašovací pole je označeno jako jedinečné.

Nyní poslední. Zbývá udělat samotnou knihu návštěv. Malá diskuze. Vzhledem k tomu, že kniha návštěv funguje na základě přihlašovacího jména a hesla, musíme nejprve zkontrolovat přítomnost zadaného přihlašovacího jména a hesla v databázi. Vzhledem k tomu, že jsme se rozhodli přidat zprávy také do souboru book.php, postup pro přidání zprávy by měl samozřejmě následovat. No a úplně na závěr zobrazení všech zpráv. (pokud přidáte zprávu po jejich zobrazení, pak se přidaná zpráva zobrazí až po opětovném načtení stránky). My máme:

Kniha návštěv "; ) else ( echo "Vaše zpráva nebyla přidána!


"; } } ?>
"name="login" /> "name="heslo" />

"; echo "Text: ".$row["mes"]."
"; ) ) mysql_close($link); ?>

To je v podstatě vše. Pokud je kód 100% funkční, dobře. Pokud ne, pak vám doporučuji, abyste se pokusili opravit chyby sami. Nyní slíbená sekce.

Samostatná práce
Jak již bylo zmíněno na začátku, toto řešení je „křivé“. Pokud stále nechápete proč, pak vám to nyní vysvětlím. Jak jste si mohli všimnout v souboru book.php ve formuláři pro přidání komentáře, je zde několik skrytých polí, z nichž dvě jsou uživatelské jméno a heslo zadané uživatelem. Není to dobré, že? Zkuste tento problém vyřešit pomocí relací (Jak pracovat s relacemi v PHP).
Zkuste si odpovědět na otázku, jaký je rozdíl mezi funkcemi prázdný/isset a odchod/umřít?
Upravte dotaz na výběr zpráv z databáze tak, aby se při zobrazení zpráv zobrazil web autora zprávy.
Pokud si všimnete, heslo uživatelů v databázi je uloženo jako čistý text, což není příliš dobré. Upravte kód tak, aby databáze ukládala hash hesla uživatele (např. MD5 nebo SHA1).

V tomto tutoriálu vytvoříme knihu návštěv v PHP pomocí AJAX. Záznamy budou uloženy v databázi. Tabulka bude obsahovat následující informace: jméno odesílatele, e-mailovou adresu, IP adresu a datum posledního záznamu. jQuery bude použit (k implementaci AJAX). Implementována bude i jednoduchá ochrana proti spamu – každých 10 minut můžete odeslat maximálně jeden záznam.

Krok 1: SQL

Aby naše aplikace fungovala, musíme vytvořit tabulku:

VYTVOŘIT TABULKU, POKUD NEEXISTUJE `s178_guestbook` (`id` int(10) unsigned NOT NULL auto_increment, `name` varchar(255) default "", "email" varchar(255) default "", ,description` varchar(255) výchozí "", `když` int(11) NOT NULL výchozí "0", `ip` varchar(20) výchozí NULL, PRIMÁRNÍ KLÍČ (`id`)) ENGINE=MyISAM DEFAULT CHARSET=utf8;

Krok 2 PHP

Hlavní soubor bude obsahovat následující kód:

návštěvní kniha.php

=") == 1) error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED); else error_reporting(E_ALL & ~E_NOTICE); require_once("classes/CMySQL.php"); // včetně třídy služby pro práci s databází // Získat Funkce IP návštěvníka getVisitorIP() ( $ip = "0.0.0.0"; if((isset($_SERVER["HTTP_X_FORWARDED_FOR"])) && (!empty($_SERVER["HTTP_X_FORWARDED_FOR"])) ( $ip = $ _SERVER["HTTP_X_FORWARDED_FOR"]; ) elseif((isset($_SERVER["HTTP_CLIENT_IP"])) && (!empty($_SERVER["HTTP_CLIENT_IP"]))) ( $ip = explode(".",$_SERVER[ "HTTP_CLIENT_IP"]); $ip = $ip.".".$ip.".".$ip.".".$ip; ) elseif((!isset($_SERVER["HTTP_X_FORWARDED_FOR"])) | | (prázdné ($_SERVER["HTTP_X_FORWARDED_FOR"])) ( if (!isset($_SERVER["HTTP_CLIENT_IP"])) && (prázdné ($_SERVER["HTTP_CLIENT_IP"]))) ( $ip = $_SERVER ["REMOTE_ADDR"]; ) ) return $ip; ) // Získejte nejnovější záznamy ve funkci návštěvní knihy getLastRecords($iLimit = 3) ( $sRecords = ""; $aRecords = $GLOBALS["MySQL"]->getAll ( "VYBRAT * Z `s178_guestbook` OBJEDNAT PODLE `id` DESC L IMIT($iLimit)"); foreach ($aRecords as $i => $aInfo) ( $sWhen = date("F j, Y H:i", $aInfo["when"]); $sRecords .=<<

($aInfo["popis"])

EOF; ) return $sRecords; ) if ($_POST) ( // Přijmout nové záznamy $sIp = getVisitorIP(); $sName = $GLOBALS["MySQL"]->escape(strip_tags($_POST["name"])); $sEmail = $GLOBALS ["MySQL"]->escape(strip_tags($_POST["name"])); $sDesc = $GLOBALS["MySQL"]->escape(strip_tags($_POST["text"])); if ($ sName && $sEmail && $sDesc && $sIp) ( // Antispam $iOldId = $GLOBALS["MySQL"]->getOne("SELECT `id` FROM `s178_guestbook` WHERE `ip` = "($sIp) " AND `when` >= UNIX_TIMESTAMP() - 600 LIMIT 1"); if (! $iOldId) ( // Můžete přidávat komentáře $GLOBALS["MySQL"]->res("INSERT INTO `s178_guestbook` SET `name ` = "($sName)", `email` = "($sEmail)", `description` = "($sDesc)", `když` = UNIX_TIMESTAMP(), `ip` = "($sIp)"" ) ; // Tisk posledních 10 záznamů $sOut = getLastRecords(); echo $sOut; exit; ) ) echo 1; exit; ) // Tisk posledních 10 záznamů $sRecords = getLastRecords(); ob_start(); ?>

Kniha návštěv

Zde přidejte svou recenzi

Návštěvní kniha v PHP

Když stránku otevřete, uvidíte poznámkový blok. Na levé straně jsou zobrazeny poslední tři záznamy a na pravé straně formulář pro vložení nové recenze. Když je formulář odeslán, skript odešle POST data (na stejnou stránku PHP), poté uloží přijatá data do databáze a vrátí poslední tři položky. Pomocí efektu blednutí se položky zobrazí na levé straně knihy.

Také pomocí souboru PHP

class/CMySQL.php

Tento soubor obsahuje kód třídy pro práci s databází. Pro připojení k serveru vyžaduje nastavení tří proměnných.

$this->sDbName = "NÁZEV_DATABÁZE"; $this->sDbUser = "UŽIVATELSKÉ JMÉNO"; $this->sDbPass = "HESLO";

Krok 3CSS

A nyní vytvoříme podobu návštěvní knihy:

css/main.css

*( margin:0; padding:0; ) body ( background-color:#fff; color:#fff; font:14px/1.3 Arial,sans-serif; ) zápatí ( background-color:#212121; bottom:0; box-shadow: 0 -1px 2px #111111; display:block; height:70px; left:0; position:fixed; width:100%; z-index:100; ) footer h2( font-size:22px; font- váha:normální; vlevo:50%; levý okraj:-400px; odsazení:22px 0; pozice:absolutní; šířka:540px; ) zápatí a.stuts,a.stuts:visited( border:none; text-decoration:none ; color:#fcfcfc; font-size:14px; left:50%; line-height:31px; margin:23px 0 0 110px; position:absolute; top:0; ) footer .stuts span ( font-size:22px; font-weight:bold; margin-left:5px; ) .container ( background: transparent url(../images/book_open.jpg) no-repeat top center ; color: #000000; height: 600px; margin: 20px auto; overflow: hidden; padding: 35px 100px; position: relativní; width: 600px; ) #col1, #col2 ( float: left; margin: 0 10px; overflow: hidden; text-align: center; width: 280px; ) #col1 ( -webkit-transform: rotation(3deg); -moz-transform: otočit(3deg); -ms-transform: otočit(3deg); -o-transformace: rotace(3deg); ) #records form ( margin:10px 0; padding:10px; text-align:left; ) #records table td.label ( barva: #000; font-size: 13px; padding-right: 3px; text-align: right ; ) #records table label (font-size: 12px; vertical-align: middle; ) #records table td.field input, #records table td.field textarea ( background-color: rgba(255, 255, 255, 0.4) ; border: 0px solid #96A6C5; font-family: Verdana,Arial,sans-serif; font-size: 13px; margin-top: 2px; padding: 6px; width: 190px; ) #records table td.field input ( background -color: rgba(200, 200, 200, 0.4); kurzor: ukazatel; float:right; width: 100px; ) #records table td.field input:hover ( background-color: rgba(200, 200, 200, 0.8) ); ) #records_list ( text-align:left; ) #records_list .record ( border-top: 1px solid #000000; font-size: 13px; padding: 10px; ) #records_list .record:first-child ( border-top -width:0px; ) #records_list .record p:first-child ( font-weight:bold; font-size:11px; )