How can a newsletter email be automatically sent when a user enters their email address on a website?

To automatically send a newsletter email when a user enters their email address on a website, you can use PHP to capture the email address from the form submission and then trigger the sending of the newsletter email using a library like PHPMailer. Make sure to sanitize and validate the email address input to prevent any security vulnerabilities.

<?php
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;

if($_SERVER["REQUEST_METHOD"] == "POST") {
    $email = $_POST['email'];

    // Sanitize and validate email address
    $email = filter_var($email, FILTER_SANITIZE_EMAIL);
    if(!filter_var($email, FILTER_VALIDATE_EMAIL)) {
        // Handle invalid email address
    }

    // Send newsletter email
    require 'vendor/autoload.php';

    $mail = new PHPMailer(true);

    try {
        $mail->isSMTP();
        $mail->Host = 'smtp.example.com';
        $mail->SMTPAuth = true;
        $mail->Username = 'your@example.com';
        $mail->Password = 'your_password';
        $mail->SMTPSecure = 'tls';
        $mail->Port = 587;

        $mail->setFrom('newsletter@example.com', 'Newsletter');
        $mail->addAddress($email);

        $mail->isHTML(true);
        $mail->Subject = 'Welcome to our newsletter!';
        $mail->Body = 'Thank you for subscribing to our newsletter.';

        $mail->send();
        echo 'Newsletter email sent successfully!';
    } catch (Exception $e) {
        echo 'Error sending newsletter email: ' . $mail->ErrorInfo;
    }
}
?>