So senden Sie E-Mails mit der Funktion PHP mail ()

Inhaltsverzeichnis:

Anonim

Was ist PHP-Mail?

PHP-Mail ist die integrierte PHP-Funktion, mit der E-Mails von PHP-Skripten gesendet werden.

Die Mail-Funktion akzeptiert die folgenden Parameter.

  • E-Mail-Addresse
  • Gegenstand
  • Botschaft
  • CC- oder BC-E-Mail-Adressen
    • Dies ist eine kostengünstige Möglichkeit, Benutzer über wichtige Ereignisse zu informieren.
    • Lassen Sie Benutzer Sie per E-Mail kontaktieren, indem Sie auf der Website ein Kontaktformular bereitstellen, in dem der bereitgestellte Inhalt per E-Mail gesendet wird.
    • Entwickler können damit Systemfehler per E-Mail empfangen
    • Sie können es verwenden, um Ihren Newsletter-Abonnenten eine E-Mail zu senden.
    • Sie können damit Links zum Zurücksetzen von Passwörtern an Benutzer senden, die ihre Passwörter vergessen haben
    • Sie können es verwenden, um Aktivierungs- / Bestätigungslinks per E-Mail zu senden. Dies ist nützlich, wenn Sie Benutzer registrieren und ihre E-Mail-Adressen überprüfen

In diesem Tutorial lernen Sie:

  • Warum / Wann soll die PHP-Mail verwendet werden?
  • Einfaches Mail-Übertragungsprotokoll
  • Bereinigen von E-Mail-Benutzereingaben
  • Sichere Mail

Warum / Wann soll das Mail-PHP verwendet werden?

Senden von E-Mails mit PHP

Die PHP-Mail-Funktion hat die folgende grundlegende Syntax

HIER,

  • "$ To_email_address" ist die E-Mail-Adresse des E-Mail-Empfängers
  • "$ Subject" ist der Betreff der E-Mail
  • "$ Message" ist die zu sendende Nachricht.
  • "[$ Headers]" ist optional und kann verwendet werden, um Informationen wie CC, BCC einzuschließen
    • CC ist die Abkürzung für Carbon Copy. Es wird verwendet, wenn Sie eine Kopie an eine interessierte Person senden möchten, dh eine an ein Unternehmen gesendete Beschwerde-E-Mail kann auch als CC an die Beschwerdekammer gesendet werden.
    • BCC ist die Abkürzung für Blind Carbon Copy. Es ist ähnlich wie CC. Die im BCC-Bereich enthaltenen E-Mail-Adressen werden den anderen Empfängern nicht angezeigt.

SMTP (Simple Mail Transmission Protocol)

PHP Mailer verwendet SMTP (Simple Mail Transmission Protocol) zum Senden von E-Mails.

Auf einem gehosteten Server wären die SMTP-Einstellungen bereits festgelegt worden.

Die SMTP-Mail-Einstellungen können über die Datei "php.ini" im PHP-Installationsordner konfiguriert werden.

Konfigurieren der SMTP-Einstellungen auf Ihrem lokalen Host Angenommen, Sie verwenden xampp unter Windows, suchen Sie die "php.ini" im Verzeichnis "C: \ xampp \ php".

  • Öffnen Sie es mit dem Editor oder einem beliebigen Texteditor. In diesem Beispiel wird der Notizblock verwendet. Klicken Sie auf das Bearbeitungsmenü

  • Klicken Sie auf das Menü Suchen…

  • Das Suchdialogmenü wird angezeigt

  • Klicken Sie auf die Schaltfläche Weiter suchen

  • Suchen Sie die Einträge
    • [Mail-Funktion]
    • ;; XAMPP: Entfernen Sie die Semi-Spalte nicht, wenn Sie mit einem SMTP-Server wie Mercury arbeiten möchten
    • ;; SMTP = localhost
    • ;; smtp_port = 25
    • Entfernen Sie die Semikolons vor SMTP und smtp_port und setzen Sie SMTP auf Ihren SMTP-Server und den Port auf Ihren SMTP-Port. Ihre Einstellungen sollten wie folgt aussehen
      • SMTP = smtp.example.com
      • smtp_port = 25
      • Beachten Sie, dass die SMTP-Einstellungen von Ihren Webhosting-Anbietern abgerufen werden können.
      • Wenn der Server eine Authentifizierung erfordert, fügen Sie die folgenden Zeilen hinzu.
        • auth_username = Diese E-Mail-Adresse ist vor Spambots geschützt! JavaScript muss aktiviert werden, damit sie angezeigt werden kann.
        • auth_password = example_password
        • Speichern Sie die neuen Änderungen.
        • Starten Sie den Apache-Server neu.

