-->

Cách sử dụng PHPMailer để gửi email, đơn giản, ai cũng làm được

tháng 7 28, 2021

Cách sử dụng PHPMailer để gửi email, đơn giản, ai cũng làm được 



Php Mailer là một thư viện giúp chúng ta có thể gửi email đến người dùng trên website một cách dễ dàng, tỉ lệ thành công cao. Nếu bạn đang muốn gửi mail khi người dùng đăng ký tài khoản, kích hoạt tài khoản, xác nhận đơn hàng, liên hệ thì đây là một công cụ rất tuyệt vời, tôi sẽ gửi đến bạn ngay bây giờ....

Trên thực tế trong Php có hàm mail() để gửi mail tuy nhiên nó thường bị bị chặn bởi các đơn vị cung cấp server vì email được gửi đi thường vào hòm spam và không mang lại kết quả như mong muốn.

Bước 1: Dowload thư viện PHPMailer

Các bạn có thể vào link này để dowload nhé: https://github.com/PHPMailer/PHPMailer

Sau khi tải xong, các bạn tiến hành giải nén ra sẽ được folder PHPMailer-master

Di chuyển folder PHPMailer-master vào folder website của bạn

Bước 2: Code form gửi mail

<form method="POST" action="">
        <div class="form-group">
            <label>Tên của bạn:</label>
            <input type="text" name="name" required="required" />
        </div>
        <div class="form-group">
            <label>Gửi đến gmail:</label>
            <input type="email" name="email" required="required" />
        </div>
        <div class="form-group">
            <label>Tên Email</label>
            <input type="text" name="subject" required="required" />
        </div>
        <div class="form-group">
            <label>Nội dung email</label>
            <textarea name="message" id="" cols="30" rows="10"></textarea>
        </div>
        <button name="send"> Send</button>
    </form>

Code php: 

<?php
    //nhúng thư viện vào để dùng
    require "PHPMailer-master/src/PHPMailer.php";
    require "PHPMailer-master/src/SMTP.php";
    require 'PHPMailer-master/src/Exception.php';

    if ($_SERVER['REQUEST_METHOD'] == "POST") {
        $name = $_POST['name']; // lấy ra tên của bạn
        $email = $_POST['email']; // Email cần gửi đến
        $subject = $_POST['subject']; // Tiêu đề email
        $message = $_POST['message']; // Nội dung email
        $mail = new PHPMailer\PHPMailer\PHPMailer(true);  //true: cho phép các trường hợp ngoại lệ

        // TRY có thể nó sẽ xảy ra ngoại lệ
        try {
            //Server settings
            $mail->isSMTP(); // gửi mail SMTP
            $mail->CharSet  = "utf-8";
            $mail->Host = 'smtp.gmail.com';  // khai báo SMTP servers
            $mail->SMTPAuth = true; // Enable authentication
            $nguoigui = 'hellook332@gmail.com'; // Tài khoản Email
            $matkhau = 'thanh1010'; // Mật khẩu Email
            $mail->SMTPSecure = 'ssl';  // encryption TLS/SSL 
            $mail->Port = 465;  // Port kết nối: khai báo 465 hoặc 587                


            // Recipients - Người nhận
            $tennguoigui = $name; // Tên người gửi lấy từ form nhập
            $mail->Username = $nguoigui; // SMTP username
            $mail->Password = $matkhau;   // SMTP password
            $mail->setFrom($nguoigui, $tennguoigui); //mail và tên người nhận 
            $to = $email; // Email cần gửi đến lấy từ form nhập
            $to_name = "Nguyễn Đăng Thành"; // Tên người cần gửi đến

            // Content 
            $mail->addAddress($to, $to_name); //mail và tên người nhận  
            $mail->isHTML(true);  // Khai báo nội dung email hiển thị định dạng html
            $mail->Subject = $subject; // Tiêu đề email
            $mail->Body = $message; // Nội dung email

            $mail->send(); // Tiến hành gửi thư
            echo '<center>Đã gửi mail xong</center>';
        }
        // nếu ở trên lỗi thì CATCH sẽ chạy
        catch (Exception $e) {
            echo 'Mail không gửi được. Lỗi: ', $mail->ErrorInfo; 
        }
    }
    ?>

Style cho đẹp tý nhé: 

<style>
    form {
        display: flex;
        flex-flow: column;
        justify-content: center;
        align-items: center;
    }

    .form-group {
        padding: 10px;
        width: 650px;
    }

    .form-group input {
        padding: 5px 0;
        width: 100%;
    }

    textarea {
        width: 100%;
    }

    button {
        padding: 10px 50px;
        border-radius: 5px;
        color: white;
        background-color: red;
        border: none;
        outline: 0;
    }

    button:hover {
        opacity: 0.7;
        cursor: pointer;
    }
    center{
        font-size: 20px;
        font-weight: bold;
        color: green;
        padding: 20px;
    }
</style>

Bước 3. Test gửi mail nhé

các bạn đăng nhập vào gmail, bật cái Quyền truy cập của ứng dụng kém an toàn lên nha: Vào quản lý tài khoản google-> bảo mật -> Quyền truy cập của ứng dụng kém an toàn -> bật lên nhé

OK vậy là xong, các bạn có thể tải Full code Tại đây


Facebook: https://www.facebook.com/NguyenDangThanh.Fb/

Phone: 038 757 8520

Email: Thanhboi312@gmail.com