Làm cách nào để gửi email từ localhost trong php bằng xampp?

Localhost được sử dụng làm máy chủ phát triển để phát triển ứng dụng web. Tất cả các chức năng của ứng dụng web được kiểm tra trên máy chủ localhost trước khi chuyển nó sang máy chủ sản xuất. Tuy nhiên, vấn đề phát sinh khi chức năng email cần được kiểm tra trên máy chủ localhost. Nói chung, tính năng gửi email không hoạt động với các chức năng tích hợp PHP trong localhost

Nếu ứng dụng web được xây dựng bằng PHP, hàm mail[] được sử dụng để gửi email từ tập lệnh bằng PHP. Nhưng hàm PHP mail[] sẽ không hoạt động trong localhost. Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách gửi email từ localhost trong PHP. Sử dụng tập lệnh ví dụ này, bạn có thể gửi email từ bất kỳ máy chủ cục bộ nào [XAMPP, WAMP hoặc bất kỳ máy chủ nào khác] bằng PHP

Chúng tôi sẽ sử dụng thư viện PHPMailer để gửi email từ localhost bằng PHP. Thư viện PHPMailer cung cấp cách dễ nhất để gửi email từ localhost với máy chủ SMTP bằng PHP. Không chỉ email văn bản mà bạn còn có thể gửi email HTML từ localhost bằng PHP bằng PHPMailer

Thông tin xác thực máy chủ SMTP.
Trước khi bắt đầu, hãy tạo một tài khoản email trên máy chủ của bạn và thu thập thông tin đăng nhập SMTP [Máy chủ, Cổng, Tên người dùng, Mật khẩu, v.v. ] sẽ yêu cầu được chỉ định trong mã sau này.

Gửi Email từ Localhost bằng PHP

Đoạn mã sau sẽ gửi email HTML từ máy chủ cục bộ bằng PHPMailer

  • Bao gồm thư viện PHPMailer và tạo một thể hiện của lớp này
  • Đặt thông tin đăng nhập SMTP [máy chủ, tên người dùng, mật khẩu và cổng]
  • Chỉ định tên người gửi và email [$mail->setFrom]
  • Đặt địa chỉ email người nhận [$mail->addAddress]
  • Đặt chủ đề email [$mail->Subject]
  • Đặt nội dung chính của email [______8]
  • Sử dụng phương thức send[] của lớp PHPMailer để gửi email
// Import PHPMailer classes into the global namespace
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP;
use PHPMailer\PHPMailer\Exception;

// Include library files
require 'PHPMailer/Exception.php';
require 'PHPMailer/PHPMailer.php';
require 'PHPMailer/SMTP.php';

// Create an instance; Pass `true` to enable exceptions
$mail = new PHPMailer;

// Server settings
//$mail->SMTPDebug = SMTP::DEBUG_SERVER;    //Enable verbose debug output
$mail->isSMTP[];                            // Set mailer to use SMTP
$mail->Host = 'smtp.example.com';           // Specify main and backup SMTP servers
$mail->SMTPAuth = true;                     // Enable SMTP authentication
$mail->Username = 'user@example.com';       // SMTP username
$mail->Password = 'email_password';         // SMTP password
$mail->SMTPSecure = 'ssl';                  // Enable TLS encryption, `ssl` also accepted
$mail->Port = 465;                          // TCP port to connect to

// Sender info
$mail->setFrom['sender@example.com', 'SenderName'];
$mail->addReplyTo['reply@example.com', 'SenderName'];

// Add a recipient
$mail->addAddress['recipient@example.com'];

//$mail->addCC['cc@example.com'];
//$mail->addBCC['bcc@example.com'];

// Set email format to HTML
$mail->isHTML[true];

// Mail subject
$mail->Subject = 'Email from Localhost by CodexWorld';

// Mail body content
$bodyContent = '

How to Send Email from Localhost using PHP by CodexWorld';
$bodyContent .= '

This HTML email is sent from the localhost server using PHP by CodexWorld

';
$mail->Body    = $bodyContent;

// Send email
if[!$mail->send[]] {
    echo 'Message could not be sent. Mailer Error: '.$mail->ErrorInfo;
} else {
    echo 'Message has been sent.';
}

Lưu ý rằng. Nếu bạn muốn sử dụng Gmail làm máy chủ SMTP, hãy đặt địa chỉ email Google của bạn làm tên người dùng SMTP và mật khẩu làm mật khẩu SMTP

Gửi Email qua Máy chủ SMTP bằng PHP bằng PHPMailer

Bạn có thể gửi email có nhiều tệp đính kèm từ máy chủ cục bộ bằng PHPMailer

  • Đặt đường dẫn tệp thành phương thức addAttachment[]
// Add attachments
$mail->addAttachment['/var/tmp/file.tar.gz'];
$mail->addAttachment['/tmp/image.jpg', 'new.jpg']; // Optional name

Bạn có muốn nhận trợ giúp triển khai hay sửa đổi hoặc nâng cao chức năng của tập lệnh này không?

