Phpmailer trong php

Gần như bất kỳ dự án kinh doanh nào cũng cần có email và gửi email cho khách hàng hoặc đối tác. Mặc dù có nhiều loại email hosting doanh nghiệp khác nhau, như Hostinger, , và Google Workspace, bạn cũng có thể gửi email bằng PHP

Trong bài hướng dẫn này, bạn sẽ học cách gửi email bằng hàm PHP mail[] có sẵn và PHPMailer với giao thức Simple Mail Transfer Protocol [SMTP]

PHP mail[] function can be used to send email using PHP. Nó thuận tiện nếu bạn muốn tạo mẫu liên hệ trên trang web của bạn. Với thư PHP[], email có thể được gửi bằng cách sử dụng tập lệnh PHP đơn giản

 

Gửi email bằng hàm PHP mail[]

Hàm PHP mail[] kích hoạt chương trình Sendmail, thường được cấu hình bởi quản trị viên hệ thống. Chương trình này giúp bạn gửi email được

Để sử dụng được chức năng này, hãy chắc chắn rằng nhà cung cấp của bạn cho phép bạn chỉnh sửa chức năng của dịch vụ Sendmail

Các bước gửi email hàm PHP mail[] như sau

Bước 1 – Kích hoạt dịch vụ Sendmail

Nếu bạn đang sử dụng web hosting của Hostinger hoặc WordPress hosting, bạn có thể kích hoạt hoặc vô hiệu chức năng này trong hPanel. Nhấp vào Email -> Kiểm soát dịch vụ thư

Mặc định, dịch vụ Sendmail đã được kích hoạt. Bạn có thể kiểm tra lại để chắc chắn

Bước 2 — Tạo một tệp PHP mới

Đầu tiên, bạn cần tạo file PHP trong tài khoản hosting. Để tệp của bạn có thể truy cập bằng địa chỉ web, bạn cần mua tên miền web, kết nối nó với máy chủ lưu trữ và tải tệp PHP lên trong thư mục public_html

  1. Truy cập vào File Manager trong hoặc qua FTP client
  2. Create new file name has testmail name. php bằng nút Thêm mới trong Trình quản lý tệp
  3. Nhấp đúp vào tệp và sao chép dán đoạn mã này vào trong tệp testmail. php. Chúng tôi sẽ sử dụng đoạn mã này để gửi email và sẽ giải thích cho bạn ở phía sau.
  4. Sau khi lưu lại tệp trên. Bạn có thể truy cập tenmiencuaban/testmail. php from the browser to run script. Nhớ thay đổi tenmiencuaban thành tên miền của bạn
  5. Email bạn nhắm đến sẽ nhận được tin nhắn bạn gửi

Hiểu thêm về các thành phần trong PHP Mail

Như đã hứa, chúng tôi sẽ giới thiệu với bạn các thành phần cơ bản của một mail script PHP. Ví dụ: chúng tôi đang tạo ra một cú pháp email cơ bản để bạn hiểu nó hoạt động như thế nào cụ thể

Tuy nhiên, nếu bạn muốn biết thêm thông tin chức năng của Sendmail và các thành phần của nó, bạn có thể xem qua bộ tài liệu PHP chính thức.

Đây là cú pháp PHP mà chúng tôi đã sử dụng ở phần trước

Cùng xem cụ thể về từng dòng một

ini_set[ 'display_errors', 1 ];
error_reporting[ E_ALL ];

2 dòng đầu tiên được bật tính năng hiện lỗi để bạn thấy lỗi nếu có. Chúng tôi sẽ thông báo lỗi nếu script thực thi không thành công

$from = "test@hostinger-tutorials.com";

$from – Gửi email từ. Nhiều nhà cung cấp không cho phép sử dụng địa chỉ email tùy ý vì lý do nó có thể bị lạm dụng làm giả mạo. Nên bạn cần điền địa chỉ email mà bạn đã tạo cho tên miền này ở đây để thực hiện việc kiểm tra thư PHP thành công

