Co je to pošta PHP?
Pošta PHP je integrovaná funkce PHP, která se používá k odesílání e-mailů ze skriptů PHP.
Funkce pošty přijímá následující parametry;
- Emailová adresa
- Předmět
- Zpráva
- E-mailové adresy CC nebo BC
- Je to nákladově efektivní způsob upozorňování uživatelů na důležité události.
- Umožněte uživatelům kontaktovat vás e-mailem poskytnutím kontaktního formuláře na webu, který zasílá e-mailem poskytnutý obsah.
- Vývojáři jej mohou použít k přijímání systémových chyb e-mailem
- Můžete jej použít k zaslání e-mailu odběratelům zpravodaje.
- Můžete jej použít k odeslání odkazů na resetování hesla uživatelům, kteří zapomenou svá hesla
- Můžete jej použít k odeslání aktivačních / potvrzovacích odkazů e-mailem. To je užitečné při registraci uživatelů a ověřování jejich e-mailových adres
V tomto výukovém programu se naučíte
- Proč / kdy používat poštu PHP
- Jednoduchý protokol pro přenos pošty
- Sanitace e-mailových vstupů uživatelů
- Zabezpečená pošta
Proč / kdy používat poštu PHP
Odesílání pošty pomocí PHP
Funkce pošty PHP má následující základní syntaxi
TADY,
- „$ To_email_address“ je e-mailová adresa příjemce pošty
- „$ Subject“ je předmět e-mailu
- „$ Message“ je zpráva, která má být odeslána.
- „[$ Headers]“ je volitelné, lze jej použít k zahrnutí informací jako CC, BCC
- CC je zkratka pro kopii. Používá se, když chcete zaslat kopii zainteresované osobě, tj. E-mail se stížností zaslaný společnosti lze také zaslat jako CC na stížnost.
- BCC je zkratka pro slepou kopii. Je to podobné jako u CC. E-mailové adresy obsažené v sekci BCC se ostatním příjemcům nezobrazí.
Protokol jednoduchého přenosu pošty (SMTP)
Poštovní server PHP používá k odesílání pošty protokol SMTP (Simple Mail Transmission Protocol).
Na hostovaném serveru by nastavení SMTP již bylo nastaveno.
Nastavení pošty SMTP lze konfigurovat ze souboru „php.ini“ v instalační složce PHP.
Konfigurace nastavení SMTP na vašem localhost Za předpokladu, že používáte xampp v systému Windows, vyhledejte „php.ini“ v adresáři „C: \ xampp \ php“.
- Otevřete jej pomocí poznámkového bloku nebo libovolného textového editoru. V tomto příkladu použijeme poznámkový blok. Klikněte na nabídku úprav
- Klikněte na nabídku Najít…
- Objeví se dialogové okno hledání
- Klikněte na tlačítko Najít další
- Vyhledejte položky
- [funkce pošty]
- ; XAMPP: Neodstraňujte sloupec, pokud chcete pracovat se serverem SMTP, jako je Mercury
- ; SMTP = localhost
- ; smtp_port = 25
- Odeberte středníky před SMTP a smtp_port a nastavte SMTP na váš smtp server a port na váš smtp port. Vaše nastavení by mělo vypadat následovně
- SMTP = smtp.example.com
- smtp_port = 25
- Nastavení SMTP lze získat od poskytovatelů webhostingu.
- Pokud server vyžaduje ověření, přidejte následující řádky.
- auth_username = Tato e-mailová adresa je chráněna před spamboty. Abyste ji mohli zobrazit, musíte mít povolený JavaScript.
- auth_password = příklad_heslo
- Uložte nové změny.
- Restartujte server Apache.
Příklad php pošty
Podívejme se nyní na příklad, který posílá jednoduchou poštu.
Výstup:
Poznámka: výše uvedený příklad přebírá pouze 4 povinné parametry.
Výše uvedenou fiktivní e-mailovou adresu byste měli nahradit skutečnou e-mailovou adresou.
Sanitace e-mailových vstupů uživatelů
Výše uvedený příklad používá ve zdrojovém kódu pevně zakódované hodnoty pro e-mailovou adresu a další podrobnosti pro zjednodušení.
Předpokládejme, že musíte vytvořit kontaktní formulář pro uživatele, vyplnit podrobnosti a poté odeslat.
- Uživatelé mohou omylem nebo úmyslně vložit kód do záhlaví, což může vést k odesílání nevyžádané pošty
- Chcete-li chránit svůj systém před takovými útoky, můžete vytvořit vlastní funkci, která před odesláním pošty dezinfikuje a ověří hodnoty.
Vytvořme si vlastní funkci, která ověří a dezinfikuje e-mailovou adresu pomocí zabudované funkce filter_var.
Funkce Filter_var Funkce filter_var se používá k sanitaci a ověření vstupních dat uživatele.
Má následující základní syntaxi.
TADY,
- „Filter_var (…)“ je funkce ověřování a dezinfekce
- „$ Pole“ je hodnota pole, které má být filtrováno.
- „TYP SANITIZACE“ je typ sanitace, která se má provádět na poli, například;
- FILTER_VALIDATE_EMAIL - vrací true pro platné e-mailové adresy a false pro neplatné e-mailové adresy.
- FILTER_SANITIZE_EMAIL - odstraní nepovolené znaky z e-mailových adres. info \ @domain. (com) vrátí Tato e-mailová adresa je chráněna před spamboty. Abyste ji mohli zobrazit, musíte mít povolený JavaScript ...
- FILTER_SANITIZE_URL - odstraní nepovolené znaky z adres URL. vrací http: //[email protected]é> http: //[email protected]
- FILTER_SANITIZE_STRING - odstraní značky z hodnot řetězce. Z možnosti jsem tučně se stane tučně.
Následující kód implementuje používá vlastní funkci k odesílání zabezpečené pošty.
Výstup:
Zabezpečená pošta
E-maily mohou být během přenosu zachyceny nechtěnými příjemci.
To může vystavit obsah e-mailu nechtěným příjemcům.
Zabezpečená pošta tento problém řeší přenosem e-mailů pomocí protokolu Hypertext Transfer Protocol Secure (HTTPS).
HTTPS šifruje zprávy před jejich odesláním.
souhrn
- Funkce PHP () zabudovaná do funkce mail () se používá k odesílání pošty ze skriptů PHP
- Ověřovací a dezinfekční kontroly údajů jsou pro odesílání zabezpečené pošty zásadní
- Funkce PHP zabudovaná do filtru () poskytuje snadno použitelný a efektivní způsob provádění sanitace a validace dat