Làm cách nào để gửi email có tệp đính kèm trong PHP?

Trong nhiều dự án PHP, chúng tôi thường triển khai chức năng gửi email như xác minh email của người dùng, để đặt lại mật khẩu, trang liên hệ với chúng tôi, v.v. Chỉ cần vài dòng mã để gửi các loại email này. Nhưng đôi khi chúng ta phải triển khai chức năng gửi email để gửi email có tệp đính kèm trong PHP

Chúng tôi có thể triển khai gửi email có tệp đính kèm bằng PHP mail(to,subject,message,headers); . Bạn phải chuyển quá nhiều chi tiết để gửi tệp đính kèm

Ngoài ra, đọc

  • Bootstrap Contact Form với Captcha sử dụng Ajax và PHP

Vì vậy, ở đây trong hướng dẫn này, chúng tôi đã giải thích cách gửi email có tệp đính kèm trong PHP một cách dễ dàng bằng cách sử dụng plugin PHPMailer

Đôi khi bạn muốn gửi thư có tệp đính kèm nhưng quá trình đó rất khó khăn và không có gì chắc chắn về việc gửi thư của bạn có tệp đính kèm nhưng giờ đây, quá trình này trở nên dễ dàng và là cách tốt nhất để gửi email có tệp đính kèm với sự trợ giúp của PHP và PHP

Vì vậy, trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách gửi thư có tệp đính kèm bằng php. Chắc bạn cũng thích Gửi Email Bằng SMTP Và PHP Mailer

Tham gia với hơn 27.000 thành viên trong nhóm Google của bạn và nhận các hướng dẫn mới nhất

Nhận các hướng dẫn mới nhất của chúng tôi, Hướng dẫn cách thực hiện về phát triển web mỗi ngày ngay trong hộp thư đến của bạn

Làm cách nào để gửi email có tệp đính kèm trong PHP?

Để gửi thư có tệp đính kèm chỉ cần hai bước. -

  1. Tạo tệp HTML và xác định đánh dấu để gửi dữ liệu thư
  2. Tạo một file PHP để lấy dữ liệu và gửi mail

Bước 1. Tạo tệp HTML và xác định đánh dấu để gửi dữ liệu thư

Chúng tôi tạo một tệp HTML và lưu nó với tên mail. html


Enter Your Name :

Enter Your Email :

Enter Recipient Email :

Enter Email Subject :

Enter Message :

Select File :

Trong bước này, chúng tôi tạo một biểu mẫu và thêm một số trường văn bản cần thiết để gửi thư và thêm trường tệp để tải lên tệp đính kèm cho thư, sau đó gửi tất cả dữ liệu tới send_mail. php mà chúng ta sẽ tạo trong bước tiếp theo

Bạn cũng có thể thích Gửi Email Đẹp Bằng PHP

Bước 2. Tạo một file PHP để lấy dữ liệu và gửi mail

Chúng tôi tạo một tệp PHP và lưu nó với tên send_mail. php

From = $sender_email;
 $send_mail->FromName = $name;
 $send_mail->Subject = $subject;
 $send_mail->Body = $message;
 $send_mail->AddAddress($send_to);

 $attach_file = $folder."".$file_name;
 $send_mail->AddAttachment($attach_file);

 return $send_mail->Send();
}
?>

Ở bước này chúng ta lấy toàn bộ dữ liệu cần thiết để gửi mail rồi upload file lên thư mục

Chúng tôi bao gồm lớp. phpmailer. php cần thiết để gửi thư, sau đó chúng tôi thêm các chi tiết trong thư và đính kèm tệp và gửi thư đến địa chỉ email của người nhận

Chắc bạn cũng thích Hệ Thống Xác Minh Tài Khoản Qua Email Sử Dụng PHP

Đó là tất cả, đây là cách gửi thư có tệp đính kèm bằng PHP. Bạn có thể tùy chỉnh thêm mã này theo yêu cầu của bạn. Và xin vui lòng cho nhận xét về hướng dẫn này

Trong hướng dẫn này, bạn sẽ tìm hiểu cách tạo biểu mẫu liên hệ gửi email PHP có tệp đính kèm bằng cách sử dụng hàm PHP mail(). Hướng dẫn này sẽ chỉ cho bạn cách thực hiện điều đó bằng cách sử dụng hàm PHP mail(). Đây là một cách nhanh chóng và dễ dàng để tạo tệp đính kèm trong email bằng PHP

Mã miễn phí hiện có sẵn trên trang web này. Chúng tôi không lưu trữ bất kỳ thông tin nào của bạn và mã có sẵn với thiết kế cơ bản

PHP Gửi email có tệp đính kèm

