Formulář zpětné vazby je povinným atributem každé stránky vytvořené k řešení vážných problémů. Jedním z nejjednodušších způsobů, jak uspořádat e-mail od návštěvníka webu k jeho vlastníkovi, je použít příkaz PHP mail. Níže je uveden podrobný návod, jak to provést.
Je to nutné
Základní znalost jazyků PHP a HTML
Instrukce
Krok 1
Krok 1: vytvořte nový dokument php.
V libovolném textovém editoru (například ve standardním Poznámkovém bloku) vytvořte nový dokument. Okamžitě do něj zadejte rámeček html kódu stránky, který doplníte při vytváření mechanismu pro odesílání e-mailových zpráv:
Odesílání e-mailové zprávy
Krok 2
Krok 2: Přidejte do dokumentu html formulář.
Nyní musíte přidat mezi značky html a pokyny pro prohlížeč, aby se návštěvníkovi zobrazil formulář pro zadání dat a jeho odeslání na server. Nejprve otevírací značka formuláře:
Atribut metody určuje, jak má prohlížeč odesílat informace na server.
Zde musíte vložit instrukci do php - zobrazí zprávu pro návštěvníka poté, co odešle data na server a jsou zpracována skriptem:
Další řádek vytvoří pole, do kterého musí návštěvník zadat své jméno:
Tvé jméno:
Zde atribut type určuje typ tohoto prvku formuláře - jednoduché textové pole. Atribut name je název proměnné, ve které bude zadané v tomto poli přeneseno na server - name. Štítek
- "návrat vozíku".
Dále musíte návštěvníkovi dát příležitost uvést jeho e-mailovou adresu, aby ho mohl kontaktovat:
E-mailem:
Všechno zde je podobné předchozímu řádku. Název proměnné, ve které bude e-mailová adresa návštěvníka odeslána na server, je e-mail.
Nyní musíme pro přidání textu zprávy přidat vícestránkové textové pole (tag textarea):
Zpráva:
Atributy řádky a sloupce určují velikost tohoto pole - řádky určují počet řádků a sloupce určují počet znaků v každém řádku. Zadaný text bude odeslán v proměnné s názvem nepořádek.
Po všech polích přidejte tlačítko pro odeslání zprávy:
Atribut hodnoty této značky obsahuje text štítku na tlačítku („Odeslat“).
Aby php skript fungoval, bude zapotřebí ještě jedna proměnná, která musí být odeslána spolu s daty z formuláře. Umístěte jej do prvku formuláře skrytého před návštěvníkem:
Název této proměnné je „act“a předaná hodnota je „send“.
Zbývá už jen přidat značku závěrečného formuláře:
Krok 3
Krok 3: Přidejte php kód pro zpracování dat z formuláře.
Stisknutím tlačítka označeného „Odeslat“odešle návštěvník jím zadané informace. Protože ve značce formuláře není žádný atribut akce, který musí označovat internetovou adresu skriptu k odeslání dat, budou odeslány na adresu stejné stránky. Proto musíte do kódu HTML této stránky přidat pokyny php, abyste mohli přijímat, ověřovat a odesílat data z formuláře na vaši e-mailovou adresu.
Měly by začínat úvodní značkou php:
<? php
Na dalším řádku zadejte proměnnou, která bude obsahovat zprávu pro návštěvníka. Když je prázdný:
$ msg = ;
Nyní by měl skript zkontrolovat, zda byla data odeslána z formuláře. Server, který přijímá data odeslaná metodou POST, ji umístí do superglobálního pole s názvem $ _POST. Skript tedy musí zkontrolovat, zda jsou v tomto poli nějaké informace z formuláře. Možná návštěvník nevyplnil žádné z polí, ale skrytá proměnná musí být stále přítomna - zkontrolujeme její přítomnost:
if ($ _ POST ['act'] == "odeslat") {
Pokud taková proměnná existuje, provede se další blok instrukcí skriptu. Pro větší pohodlí na začátku tohoto bloku umístěte proměnné, které můžete později upravit:
$ email_length = 500;
Toto je maximální počet znaků povolený ve zprávě návštěvníka.
$ email_html = false;
Pokud uživatel do zprávy zadá html tagy, skript je ořízne. Pokud by měly být ponechány, nahraďte falešnou hodnotu této proměnné hodnotou true.
$ email_recepient = "[email protected]";
Toto je vaše e-mailová adresa, na kterou by skript měl posílat zprávy od návštěvníků.
$ email_subject = "Zpráva od návštěvníka webu";
Proměnná obsahuje text, který bude uveden v předmětu e-mailu, který vám byl zaslán.
$ email_regex = "/ ^ (([^ () .,;: / s @ "] + (. [^ () .,;: / s @ ") +) *) | (". + ")) @ (([0-9] {1, 3}. [0-9] {1, 3}. [0-9] {1, 3}. [0-9] {1, 3}]) | (([a-zA-Z / -0-9] + \.) + [A-zA-Z] {2,})) $ / ";
Tato proměnná by se neměla měnit - obsahuje vzor regulárního výrazu používaný skriptem k ověření formátu e-mailové adresy zadané návštěvníkem do pole e-mailu. Následující řádek bude obsahovat tuto kontrolu:
if ((! $ _ POST ['email']) || (! preg_match ($ email_regex, $ _POST ['email']))) $ msg. = "Byla zadána neplatná e-mailová adresa.";
Pokud návštěvník jasně uvedl nesprávnou adresu, aby ho mohl kontaktovat, skript o tom zobrazí zprávu. Všechny tyto zprávy jsou shrnuty v proměnné $ msg až do konce skriptu.
Nyní kontrolujeme přítomnost samotného textu zprávy:
if (! $ _ POST ['mess']) $ msg. = "Žádný text zprávy";
Pokud návštěvník nechal textové pole prázdné, bude o tom přidána zpráva do proměnné $ msg.
Pokud jste v proměnné $ email_html zadali odstranění značek html z textu zprávy, provede to skript v následujících dvou řádcích:
$ userMess = $ _POST ['mess'];
if (! $ email_html) $ userMess = strip_tags ($ userMess);
A na konci všech kontrol - kontrola délky zprávy:
if (strlen ($ userMess)> $ email_length) $ msg. = "Text zprávy je delší než povolená délka ($ email_length znaků).
n ;
Pokud alespoň jedna z kontrol selhala, proměnná $ msg již není prázdná. Poté musíte vyplnit všechny chybové zprávy v něm zaznamenané - přidat text „Chyba“a nastavit odstín červené:
if ($ msg) $ msg = "Chyba: $ msg";
A pokud jsou kontroly předány, připravte data pro odeslání na vaši adresu:
else {
$ userMess = "Jméno:". $ _ POST ['name']."
n ---
n ". $ userMess."
n
n ---
n ;
$ headers = "Content-Type: text / html; charset = windows-1251 / n";
$ headers. = "Od: / nX-Mailer: siteMailer";
Další řádek spustí poštovní server vašeho serveru a odešle připravenou zprávu:
mail ($ email_recepient, $ email_subject, $ userMess, $ headers);
Nyní zbývá pro návštěvníka napsat zprávu, že jeho zpráva byla odeslána:
$ msg = Vaše zpráva byla odeslána. Děkujeme!
n ;
}
}
?>
Krok 4
Krok 4: Hostujte stránku na serveru.
Uložte vytvořenou stránku php s požadovaným názvem a příponou php a nahrajte ji na server na svůj web.
Toto je samozřejmě „nahá“stránka, musíte ji navrhnout stejným způsobem jako ostatní stránky na vašem webu. Nebo vezměte prvky této stránky a přidejte je na existující stránku na webu.