Jak wysłać wiadomość e-mail za pomocą funkcji PHP mail ()

Spisie treści:

Anonim

Co to jest poczta PHP?

Poczta PHP to wbudowana funkcja PHP używana do wysyłania wiadomości e-mail ze skryptów PHP.

Funkcja poczty akceptuje następujące parametry;

  • Adres e-mail
  • Przedmiot
  • Wiadomość
  • Adresy e-mail CC lub BC
    • To opłacalny sposób powiadamiania użytkowników o ważnych wydarzeniach.
    • Pozwól użytkownikom kontaktować się z Tobą za pośrednictwem poczty elektronicznej, udostępniając formularz kontaktowy w witrynie internetowej, który przesyła e-mailem podaną treść.
    • Programiści mogą go używać do otrzymywania błędów systemowych pocztą e-mail
    • Możesz go użyć do wysłania wiadomości e-mail do subskrybentów biuletynu.
    • Możesz go użyć do wysyłania linków do resetowania hasła użytkownikom, którzy zapomnieli swoich haseł
    • Możesz go użyć, aby wysłać e-mailem linki aktywacyjne / potwierdzające. Jest to przydatne podczas rejestracji użytkowników i weryfikacji ich adresów e-mail

W tym samouczku nauczysz się:

  • Dlaczego / kiedy używać poczty PHP
  • Prosty protokół transmisji poczty
  • Odkażanie danych wprowadzanych przez użytkownika w poczcie e-mail
  • Bezpieczna poczta

Dlaczego / kiedy używać poczty PHP

Wysyłanie poczty za pomocą PHP

Funkcja poczty PHP ma następującą podstawową składnię

TUTAJ,

  • „$ To_email_address” to adres e-mail odbiorcy poczty
  • „$ Subject” to temat wiadomości e-mail
  • „$ Message” to wiadomość do wysłania.
  • „[$ Headers]” jest opcjonalne, można go użyć do dołączenia takich informacji, jak DW, UDW
    • CC to akronim od kopii do wiadomości. Jest używany, gdy chcesz wysłać kopię do osoby zainteresowanej, np. E-mail reklamacyjny wysłany do firmy może być również wysłany jako CC do rady reklamacyjnej.
    • BCC to akronim oznaczający ukrytą kopię do wiadomości. Jest podobny do CC. Adresy e-mail zawarte w sekcji UDW nie będą pokazywane innym odbiorcom.

Prosty protokół transmisji poczty (SMTP)

Mailer PHP używa do wysyłania poczty Simple Mail Transmission Protocol (SMTP).

Na serwerze hostowanym ustawienia SMTP byłyby już skonfigurowane.

Ustawienia poczty SMTP można skonfigurować z pliku „php.ini” w folderze instalacyjnym PHP.

Konfigurowanie ustawień SMTP na hoście lokalnym Zakładając, że używasz xampp w systemie Windows, znajdź „php.ini” w katalogu „C: \ xampp \ php”.

  • Otwórz go za pomocą notatnika lub dowolnego edytora tekstu. W tym przykładzie użyjemy notatnika. Kliknij menu edycji

  • Kliknij menu Znajdź…

  • Pojawi się menu dialogowe wyszukiwania

  • Kliknij przycisk Znajdź następny

  • Zlokalizuj wpisy
    • [funkcja poczty]
    • ; XAMPP: Nie usuwaj półkolumny, jeśli chcesz pracować z serwerem SMTP, takim jak Mercury
    • ; SMTP = localhost
    • ; smtp_port = 25
    • Usuń średniki przed SMTP i smtp_port i ustaw SMTP na serwerze smtp, a port na port smtp. Twoje ustawienia powinny wyglądać następująco
      • SMTP = smtp.example.com
      • smtp_port = 25
      • Pamiętaj, że ustawienia SMTP można uzyskać od dostawców usług hostingowych.
      • Jeśli serwer wymaga uwierzytelnienia, dodaj następujące wiersze.
        • auth_username = Ten adres e-mail jest chroniony przed robotami spamującymi. Aby go zobaczyć, konieczne jest włączenie obsługi JavaScript.
        • auth_password = example_password
        • Zapisz nowe zmiany.
        • Zrestartuj serwer Apache.

Przykład poczty PHP

Spójrzmy teraz na przykład, który wysyła prostą wiadomość e-mail.

Wynik:

Uwaga: powyższy przykład przyjmuje tylko 4 obowiązkowe parametry.

Powyższy fikcyjny adres e-mail należy zamienić na prawdziwy adres e-mail.

Odkażanie danych wprowadzanych przez użytkownika w poczcie e-mail

W powyższym przykładzie dla uproszczenia użyto zakodowanych na stałe wartości w kodzie źródłowym dla adresu e-mail i innych szczegółów.

Załóżmy, że musisz utworzyć formularz kontaktowy, aby użytkownicy wypełnili dane, a następnie je przesłali.

  • Użytkownicy mogą przypadkowo lub celowo wstrzyknąć kod do nagłówków, co może spowodować wysłanie spamu
  • Aby chronić system przed takimi atakami, możesz utworzyć niestandardową funkcję, która oczyszcza i weryfikuje wartości przed wysłaniem wiadomości.

Stwórzmy niestandardową funkcję, która weryfikuje i oczyszcza adres e-mail za pomocą wbudowanej funkcji filter_var.

Funkcja filter_var Funkcja filter_var służy do oczyszczania i sprawdzania poprawności danych wejściowych użytkownika.

Ma następującą podstawową składnię.

TUTAJ,

  • „Filter_var (…)” to funkcja walidacji i sanityzacji
  • „$ Field” to wartość pola, które ma zostać przefiltrowane.
  • „RODZAJ SANITYZACJI” to rodzaj odkażania, który ma być przeprowadzony na polu, na przykład;
    • FILTER_VALIDATE_EMAIL - zwraca true dla prawidłowych adresów e-mail i false dla nieprawidłowych adresów e-mail.
    • FILTER_SANITIZE_EMAIL - usuwa niedozwolone znaki z adresów e-mail. info \ @domena. (com) zwraca Ten adres pocztowy jest chroniony przed spamowaniem. Aby go zobaczyć, konieczne jest włączenie obsługi JavaScript…
    • FILTER_SANITIZE_URL - usuwa niedozwolone znaki z adresów URL. http: //[email protected]é zwraca> http: //[email protected]
    • FILTER_SANITIZE_STRING - usuwa tagi z wartości ciągów. jestem pogrubiony staje się pogrubiony.

Poniższy kod implementuje użycie niestandardowej funkcji do wysyłania bezpiecznej poczty.

Wynik:

Bezpieczna poczta

Wiadomości e-mail mogą zostać przechwycone podczas transmisji przez niezamierzonych odbiorców.

Może to ujawnić zawartość wiadomości e-mail niezamierzonym odbiorcom.

Bezpieczna poczta rozwiązuje ten problem, przesyłając wiadomości e-mail za pośrednictwem protokołu Hypertext Transfer Protocol Secure (HTTPS).

HTTPS szyfruje wiadomości przed ich wysłaniem.

Podsumowanie

  • Wbudowana funkcja mail () PHP służy do wysyłania poczty ze skryptów PHP
  • Sprawdzanie poprawności i sanityzacji danych jest niezbędne do wysyłania bezpiecznej poczty
  • Wbudowana funkcja PHP filter_var () zapewnia łatwy w użyciu i skuteczny sposób oczyszczania i sprawdzania poprawności danych