PHP Mail Beispiel

Schauen wir uns nun ein Beispiel an, das eine einfache Mail sendet.

Ausgabe:

Hinweis: Im obigen Beispiel werden nur die 4 obligatorischen Parameter verwendet.

Sie sollten die oben genannte fiktive E-Mail-Adresse durch eine echte E-Mail-Adresse ersetzen.

Bereinigen von E-Mail-Benutzereingaben

Im obigen Beispiel werden der Einfachheit halber fest codierte Werte im Quellcode für die E-Mail-Adresse und andere Details verwendet.

Nehmen wir an, Sie müssen ein Kontaktformular erstellen, damit Benutzer die Details eingeben und dann senden können.

  • Benutzer können versehentlich oder absichtlich Code in die Header einfügen, was zum Senden von Spam-Mails führen kann
  • Um Ihr System vor solchen Angriffen zu schützen, können Sie eine benutzerdefinierte Funktion erstellen, die die Werte bereinigt und überprüft, bevor die E-Mail gesendet wird.

Erstellen wir eine benutzerdefinierte Funktion, die die E-Mail-Adresse mithilfe der integrierten Funktion filter_var überprüft und bereinigt.

Filter_var-Funktion Mit der Filter_var-Funktion werden die Benutzereingabedaten bereinigt und validiert.

Es hat die folgende grundlegende Syntax.

HIER,

  • "Filter_var (…)" ist die Validierungs- und Desinfektionsfunktion
  • "$ Field" ist der Wert des zu filternden Feldes.
  • "SANITISIERUNGSART" ist die Art der Desinfektion, die auf dem Feld durchgeführt werden soll, wie z.
    • FILTER_VALIDATE_EMAIL - Gibt für gültige E-Mail-Adressen true und für ungültige E-Mail-Adressen false zurück.
    • FILTER_SANITIZE_EMAIL - Entfernt unzulässige Zeichen aus E-Mail-Adressen. info \ @domain. (com) gibt zurück Diese E-Mail-Adresse ist vor Spambots geschützt! JavaScript muss aktiviert werden, damit sie angezeigt werden kann.
    • FILTER_SANITIZE_URL - Entfernt unzulässige Zeichen aus URLs. http: //[email protected]é kehrt zurück> http: //[email protected]
    • FILTER_SANITIZE_STRING - Entfernt Tags aus Zeichenfolgenwerten. bin fett wird fett.

Der folgende Code implementiert eine benutzerdefinierte Funktion zum Senden sicherer E-Mails.

Ausgabe:

Sichere Mail

E-Mails können während der Übertragung von unbeabsichtigten Empfängern abgefangen werden.

Dies kann den Inhalt der E-Mail unbeabsichtigten Empfängern zugänglich machen.

Sichere E-Mails lösen dieses Problem, indem E-Mails über Hypertext Transfer Protocol Secure (HTTPS) übertragen werden.

HTTPS verschlüsselt Nachrichten vor dem Senden.

Zusammenfassung

  • Die in PHP integrierte Funktion mail () wird zum Senden von E-Mails aus PHP-Skripten verwendet
  • Validierungs- und Desinfektionsprüfungen der Daten sind für das Versenden sicherer E-Mails unerlässlich
  • Die in PHP integrierte Funktion filter_var () bietet eine benutzerfreundliche und effiziente Möglichkeit zur Datenbereinigung und -validierung