Ich verwende PHP auf einer Website und möchte eine E-Mail-Funktionalität hinzufügen.
Ich habe WampServer installiert.
Wie kann ich eine E-Mail mit PHP versenden?
Ich verwende PHP auf einer Website und möchte eine E-Mail-Funktionalität hinzufügen.
Ich habe WampServer installiert.
Wie kann ich eine E-Mail mit PHP versenden?
Für zukünftige Leser: Versuchen Sie dies, wenn andere Antworten nicht funktionieren (wie es bei mir der Fall war):
1.) Herunterladen PHPMailer öffnen Sie die Zip-Datei und entpacken Sie den Ordner in Ihr Projektverzeichnis.
3.) Benennen Sie das extrahierte Verzeichnis um in PHPMailer und schreiben Sie den folgenden Code in Ihr php-Skript (das Skript muss außerhalb der PHPMailer Ordner)
<?php
// PHPMailer classes into the global namespace
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
// Base files
require 'PHPMailer/src/Exception.php';
require 'PHPMailer/src/PHPMailer.php';
require 'PHPMailer/src/SMTP.php';
// create object of PHPMailer class with boolean parameter which sets/unsets exception.
$mail = new PHPMailer(true);
try {
$mail->isSMTP(); // using SMTP protocol
$mail->Host = 'smtp.gmail.com'; // SMTP host as gmail
$mail->SMTPAuth = true; // enable smtp authentication
$mail->Username = 'sender@gmail.com'; // sender gmail host
$mail->Password = 'password'; // sender gmail host password
$mail->SMTPSecure = 'tls'; // for encrypted connection
$mail->Port = 587; // port for SMTP
$mail->setFrom('sender@gmail.com', "Sender"); // sender's email and name
$mail->addAddress('receiver@gmail.com', "Receiver"); // receiver's email and name
$mail->Subject = 'Test subject';
$mail->Body = 'Test body';
$mail->send();
echo 'Message has been sent';
} catch (Exception $e) { // handle error.
echo 'Message could not be sent. Mailer Error: ', $mail->ErrorInfo;
}
?>
Die Hauptmethode zum Versenden von E-Mails aus PHP ist die Verwendung der eingebauten mail()
Funktion, aber es gibt eine Reihe gebrauchsfertiger SDKs, die die Integration erleichtern können:
P.S.: Ich bin bei Pepipost beschäftigt.
Dies ist eine sehr einfache Methode, um eine einfache Text-E-Mail mit der Mail-Funktion zu versenden.
<?php
$to = 'SomeOtherEmailAddress@Domain.com';
$subject = 'This is subject';
$message = 'This is body of email';
$from = "From: FirstName LastName <SomeEmailAddress@Domain.com>";
mail($to,$subject,$message,$from);
Die native PHP-Funktion mail()
funktioniert bei mir nicht. Es wird die Meldung ausgegeben:
503 Dieser Mailserver erfordert eine Authentifizierung, wenn Sie versuchen, zu senden an eine nicht-lokale E-Mail-Adresse
Daher verwende ich normalerweise PHPMailer
Paket
Ich habe die Version 5.2.23 von heruntergeladen: GitHub .
Ich habe gerade 2 Dateien ausgewählt und sie in meinen PHP-Quellcode Root eingefügt
class.phpmailer.php
class.smtp.php
In PHP muss die Datei hinzugefügt werden
require_once('class.smtp.php');
require_once('class.phpmailer.php');
Danach ist es nur noch Code:
require_once('class.smtp.php');
require_once('class.phpmailer.php');
...
//----------------------------------------------
// Send an e-mail. Returns true if successful
//
// $to - destination
// $nameto - destination name
// $subject - e-mail subject
// $message - HTML e-mail body
// altmess - text alternative for HTML.
//----------------------------------------------
function sendmail($to,$nameto,$subject,$message,$altmess) {
$from = "yourcontact@yourdomain.com";
$namefrom = "yourname";
$mail = new PHPMailer();
$mail->CharSet = 'UTF-8';
$mail->isSMTP(); // by SMTP
$mail->SMTPAuth = true; // user and password
$mail->Host = "localhost";
$mail->Port = 25;
$mail->Username = $from;
$mail->Password = "yourpassword";
$mail->SMTPSecure = ""; // options: 'ssl', 'tls' , ''
$mail->setFrom($from,$namefrom); // From (origin)
$mail->addCC($from,$namefrom); // There is also addBCC
$mail->Subject = $subject;
$mail->AltBody = $altmess;
$mail->Body = $message;
$mail->isHTML(); // Set HTML type
//$mail->addAttachment("attachment");
$mail->addAddress($to, $nameto);
return $mail->send();
}
Es funktioniert wie ein Zauber
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.