Heim > Datenbank > MySQL-Tutorial > PHP-Entwicklungspraxis: Verwenden Sie PHPMailer, um E-Mails an Administratoren in der MySQL-Datenbank zu senden

PHP-Entwicklungspraxis: Verwenden Sie PHPMailer, um E-Mails an Administratoren in der MySQL-Datenbank zu senden

王林
Freigeben: 2023-07-01 15:16:40
Original
720 Leute haben es durchsucht

PHP-Entwicklungspraxis: Verwenden Sie PHPMailer, um E-Mails an Administratoren in der MySQL-Datenbank zu senden

Während der Entwicklung von Webanwendungen ist der E-Mail-Versand eine häufige Anforderung. Wenn ein Benutzer einen Vorgang abschließt oder das System ein Ereignis generiert, müssen wir häufig den entsprechenden Administrator per E-Mail benachrichtigen. In diesem Artikel wird erläutert, wie Sie die PHPMailer-Bibliothek zum Senden von E-Mails und zum Speichern des E-Mail-Inhalts in einer MySQL-Datenbank verwenden.

1. Installieren Sie die PHPMailer-Bibliothek

  1. Installieren Sie die PHPMailer-Bibliothek im Projekt, und Sie können Abhängigkeiten über Composer verwalten. Führen Sie zur Installation den folgenden Befehl in der Befehlszeile aus:

    composer require phpmailer/phpmailer
    Nach dem Login kopieren
  2. Fügen Sie die PHPMailer-Bibliothek in die Eintragsdatei des Projekts ein:

    require 'vendor/autoload.php';
    Nach dem Login kopieren

2. Erstellen Sie eine Datenbanktabelle.
Erstellen Sie eine Tabelle mit dem Namen „emails“ in MySQL Datenbank. Wird zum Speichern von E-Mail-bezogenen Informationen verwendet. Die Tabellenstruktur ist wie folgt:

CREATE TABLE `emails` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `to_email` varchar(255) NOT NULL,
  `subject` varchar(255) NOT NULL,
  `message` text NOT NULL,
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`)
);
Nach dem Login kopieren

3. Senden Sie E-Mails und speichern Sie sie in der Datenbank

  1. Erstellen Sie eine Funktion zum Senden von E-Mails:

    function sendEmail($to, $subject, $message) {
     $mail = new PHPMailerPHPMailerPHPMailer();
     // 邮件服务器配置
     $mail->isSMTP();
     $mail->Host = 'smtp.example.com';
     $mail->Username = 'your_email@example.com';
     $mail->Password = 'your_email_password';
     $mail->SMTPAuth = true;
     $mail->SMTPSecure = 'tls';
     $mail->Port = 587;
    
     // 邮件内容设置
     $mail->setFrom('from@example.com', 'Your Name');
     $mail->addAddress($to);
     $mail->Subject = $subject;
     $mail->Body = $message;
    
     // 发送邮件
     if ($mail->send()) {
         // 邮件发送成功,保存到数据库
         $mysqli = new mysqli('localhost', 'username', 'password', 'database');
         $stmt = $mysqli->prepare("INSERT INTO `emails` (`to_email`, `subject`, `message`) VALUES (?, ?, ?)");
         $stmt->bind_param('sss', $to, $subject, $message);
         $stmt->execute();
         $stmt->close();
         $mysqli->close();
         
         return true;
     } else {
         // 邮件发送失败
         return false;
     }
    }
    Nach dem Login kopieren
  2. Rufen Sie die Funktion zum Senden von E-Mails auf und übergeben Sie den Empfänger, den Betreff der E-Mail und Inhalt:

    $to = 'admin@example.com';
    $subject = '有新的通知';
    $message = '您有一个新的通知,请登录后台查看。';
    
    if (sendEmail($to, $subject, $message)) {
     echo '邮件发送成功并保存到数据库。';
    } else {
     echo '邮件发送失败。';
    }
    Nach dem Login kopieren

Mit dem obigen Codebeispiel können wir die sendEmail-Funktion aufrufen, mit der wir E-Mails senden und in der Datenbank speichern müssen, damit wir E-Mails über PHPMailer senden und die E-Mail-Informationen in der MySQL-Datenbank speichern können.

Zusammenfassung:
Dieser Artikel stellt die Entwicklungspraxis der Verwendung der PHPMailer-Bibliothek zum Senden von E-Mails und zum Speichern des E-Mail-Inhalts in der MySQL-Datenbank vor. Durch die Kapselung der Funktion zum Senden und Speichern von E-Mails in der Datenbank können wir E-Mail-Benachrichtigungsfunktionen in Webanwendungen flexibler anwenden. Gleichzeitig können mit PHPMailer auch komplexere E-Mail-Versandanforderungen erfüllt werden. Ich hoffe, dass dieser Artikel eine Referenz für die Praxis von PHP-Entwicklern beim Versenden von E-Mails sein kann.

Das obige ist der detaillierte Inhalt vonPHP-Entwicklungspraxis: Verwenden Sie PHPMailer, um E-Mails an Administratoren in der MySQL-Datenbank zu senden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage