Jak na formuláře v PHP
23.03.2008Komentáře (9) Kategorie: Tvorba webu » PHP

Takže, dnes bych vám chtěl ukázat jak na formulář,který odesílá zprávu na email v PHP… Jako první si vytvoříme nějakou stránku. Já zvolil index.html. Bude obsahovat Položky email, předmět, zabezpečení před spammery a textareu pro zprávu. Tento soubor bude muset být připojen na soubor zpracovani.php.

index.html


<html>
  <head>
    <title>PHP-Formulář na email</title>
  </head>
  <body>
    <form action="" method="">
      <input name="" size="" value="" />
      <input name="" size="" value="" />
      <input name="" size="" /> <strong>= 7 + 1</strong>
      <textarea name="" rows="" cols="">Zpráva…</textarea>
      <input type="" value="" />
    </form>
  </body>
</html>
 

Dále si tedy budeme muset vytvořit stránku zpracovani.php, ve ktere budou zapsány proměnné.

zpracovani.php


<!DOCTYPE HTML PUBLIC "W3C DTD HTML 4.01 Transiti­onal//EN">
<html>
  <head>
    <meta http-equiv="" content="" />
    <title>Zpracování zprávy</title>
  </head>
  <body>
    <h1>Odesílání emailu</h1>
 

<?
$predmet = $_POST['pred­met'];
$email = $_POST['eMail'];
$spam = $_POST['ochra­na'];
$zprava = $_POST['text'];
if ($predmet!="" and $email!="" and $zprava!="" and $spam=="8") {
  Mail("tvuj@ma­il.com", $predmet, $text, "From: " . $eMail);
  echo "<p><strong>Email byl úspěšně odeslán</strong>.</p>";
} else {
  echo "<p>Pravděpodobně jste nevyplnili všechny potřebné údaje, nebo prostě neumíte počítat…</p>";
}
?>
 

  </body>
</html>
 

Tímto je naše práce ukončena. Celé to ale vlastně spočívá v tom, že podmínkou je vyplnění údajů eMail, Předmět, Text a spravně vyplnění ochrany proti spammu (=8). Pokud není správně vyplněno email se neodešle a vypíše chybové hlášení, pokud je vše v pořádku email se odešle. Pro pochopení tohoto tutoriálu je nutná minimální znalost PHP scriptů…



Autor článku: chorche | Vytisknout článek | Odeslat e-mailem

Hodnocení: 3.6/10 (35 hlasováno)

Komentáře (9)
od: EcLiPs3 24-03-2008 09:58:18
a me rikate neco o lehkych tutorialech... navic, kde je tady nejake vysvetleni toho co co znamena? hech, tohle bych za 5 minut napsal taky %)

od: PowerPetan 24-03-2008 21:35:41
ten script nepůjde....je tam chyba, navíc nechápu logiku proč je Mail($....., $ "nový řádek"proměnná....je to dost nepřehledný + je zbytečný to odesílat na druhej osubor, stačilo by to na sebe....ke kontrole 7+1 umí každej robot....a naví c ta kontrola If(... and ..... je to nic moc 3/10

od: Mato 30-03-2008 00:19:17
V dnešní době se takovým to jednoduchým antispamem neobráníš. Lepší je JavaScriptem vypsat input hidden a zkontrolovat ještě nějakým časovým pravidlem. Jo a trošku jsem nepochopil name="" ? :lol:

od: Pajah 30-03-2008 19:43:08
Vidím, že některý z adminů smazal můj komentář a tím ještě víc dokázal svoji inteligenci a lenost. :roll: Proto jsem se rozhodl že pro tut.com psát nebudu.

od: master2222 30-03-2008 20:44:40
Tak sem kliknul na na Print a hmmmm

Fatal error: Call to undefined function geshi_highlight() in /users/zalohovane/tutorialy.com/tutorialy.com/lib/Tutorialy.class.php(697) : regexp code on line 2

od: Mato 30-03-2008 21:09:10
Hm tak si naprogramuj cele tutorialy a snaz se vsechny chyby vychytat udelej regexp string a vsechny podminky do toho udelej aby jste meli komfort a co nejlepsi interface a hlavne jednoduchost psani tutorialu....

od: Mato 30-03-2008 21:11:52
Uz to jede tak se nezlobte ale je toho fakt hodne.

od: EcLiPs3 31-03-2008 14:35:15
ja to nechapu... napsal jsem pro vas nadherny tutorial a vy sem misto nej date tenhle hnus od chorcheho...

od: Frosty 04-04-2008 22:21:51
Wau tak tenhle portál se blíží k čímdál tím do hlubin močálů... Tohle je podle vás kvalitní článek?

  Neregistrovaní uživatelé nemohou přidávat komentáře k článkům.