$to = "test@gmail.com";

$to – Email người nhận. Khi bạn gửi đi cho mục đích kiểm tra, hãy sử dụng email cá nhân của bạn để thử

$subject = "Checking PHP mail";

$subject – Tiêu đề email

$message = "PHP mail works just fine";

$message – Đây là nơi bạn điền nội dung của email vào

$headers = "From:" . $from;

$headers – Mỗi email có tiêu đề. Chúng bao gồm các thông tin như email gửi từ, địa chỉ email để trả lời [địa chỉ trả lời]

________số 8_______

mail[$to,$subject,$message, $headers] – Đây là hàm PHP để chạy lệnh gửi email. You don't change what in this line

echo "The email message was sent.";

echo “Thư điện tử đã được gửi. ” – Hàm PHP echo sẽ hiển thị thông báo trên màn hình là tập lệnh đã được thực thi thành công

Sử dụng PHPMailer để gửi email

PHPMailer là thư viện phổ biến để gửi thư trong PHP. Nó hỗ trợ gửi email bằng hàm mail[] hoặc Simple Mail Transfer Protocol [SMTP]. Thư viện này đơn giản quá trình xây dựng thư PHP phức tạp bằng cách cho phép bạn sử dụng một bộ chức năng để tạo và gửi email

Cài đặt PHPMailer cũng rất dễ dàng, đặc biệt nếu bạn đã có sẵn Composer. Nếu bạn đang sử dụng Hostinger, bạn không cần phải lo lắng về công việc này nữa vì nó đã được cài đặt sẵn trong mọi gói lưu trữ

Nếu bạn muốn cài đặt thủ công PHPMailer, bạn có thể kết nối với máy chủ lưu trữ qua thiết bị đầu cuối SSH bằng các bước sau

  1. Tải và cài đặt PuTTY SSH client
  2. Vào giao diện thành viên hPanel, tìm và nhấn vào mục Truy cập SSH trong phần Nâng cao
  3. Save back information SSH Access Information. Bạn cần có thông tin địa chỉ IP SSH, cổng, tên người dùng và mật khẩu
  4. Mở PuTTy, rồi đặt SSH IP và cổng tương ứng
  5. Bấm Mở và một cửa sổ lệnh sẽ hiện ra. Nhập tên người dùng SSH và mật khẩu. Sau khi hoàn tất, nhấn Enter

    GHI phần. PuTTY will not be flashing when input pass. Bạn đừng lo mà cứ nhập đúng mật khẩu là được

  6. Thực hiện lệnh sau.
    0
  7. Nhấn Enter, rồi chạy lệnh.
    1
  8. Chờ trong giây lát cho đến khi quá trình cài đặt kết thúc.

Sử dụng PHPMailer để gửi email với Hostinger SMTP

Khi bạn đã có sẵn PHPMailer, bạn có thể sử dụng nó để gửi thư PHP bằng Hostinger SMTP

  1. Tạo tài khoản email bằng cách truy cập hPanel, chuyển tới Tài khoản email -> Tạo tài khoản email mới. Điền thông tin email mới và đặt mật khẩu và nhấn Tạo
  2. Sau khi hoàn tất, hãy lưu lại thông tin chi tiết SMTP ở cùng trang đó.

    GHI chú. Bạn phải lưu các thông tin tên người dùng tài khoản, mật khẩu tài khoản, máy chủ SMTP và cổng SMTP để cấu hình email trong PHPMailer.

  3. Tạo một tệp có tên testphpmailer. php trong thư mục Public_html. Truy cập bảng điều khiển hPanel và nhấn vào Trình quản lý tệp -> Chuyển đến Trình quản lý tệp
  4. Nhấp vào Thêm mới. Set name file testphpmailer. php rồi nhấn Create
  5. Nhấn double click vào file vừa tạo testphpmailer. php, và sao chép-dán đoạn mã bên dưới vào.
    2
  6. Chỉnh sửa đoạn mã ở trên cho đúng. Ví dụ, bạn cần thay thế EMAIL_ACCOUNT_PASSWORD bằng mật khẩu email và test@hostinger-tutorials. com to your username, example@gmail. com thành địa chỉ email người nhận,… Khi hoàn tất, nhấn Save & Close
  7. PHPMailer time is available to use. Thực thi đoạn script trên bằng cách truy cập YourDomain. com/testphpmailer. php on browser

