Hướng dẫn gửi mail xác nhận đăng ký băng php
PHPMailer là mã nguồn không thể thiếu trong lập trình PHP, sử dụng PHPMailer giúp bạn cấu hình gửi mail nhanh và dễ dàng hơn. Với WordPress, ngoài việc sử dụng plugin gửi mail, bạn cũng có thể tự mình cấu hình gửi mail thông qua SMTP. Show
1. Những tính năng của PHPMailer_ Các bạn có thể gửi mail thông qua giao thức SMTP _ Các bạn hoàn toàn sử dụng mail cá nhân hoặc mail doanh nghiệp để gửi thông tin cho khách hàng của bạn để làm tăng chất lượng mail của bạn. _ Gửi mail với tốc độ nhanh ít lỗi và mail được chuyển vào thẳng inbox _ Các bạn hoàn toàn sử dụng được cc, bcc và tệp đính kèm 2. Khởi tạo mật khẩu ứng dụng trên GmailĐể có thể gửi được mail SMTP từ tài khoản Gmail, trước tiên các bạn cần khởi tạo một mật khẩu ứng dụng. Đây sẽ là mật khẩu mà các bạn sử dụng cài đặt lên các phần mềm bên thứ ba. Trường hợp các bạn sử dụng Email doanh nghiệp hoặc Email server riêng có thể bỏ qua bước này. Đầu tiên bạn đăng nhập vào link https://myaccount.google.com/security với tài khoản Gmail sẽ sử dụng gửi mail SMTP. Tại đây bạn sẽ thấy mục Đăng nhập vào Google, bạn chọn Xác minh 2 bước và làm theo hướng dẫn để bật tín năng này. Sau khi đã bật thành công, bạn sẽ thấy chức năng Mật khẩu ứng dụng . Tại Chọn ứng dụng, bạn chọn Khác (Tên tùy chỉnh) Tiếp đến bạn điền tên phần mềm hoặc bất kỳ tên nào mà bạn muốn và chọn Tạo Mật khẩu ứng dụng sẽ gồm 16 ký tự, bạn lưu lại để khai báo trong PHPMailer. 2. Cài đặt PHPMailerSau khi đã có mật khẩu ứng dụng, bạn thực hiện tải PHPMailer mới nhất tại link sau: https://github.com/PHPMailer/PHPMailer Tiếp đến bạn giải nén file .zip trên vào thư mục bất kỳ hoặc thư mục chứa source code website (/public_html) để thuận tiện kiểm tra khi hoàn tất. Tại thư mục này, ban tiếp tục tạo một file với tên sendmail.php hoặc bất cứ tên nào mà bạn muốn miễn là kết thúc với đuôi .php. Bạn mở file sendmail.php và cấu hình như sau:
`use PHPMailer\PHPMailer\PHPMailer;`7 `use PHPMailer\PHPMailer\PHPMailer;`8 `use PHPMailer\PHPMailer\PHPMailer;`9 `use PHPMailer\PHPMailer\Exception;`0 `use PHPMailer\PHPMailer\Exception;`1 `use PHPMailer\PHPMailer\Exception;`2 `use PHPMailer\PHPMailer\Exception;`3 `use PHPMailer\PHPMailer\Exception;`4 `use PHPMailer\PHPMailer\Exception;`5 `use PHPMailer\PHPMailer\Exception;`6 `use PHPMailer\PHPMailer\Exception;`7 `use PHPMailer\PHPMailer\Exception;`8 Sau khi đã điền thông tin đầy đủ bạn lưu lại và tiến hành kiểm tra bằng cách truy cập website với link: https://domain.com/sendmail.php. Khi này trên trình duyệt sẽ hiện thị quá trình website kết nối lên Gmail để tiến hành gửi mail và nếu bạn thấy dòng chữ Message has been sent ở cuối thì mail đã được gửi đi thành công. Trường hợp bạn không sử dụng website có thể kiểm tra trực tiếp trên server bằng cách đứng tại thư mục chứa file sendmail.php và chạy lệnh: Xin chào tất cả mọi người, mình sẽ hướng dẫn mọi người làm chức năng gửi gmail xác thực người dùng bằng mã OTP giống như Facebook bằng Laravel 8x.Bài viết này dành cho người đã từng học qua Laravel cơ bản nên mọi người tự set up project Laravel nhé 1. Tạo mật khẩu ứng dụng trong gmailB1.Đầu tiên bạn hãy đăng nhập vào gmail ấn vào avatar và vào mục quản lí ứng dụng B2.Chọn tab bảo mật và chọn mật khẩu ứng dụng B3.Chọn options như sau sẽ giúp bạn đăng nhập gmail mà không cần mật khẩu gốc Một mật khẩu ứng dụng được sinh ra,chúng ta sẽ dùng mật khẩu này để thay thế cho mật khẩu gốc 2.Cấu hình file mail.php trong folder config và sửa .env
Ở đây bạn đã cấu hình laravel để gửi mail theo giao thức smtp và ở đoạn code dưới.Bạn đã xác nhận tất cả các thư gửi đi từ ứng dụng này là từ mail của bạn với tên mặc định là Facebook Tiếp theo ở file env. hãy sửa 2 dòng này với mail là mail của bạn và password là password được tạo từ mật khẩu ứng dụng ở trên sửa
thành
3.Tạo database với migration
Ở đây bạn chỉ cần quan tâm tới 3 trường là confirm là để kiểm tra xem tài khoản đã được xác thực hay chưa hay nói cách khác là người dùng đã nhập OTP xác thực thành công khi nhận đc từ mail chưa,thứ 2 là trường confirmation_code là đoạn mã nhận được sau khi người dùng đăng ký gmail và confirmation_code_expiredin là thời gian OTP hết hạn 4.Viết api trong file api.php
/register: Khi người dùng ấn đăng ký sau khi nhập thông tin từ form /re_register: Khi người dùng ấn gửi lại mã OTP /email/verify_OTP: Sau khi người dùng ấn mã OTP /email/logout_OTP: Hủy đăng ký 5.Tạo VerificationController.php
5.2 Tạo AuthController.php
Mặc định mã OTP sẽ có 6 số và thời gian hết hạn là 60s hàm re_register để reset lại OTP nhé 6.Tạo file markdownHãy chạy câu lệnh
trong đó :
Ở đây dòng quan trọng nhất nằm ở function build :
0 email.name là đường dẫn của file markdown khi gửi mail với thư mục gốc là resources/views và hàm with để truyên mã OTP và expired _time vào file markdown .Ở đây là |