Đầu tiên, hãy vào thư mục cài đặt XAMPP và mở thư mục XAMPP và làm theo các bước bên dưới. Tôi đã cài đặt XAMPP trong thư mục C

  1. Đi đến [C. xampp\php] và mở tệp cài đặt cấu hình PHP, sau đó tìm [chức năng thư] bằng cách cuộn xuống hoặc chỉ cần nhấn ctrl+f để tìm kiếm trực tiếp, sau đó tìm các dòng sau và chuyển các giá trị này. Hãy nhớ rằng, có thể có dấu chấm phẩy ;

[mail function]
For Win32 only.
http://php.net/smtp
SMTP=smtp.gmail.com
http://php.net/smtp-port
smtp_port=587
sendmail_from = your_email_address_here
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"

Vào chế độ toàn màn hình Thoát chế độ toàn màn hình

Đó là tất cả cho tệp này, nhấn ctrl+s để lưu tệp này và sau đó đóng tệp

  1. Bây giờ, đi [C. \xampp\sendmail] và mở tệp cài đặt cấu hình sendmail, sau đó tìm sendmail bằng cách cuộn xuống hoặc nhấn ctrl+f để tìm kiếm trực tiếp, sau đó tìm các dòng sau và chuyển các giá trị này. Hãy nhớ rằng, có thể có dấu chấm phẩy ;

smtp_server=smtp.gmail.com
smtp_port=587
error_logfile=error.log
debug_logfile=debug.log
auth_username=your_email_address_here
auth_password=your_password_here
force_sender=your_email_address_here [it's optional]

Vào chế độ toàn màn hình Thoát chế độ toàn màn hình

đó là tất cả cho tệp này, nhấn ctrl+s để lưu tệp này và sau đó đóng tệp. Sau khi tất cả các thay đổi trong hai tệp, đừng quên khởi động lại máy chủ apache của bạn.
Bây giờ, bạn đã hoàn tất các thay đổi cần thiết trong các tệp này. Để kiểm tra những thay đổi bạn đã thực hiện có đúng hay không. Đầu tiên, tạo một tệp PHP với. php và dán các mã sau vào tệp PHP của bạn. Sau khi dán mã, hãy đặt thông tin chi tiết của bạn vào các biến đã cho – Trong biến $receiver đặt địa chỉ email người nhận, trong biến $subject đặt chủ đề email và thực hiện tương ứng.


Vào chế độ toàn màn hình Thoát chế độ toàn màn hình

Sau khi hoàn thành các bước này, chỉ cần mở tệp PHP này trên trình duyệt của bạn. Nếu thư của bạn được gửi thành công thì sẽ xuất hiện thông báo thành công “Email đã gửi thành công tới…. ” và trong trường hợp thư của bạn không được gửi thì sẽ xuất hiện “Xin lỗi, thất bại trong khi gửi thư. ”

Nếu thư được gửi thì hãy kiểm tra xem người nhận có nhận được email của bạn hay không. Nếu có, thì thật tuyệt, bạn đã thực hiện tất cả các thay đổi một cách hoàn hảo. Nếu không, hãy kiểm tra tất cả các thay đổi mà bạn đã thực hiện trước đó có đúng hay không

Làm cách nào để gửi email bằng PHP trong localhost?

Gửi email từ Localhost bằng PHP .
Bao gồm thư viện PHPMailer và tạo một thể hiện của lớp này
Đặt thông tin đăng nhập SMTP [máy chủ, tên người dùng, mật khẩu và cổng]
Chỉ định tên người gửi và email [ $mail->setFrom ]
Đặt địa chỉ email người nhận [ $mail->addAddress ]
Đặt chủ đề email [ $mail->Subject ]

Tôi có thể gửi email từ localhost không?

Bạn có thể gửi thư từ máy chủ cục bộ bằng gói sendmail , gói sendmail được tích hợp sẵn trong XAMPP. Vì vậy, nếu bạn đang sử dụng XAMPP thì bạn có thể dễ dàng gửi thư từ localhost. Ví dụ, bạn có thể cấu hình C. \xampp\php\php. ini và c. \xampp\sendmail\sendmail.

Làm cách nào để gửi email thông qua mã PHP?

PHP sử dụng hàm mail[] để gửi email. Hàm này yêu cầu ba đối số bắt buộc chỉ định địa chỉ email của người nhận, chủ đề của thư và thư thực tế, ngoài ra còn có hai tham số tùy chọn khác. thư [đến, chủ đề, tin nhắn, tiêu đề, tham số];

Làm cách nào để gửi thư bằng PHP từ máy chủ cục bộ bằng máy chủ WAMP?

Định cấu hình tài khoản Gmail của bạn, thực hiện sửa đổi sau. .
Chuyển đến Cài đặt > Giao thức > SMTP và chọn tab "Gửi email"
Nhập "smtp. gmail. com" trong trường Tên máy chủ từ xa
Nhập "465" làm số cổng
Kiểm tra "Máy chủ yêu cầu xác thực"
Nhập địa chỉ Gmail của bạn vào trường Tên người dùng

Chủ Đề