Hiểu về các thành phần PHPMailer

Để hiểu PHPMailer hoạt động như thế nào, hãy cùng tôi xem mô tả của ví dụ script trên SMTP đã sử dụng để gửi email thành công nhé. Đây là giải thích từng thành phần

3

This line input PHPMailer class into global namespace

4

Nó kết hợp nhiều thư viện khác nhau để chạy PHPMailer

5

Tất cả các biến tương tự chứa thông tin quan trọng, như địa chỉ máy chủ, tiêu đề thư, tệp đính kèm,… Tóm lại, hãy chắc chắn rằng người gửi đã được bảo vệ bởi chứng thực SMTP

6

Định nghĩa điều gì sẽ xảy ra khi kịch bản được thực thi

7

Nó sẽ xuất hiện lỗi giải thích khi bất kỳ tập lệnh nào bị lỗi

8

Xác định điều gì xảy ra tiếp theo khi kịch bản được thực hiện

9

Nếu email gửi thành công, dòng này sẽ hiển thị

MẸO CHUYÊN NGHIỆP. Dòng này SMTPDebug = 2; . You have to convert it about SMTPDebug = 0; . Để tránh người dùng cuối nhận SMTP gửi báo cáo

Nếu bạn chú ý, bạn sẽ nhận ra nó hơi khác, vì vậy với ví dụ đầu tiên – chúng tôi đang gửi một tin nhắn HTML thay vì là một đoạn văn bản thuần túy

Vì vậy, tin nhắn của bạn sẽ tải nội dung từ trong tệp tin nhắn. html set in the same directory — public_html

Định dạng này có nhiều chức năng tuyệt vời hơn so với văn bản thuần túy vì HTML có khả năng tùy chỉnh cao. Bạn có thể chỉnh sửa màu sắc, phong cách, hình ảnh và thêm tệp đa phương tiện vào, những thứ sẽ bị mất khi gửi thư văn bản thuần túy

Biểu mẫu liên hệ PHPMailer

Bạn có thể ứng dụng PHPMailer vào nhiều thứ khác thay vì chỉ gửi thư PHP đơn giản. Một khi bạn đã ứng dụng nó, bạn có thể tạo biểu mẫu liên hệ nơi độc giả có thể nhanh chóng tương tác với bạn

Đây là ví dụ của đoạn script

ini_set[ 'display_errors', 1 ];
error_reporting[ E_ALL ];
0

Giống với script trước, bạn cần tạo tệp mới trong thư mục public_html. Trong trường hợp này, chúng tôi đặt tên nó là bản mẫu. php. Chỉnh sửa thông tin bên trong tập lệnh tuần tự. Sau đó, bạn có thể chạy tập lệnh từ trong trình duyệt

Đây là kết quả.

Khi khách hàng gửi tin nhắn, anh ta sẽ nhận được thông báo xác nhận đã nhận và nội dung sẽ chuyển đến hộp thư đến của email bạn nhập tại đây.

ini_set[ 'display_errors', 1 ];
error_reporting[ E_ALL ];
1

MẸO CHUYÊN NGHIỆP. Trong trường hợp biểu mẫu liên hệ PHPMailer không hoạt động. thêm dòng $mail->SMTPDebug = 2; . Đừng quên xóa số 2 thành 0 khi hoàn thành công việc