Đây là một hướng dẫn về biểu mẫu liên hệ đơn giản sẽ chỉ cho bạn cách tạo biểu mẫu liên hệ PHP và gửi nó tới email có tệp đính kèm khi gửi biểu mẫu. Giờ đây, biểu mẫu sẽ cho phép bạn đính kèm nhiều định dạng tệp mà người dùng có thể đính kèm các định dạng tệp như tệp PDF, DOC, JPG, JPEG và PNG

Chúng tôi sẽ tạo một biểu mẫu liên hệ với tùy chọn đính kèm tệp sẽ gửi email đến một địa chỉ email cụ thể khi gửi biểu mẫu. Tôi chia mã thành ba phần để hiểu rõ hơn. Chúng tôi sẽ đặt mã HTML vào phần đầu tiên, sau đó là mã CSS trong tệp thứ hai và cuối cùng, chúng tôi sẽ đặt mã PHP

Làm cách nào để tạo email biểu mẫu PHP có tệp đính kèm?

Thực hiện theo các bước sau để Gửi Email có tệp đính kèm khi Gửi Biểu mẫu bằng PHP

  1. Tạo một biểu mẫu liên hệ HTML đơn giản (với CSS tùy chọn) và nhúng nó vào trang web của bạn
  2. Lưu trữ biểu mẫu liên hệ của bạn tới bất kỳ máy chủ lưu trữ web internet nào
  3. Kết nối trình chỉnh sửa mã của bạn với máy chủ từ xa để chỉnh sửa tập lệnh PHP
  4. Viết một tập lệnh PHP sẽ xử lý hiệu quả việc gửi email
  5. Nhận dữ liệu biểu mẫu đã gửi bằng cách sử dụng $_POST trong PHP
  6. Xác thực dữ liệu biểu mẫu để kiểm tra xem các trường bắt buộc có trống không
  7. Xác thực địa chỉ email bằng FILTER_VALIDATE_EMAIL trong PHP
  8. Kiểm tra phần mở rộng tệp để cho phép các định dạng tệp nhất định (tệp PDF, Hình ảnh và MS Word)
  9. Gửi thư trả lời tự động cho người dùng, cho họ biết chúng tôi sẽ xử lý yêu cầu của họ

Hướng dẫn bằng video (Quy trình từng bước)

Cách tạo biểu mẫu liên hệ qua email PHP với tệp đính kèm

cũng đọc. Cách nhận Email từ biểu mẫu HTML bằng PHP

mã nguồn

Bây giờ bạn sẽ nhận được mã nguồn để tạo Biểu mẫu liên hệ gửi email PHP với tệp đính kèm

Biểu mẫu liên hệ HTML (Mã nguồn)

Trước hết, Tạo một chỉ mục tệp mới. php và dán mã biểu mẫu liên hệ HTML đã cho vào đó






 
 
 

 
 
 Document



 

Contact Form

required="">

Đầu ra biểu mẫu liên hệ

Làm cách nào để gửi email có tệp đính kèm trong PHP?
Biểu mẫu liên hệ PHP gửi email có tệp đính kèm

Mã nguồn CSS

Tiếp theo, tạo một phong cách mới. css và dán mã biểu mẫu liên hệ CSS bên dưới

