Skript na odeslání formuláře emailem


Návody pro C4


Pro zákazníky hostingu Webhosting C4 je připraven skript na odeslání webového formuláře emailem. Skript zašle na určenou emailovou adresu údaje vyplněné do formuláře. Typicky se hodí pro zpracování kontaktního formuláře, objednávkového formuláře apod.

Použití skriptu

Adresa (URL) skriptu je: https://www.webhosting-c4.cz/skripty/formular.php

V následující tabulce je popis proměnných, které musí být ve formuláři nastaveny.

Název proměnné Hodnota
odesilatel Emailová adresa odesílatele emailu, např. info@nazev-vasi-domeny.cz.
prijemce Emailová adresa příjemce emailu, např. webmaster@nazev-vasi-domeny.cz.
predmet Předmět emailové zprávy, např. Zpráva z kontaktního formuláře na www.nazev-vasi-domeny.cz
ok_url URL stránky, která se zobrazí po úspěšném zpracování formuláře, např. http://www.nazev-vasi-domeny.cz/ok.html

Názvy proměnných, které reprezentují kolonky ve formuláři, jsou tvaru #04#nazev. Číslo mezi znaky # určuje pořadí proměnné, v jakém bude uvedena v emailu, který se pošle při každém odeslání formuláře.

HTML kód formuláře může vypadat takto:

<form action="https://www.webhosting-c4.cz/skripty/formular.php" method="post">
<p>
<input type="hidden" name="odesilatel" value="info@nazev-vasi-domeny.cz" />
<input type="hidden" name="prijemce" value="webmaster@nazev-vasi-domeny.cz" />
<input type="hidden" name="predmet" value="Zpráva z kontaktního formuláře na www.nazev-vasi-domeny.cz" />
<input type="hidden" name="ok_url" value="http://www.nazev-vasi-domeny.cz/ok.html" />

Jméno: <input type="text" name="#01#Jméno" value="" /><br />
Email: <input type="text" name="#02#Email" value="" /><br />
Zpráva:<br /><textarea name="#03#Zpráva" rows="5" cols="20"></textarea><br />
<input type="submit" value="Odeslat" />
</p>
</form>

Stránka, jejíž URL je uvedeno v proměnné ok_url, se zobrazí po úspěšném zpracování formuláře, takže může obsahovat např. text tvaru:

Formulář byl úspěšně zpracován. Děkujeme za zprávu.

Skript funguje i v případě, že proměnné reprezentující kolonky ve formuláři nebudou tvaru #04#nazev, ale budou tvaru nazev (tj. bez určení pořadí). V takovém případě se pořadí proměnných v emailu určí náhodně (skript totiž nemůže poznat v jakém pořadí jsou kolonky uvedeny ve formuláři - není to technicky možné).

Kontrola údajů před odesláním

V typickém formuláři jsou některé kolonky povinné. Kontrolu takových kolonek je možné provést pomocí JavaScriptu. HTML kód formuláře, který bude kontrolovat kolonky Email a Zpráva, může vypadat takto (přidané úseky kódu jsou zvýrazněny):

<script type="text/javascript">
function kontrola_formulare()
{
  if(document.getElementById("email").value.length==0) {
    alert("Zadejte email, je to povinný údaj.");
    document.getElementById("email").focus();
    return false;
  }
  if(document.getElementById("zprava").value.length==0) {
    alert("Zadejte zprávu, je to povinný údaj.");
    document.getElementById("zprava").focus();
    return false;
  }
  return true;
}
</script>
<form onsubmit="return kontrola_formulare()" action="https://www.webhosting-c4.cz/skripty/formular.php" method="post">
<p>
<input type="hidden" name="odesilatel" value="info@nazev-vasi-domeny.cz" />
<input type="hidden" name="prijemce" value="webmaster@nazev-vasi-domeny.cz" />
<input type="hidden" name="predmet" value="Zpráva z kontaktního formuláře na www.nazev-vasi-domeny.cz" />
<input type="hidden" name="ok_url" value="http://www.nazev-vasi-domeny.cz/ok.html" />

Jméno: <input type="text" name="#01#Jméno" value="" /><br />
Email: <input type="text" id="email" name="#02#Email" value="" /><br />
Zpráva:<br /><textarea id="zprava" name="#03#Zpráva" rows="5" cols="20"></textarea><br />
<input type="submit" value="Odeslat" />
</p>
</form>

Pomocí JavaScriptu lze provádět i složitější kontroly, např. jestli kolonka Email obsahuje korektní emailovou adresu, zda telefonní číslo obsahuje číslice apod.

Diskuzní fórum pro článek Skript na odeslání formuláře emailem

Nové diskuzní téma můžete založit v sekci Ostatní.

Témata Reakce Poslední příspěvek
Emailový formulář - rozhozená čeština 11 23.01.2017 15:25
Pořadí odpovědí z formuláře 4 09.07.2014 14:22
Email PHP script - Více příjemců 2 02.08.2012 17:18
Formulář - Jak přidat kolonky pro otázky 15 13.06.2011 14:08
Skript na odeslání formuláře emailem nepošle všechny položky 2 13.01.2011 21:57
Skript na odeslání formuláře emailem - adresát z nabídky 1 14.03.2010 16:59
Email formulář - přenastavení odesílatele 2 28.09.2009 21:16

Změny a kontroly

K dispozici je kompletní přehled všech změn a kontrol v tomto návodu.


Diskuzní fórum
  • Webové aplikace
  • Tvorba web stránek
  • PHP, MySQL

forum.c4.cz