PHPMailer có nhiều ví dụ hơn nữa bạn có thể thử trong kho lưu trữ GitHub chín thức. Ngoài ra, nếu bạn đang sử dụng WordPress, bạn có thẻ dễ dàng tạo biểu mẫu liên hệ với rất nhiều plugin như Biểu mẫu WP, Biểu mẫu ghê gớm hoặc Biểu mẫu trọng lực

Edit error information of PHP mail and PHPMailer

Lỗi phát sinh khi sử dụng thư PHP hoặc PHPMailer. Đây là danh sách các lỗi thông thường và cách sửa lỗi của chúng

Địa chỉ người gửi bị từ chối. Không thuộc sở hữu của người dùng

Lỗi này có nghĩa là máy chủ không thể chứng thực bằng thông tin bạn cung cấp

Để chỉnh sửa, vui lòng kiểm tra lại email bạn dùng để gửi email và đảm bảo rằng nó đang tồn tại. Nếu nó trỏ tới hộp thư đến sai, hãy thay đổi. Ngoài ra, bạn cũng có thể kích hoạt bản ghi SPF

Gmail không thể xác minh rằng tên miền của bạn. com Đã gửi tin nhắn này

Nếu bạn thấy cảnh bảo đảm này khi kiểm tra PHP mail script, có nghĩa là

  • Bản ghi SPF chưa được kích hoạt
  • Bạn đã gửi amil từ một địa chỉ không tồn tại hoặc không thuộc về bạn. Hãy chắc chắn rằng bạn đã nhập đúng thông tin đăng nhập trong phần xác thực SMTP

Thư bị chuyển đến thư mục thư rác

Có nhiều lý do khiến email PHP rơi vào thư mục thư rác. Đây là một số lý do phổ biến

  • Tiêu đề gây hiểu lầm hoặc thư rác giống nhau. Ví dụ như “kiểm tra” hoặc “thử nghiệm”, “xin chào“, “khẩn cấp” hoặc bất cứ điều gì tương tự. Bảo đảm là bạn đặt tiêu đề phù hợp với sự xác định rõ ràng ý định của bạn trong tiêu đề
  • Bạn đang sử dụng sai địa chỉ email đã kích hoạt lớp bảo vệ của email người nhận. This job Chống lại email giả mạo và lừa đảo
  • Bạn đang sử dụng những từ khóa bị coi là thư rác. Nó bao gồm những từ như “ưu ​​đãi tuyệt vời” “bấm vào đây” “khuyến mãi đặc biệt” “đây không phải là thư rác”,… Hãy thử đổi nội dung email để xem kết quả như thế nào
  • Danh sách gửi thư của bạn không có nút hủy đăng ký. Khi nhiều người báo cáo email của bạn là thư rác, bạn sẽ khó thoát khỏi bộ lọc thư rác. Có nút hủy đăng ký sẽ hạn chế số người báo mail của bạn là spam và tạo thêm niềm tin cho người đọc

Kết luận

Bây giờ bạn đã biết cách nào để gửi email qua PHP. Mặc dù bài hướng dẫn này khá cơ bản, nhưng phương pháp cũng giống như vậy nếu bạn muốn tạo biểu mẫu liên hệ trên trang web của mình

Tuy nhiên, nếu bạn muốn có thêm các script cao cấp chạy lệnh gửi email sử dụng PHP, hãy xem qua dự án PHPMailer. Nếu bạn có thủ thuật, mẹo nào để gửi email hoặc ý tưởng mới có thể chia sẻ. Đừng sợ hãy để lại bình luận bên dưới cho chúng tôi nhé

Tác giả

Hải G

Hải G. là chuyên gia quản lý vận tải, điều hành các trang web dịch vụ. Anh có nhiều năm kinh nghiệm về VPS, Hosting, kỹ thuật SEO, CMS. Đặc biệt yêu thích WordPress và đã sử dụng nó hơn 5 năm nay. Sở thích của anh là đọc, viết blog, đi du lịch và tư vấn cho các bạn khởi nghiệp

Chủ Đề