*{
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
/* adding background image */
body{
  font-family: Arial, Helvetica, sans-serif;
}
/* Center content vertically and horizontally */
.container{
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100vh;
}
.form{
  width: 350px;
  height: 460px;
  background-color: white;
  box-shadow: 0 5px 30px black;
}
.heading h2{
  padding: 3px;
  margin: 30px 0px 10px 30px;
  border-style: none;
  background-color: transparent;
  color: black;
  font-size: 20px;
  font-weight: 600;
}
.formGroup{
  display: flex;
  justify-content: center;
}
.formGroup input{
  border: none;
  width: 80%;
  padding: 7px;
  margin-bottom: 15px;
  background-color: transparent;
  border-bottom: 2px solid rgb(68, 68, 68);
  color: black;
  font-weight: bold;
  font-size: 14px;
}

input:focus{
  outline: none;
  font-size: 17px;
  background-color: transparent;
}
.text{
  color: rgb(42, 41, 41);
  font-size: 13px;
}
.btn2{
  padding: 10px;
  outline: none;
  width: 150px;
  border-radius: 20px;
  border-style: none;
  background-color: rgb(28, 131, 28);
  color: whitesmoke;
  font-weight: 600;
  margin-top: 10px;
}
.btn2:hover {
 background-color: rgb(1, 63, 1);
}
.status {
 color: green;
 text-align: center;
 margin: 5px;
 font-weight: 600;
}

Biểu mẫu liên hệ PHP Gửi email (Mã nguồn)

Cuối cùng bên dưới là đoạn mã PHP của biểu mẫu liên hệ HTML để gửi dữ liệu biểu mẫu liên hệ đến email

[email protected]';

                // Sender Data
                $from = $email;
                $fromName = $name;
                
                // Subject
                $emailSubject = 'Contact Request Submitted by '.$name;
                
                // Message 
                $htmlContent = '

Customer Contact Detail!

Name: '.$name.'

Email: '.$email.'

Subject: '.$subject.'

Message: '.$message.'

'; // Header for sender info $headers = "From:". $fromName." <".$from.">"; if(!empty($uploadedFile) && file_exists($uploadedFile)){ // Boundary $semi_rand = md5(time()); $mime_boundary = "==Multipart_Boundary_x{$semi_rand}x"; // Headers for attachment $headers .= "\nMIME-Version: 1.0\n" . "Content-Type: multipart/mixed;\n" . " boundary=\"{$mime_boundary}\""; // Multipart boundary $message = "--{$mime_boundary}\n" . "Content-Type: text/html; charset=\"UTF-8\"\n" . "Content-Transfer-Encoding: 7bit\n\n" . $htmlContent . "\n\n"; // Preparing attachment if(is_file($uploadedFile)){ $message .= "--{$mime_boundary}\n"; $fp = @fopen($uploadedFile,"rb"); $data = @fread($fp,filesize($uploadedFile)); @fclose($fp); $data = chunk_split(base64_encode($data)); $message .= "Content-Type: application/octet-stream; name=\"".basename($uploadedFile)."\"\n" . "Content-Description: ".basename($uploadedFile)."\n" . "Content-Disposition: attachment;\n" . " filename=\"".basename($uploadedFile)."\"; size=".filesize($uploadedFile).";\n" . "Content-Transfer-Encoding: base64\n\n" . $data . "\n\n"; } $message .= "--{$mime_boundary}--"; $returnpath = "-f" . $email; // Send email $mail = mail($toEmail, $emailSubject, $message, $headers, $returnpath); // Delete attachment file from the server @unlink($uploadedFile); }else{ // Set content-type header for sending HTML email $headers .= "\r\n". "MIME-Version: 1.0"; $headers .= "\r\n". "Content-type:text/html;charset=UTF-8"; // Send email $mail = mail($toEmail, $emailSubject, $htmlContent, $headers); } // If mail sent if($mail){ $statusMsg = 'Your Message was submitted successfully!'; $msgClass = 'succdiv'; $postData = ''; }else{ $statusMsg = 'Your contact request submission failed, please try again.'; } } } }else{ $statusMsg = 'Please fill all the fields.'; } }

Từ cuối cùng

Bài viết trên blog này đã giải thích cho bạn cách tạo biểu mẫu người dùng đang hoạt động bằng cách sử dụng PHP với chức năng đính kèm và gửi email từ phía máy khách bằng chức năng gửi thư PHP. Nếu bạn cảm thấy khó hiểu bài viết này, bạn có thể hỏi trong phần bình luận bên dưới. Đề xuất và truy vấn của bạn luôn được chào đón. Nếu thấy hữu ích đừng quên SUBSCRIBE kênh YouTube của mình nhé

Làm cách nào để đính kèm và gửi tệp trong email bằng biểu mẫu PHP?

Gửi email kèm theo tệp đính kèm khi gửi biểu mẫu .
Nhận dữ liệu biểu mẫu đã gửi bằng cách sử dụng $_POST trong PHP
Xác thực dữ liệu biểu mẫu để kiểm tra xem các trường bắt buộc có trống không
Xác thực địa chỉ email bằng FILTER_VALIDATE_EMAIL trong PHP
Kiểm tra phần mở rộng tệp để cho phép các định dạng tệp nhất định (tệp PDF, Hình ảnh và MS Word)

Làm cách nào để thêm tệp đính kèm trong PHP?

Follow the steps given below: Create an HTML form: Below is the HTML source code for the HTML form. In the HTML tag, we are using “enctype='multipart/form-data” which is an encoding type that allows files to be sent through a POST method.

Làm cách nào để tạo biểu mẫu email dựa trên PHP với tệp đính kèm?

Kiểm tra và xác thực phần mở rộng tệp để cho phép các định dạng tệp nhất định (tệp PDF, Hình ảnh và MS Word). Tải tệp lên máy chủ bằng hàm PHP move_uploaded_file(). Thêm dữ liệu biểu mẫu và tệp đã tải lên vào nội dung email. Gửi email đến người nhận được chỉ định với tệp đính kèm bằng hàm PHP mail()