PHP: Kniha návštěv
Na této stránce najdete zdrojový kód jednoduché knihy návštěv. Nebudeme potřebovat databázi, data budeme ukládat do externího souboru.
Kniha návštěv, zdrojový kód
<html><body>
<?php
$action = $_POST['action'];
$jmeno = $_POST['jmeno'];
$mail = $_POST['mail'];
$vzkaz = $_POST['vzkaz'];
$kontrola = $_POST['kontrola'];
function antispam($email, $jmeno){
$return = "<script type=\"text/javascript\"><!--\ndocument.write('<a href=\"' + 'mailto:' + '";
for($i=0;$i<strlen($email);$i++){
$code .= $email{$i}=='@' ? "' + '".ord("@")."' + '"
: "".ord($email{$i}).";";
}
$return .= $code."' + '\">' + '".$jmeno."' + '<\/a>');\n--></script>";
RETURN $return;
}
?>
<form name="form" method="post"
action="kniha.php">
<table><tr><td>jméno:</td>
<input type="hidden" value="uloz" name="action" />
<td><input type="text" name="jmeno" value="<?php echo $jmeno ?>" size="50" /</td>
</tr><tr><td>e-mail:</td>
<td><input type="text" name="mail" value="<?php echo $mail ?>" size="50" /></td>
</tr><tr></tr>
<tr><td valign="top">Vzkaz</td>
<td><textarea name="vzkaz" cols="40" value="<?php echo $vzkaz ?>" rows="5"><?php echo $vzkaz ?>
</textarea></td></tr>
<tr><td></td><td>Ochrana proti spamu: 4 plus 5 =
<input type="text" name="kontrola" value="<?php echo $kontrola ?>" size="8" />
</td>
<tr><td></td><td>
<input type="submit" value="odeslat"></td>
</tr>
</table>
</form>
<table>
<?php
if ($action=='uloz'):
$soubor = "kniha.body";
@$ext = fopen($soubor, "r");
@$obsah = fread($ext, filesize($soubor));
@FClose($ext);
if($kontrola != "9"):
echo "<h6>Špatná odpověď</h6>";
elseif(($vzkaz=="") or ($jmeno=="")):
echo "<h6>Nejsou vyplněny požadované údaje</h6>";
else:
$ext = fopen("kniha.body", "w");
$mail = HTMLSpecialCHars($mail);
if($mail == "")
$mail = "";
else $mail = antispam($mail,$mail);
$jmeno = HTMLSpecialCHars($jmeno);
$vzkaz = HTMLSpecialCHars($vzkaz);
$tab = "<tr><td width=\"300\" >".$jmeno."</td>
<td align=\"right\">".Date(" d/m/Y H:i:s")."</td>
</tr><tr><td colspan=\"2\">".$vzkaz."</td>
</tr><tr><td width=\"150\">".$mail."</td>
</tr><tr><td colspan=\"2\"><hr size=\"1\"></td>
</tr>";
fputs($ext, "$tab");
fputs ($ext, "$obsah");
FClose($ext);
@$ext = fopen("kniha.body", "r");
@fpassThru($ext);
endif;
else: @$ext = fopen("kniha.body", "r");
@fpassThru($ext); endif;
?>
</table>
</body>
</html>
Trochu vysvětlení
Prostřednictvím formuláře ukládáme data do souboru kniha.body.
Konstrukce if ($action=='uloz'): určuje, zda jsme odeslali nějaká
data, pokud ano uloží je a vypíše obsah celého souboru. Pokud ne, pouze vypíše obsah souboru. Pokud je zadána e-mailová adresa, skript ji doplní o odkaz a href="mailto:..". Skript kontroluje, zda bylo zapsáno jméno a obsah příspěvku. Soubor s formulářem je nutné pojmenovat kniha.php, nebo změňte URL v hlavičce formuláře (u atributu action). Skript zahrnuje i jednoduchou kontrolu proti spamu (příklad 4 + 5, výsledek 9). Otázku můžete nahradit čímkoli jiným, pouze je pak třeba zapsat do skriptu správný výsledek u if($kontrola != "9"):, místo "9" může být jiné číslo, slovo atd. Funkce antispam() zajišťuje ochranu výpisu e-mailové adresy proti spamu.
Základy
Rozšíření
Příklady
- PHP scripty
- Kniha návštěv
- Ochrana e-mailu
- Malé šablony
- Počítadlo návštěv
- Odeslání e-mailu
- Generování formuláře
- IP adresa
- RSS čtečka
- Heslo
- Zaheslování jedné stránky
- Ověření e-mailu
- Odstranění diakritiky
- Aktuální datum a čas
- Vypsání souboru
- Počet souborů v adresáři
- Vypsat název dne
- Vypsat název měsíce
Ostatní
Wedos.cz - nejlevnější domény,
webhosting za 25,- Kč/měsíc
Porovnejte si sazby zákonného pojištění vozidel online.
Nabízíme markýzy - špičkový výběr a kvalita. Naše markýzy vydrží.
Reklama:
Kvalitní a spolehlivý web hosting pro každého | Jak vypadá efektivní tvorba webových stránek? Nechte si vytvořit web společností AITOM!
