Hướng dẫn email with multiple attachments (html5 php download) - email có nhiều tệp đính kèm (tải xuống html5 php)

bởi Vincy. Sửa đổi lần cuối vào ngày 19 tháng 7 năm 2022.

Email có nhiều tính năng tệp đính kèm là một yêu cầu mong muốn nhất đối với chức năng gửi thư. & NBSP; Trong hướng dẫn này, chúng tôi sẽ tìm hiểu về việc gửi email có nhiều tệp đính kèm. Chúng tôi sẽ sử dụng phpmailer. Tệp đính kèm & nbsp; các tệp là & nbsp; được chọn và & nbsp; được đính kèm với email thông qua biểu mẫu HTML.

Trong ví dụ này, tôi đã sử dụng JQuery Ajax để gọi tập lệnh thư bằng cách đăng dữ liệu email với các tệp đính kèm. Nếu bạn đang tìm kiếm một email có tệp đính kèm duy nhất, hãy tham khảo hướng dẫn trước đây của tôi & NBSP; & NBSP; Cách gửi email bằng cách sử dụng lớp PHPMailer.

Trong ví dụ này, tôi đã tạo một biểu mẫu HTML chứa các trường đầu vào cho tên người gửi, email, chủ đề, & nbsp; Nội dung và các tập tin sẽ được đính kèm. Trong biểu mẫu này, trường đầu vào tệp được đặt với thuộc tính của nhiều người khác để cho phép chọn nhiều hơn một tệp cho tệp đính kèm email.

Các tệp được chọn trong mảng $ _Files Global & NBSP; được lặp lại và được gắn vào email bằng cách sử dụng đối tượng PHPMailer. Trước đây, chúng tôi đã thấy một ví dụ về việc gửi liên hệ & nbsp; email với một tệp đính kèm duy nhất.single attachment.

Ảnh chụp màn hình sau đây hiển thị biểu mẫu HTML với dữ liệu email được lưu trữ trước và đầu vào tệp hiển thị số lượng của nhiều tệp đính kèm.

Chọn nhiều tệp đính kèm bằng dạng HTML

Biểu mẫu HTML sau đây chứa các trường đầu vào để nhập dữ liệu email như tên và email của người gửi, chủ đề và nội dung cơ thể. Nó cũng chứa đầu vào tệp để chọn nhiều hơn một tệp bằng cách bật thuộc tính của nhiều người khác & NBSP;


    
Attachment

Đăng dữ liệu biểu mẫu qua JQuery Ajax

Khi gửi biểu mẫu, giá trị của các trường đầu vào được nhập bởi người dùng được xác thực bằng jQuery. Nếu tất cả các trường được xác thực và chức năng xác thực trả về đúng, thì cuộc gọi AJAX sẽ được tạo để yêu cầu tập lệnh gửi email.

Sau khi thực hiện tập lệnh thư, khối phản hồi AJAX sẽ cập nhật giao diện người dùng để xác nhận người dùng về trạng thái đã gửi của email.



$[document].ready[function [e]{
$["#frmEnquiry"].on['submit',[function[e]{
	e.preventDefault[];
	$['#loader-icon'].show[];
	var valid;	
	valid = validateContact[];
	if[valid] {
		$.ajax[{
		url: "mail-send.php",
		type: "POST",
		data:  new FormData[this],
		contentType: false,
		cache: false,
		processData:false,
		success: function[data]{
		$["#mail-status"].html[data];
		$['#loader-icon'].hide[];
		},
		error: function[]{} 	        
		
		}];
	}
}]];

function validateContact[] {
	var valid = true;	
	$[".demoInputBox"].css['background-color',''];
	$[".info"].html[''];
	$["#userName"].removeClass["invalid"];
	$["#userEmail"].removeClass["invalid"];
	$["#subject"].removeClass["invalid"];
	$["#content"].removeClass["invalid"];
	
	if[!$["#userName"].val[]] {
		$["#userName"].addClass["invalid"];
        $["#userName"].attr["title","Required"];
        valid = false;
	}
    if[!$["#userEmail"].val[]] {
        $["#userEmail"].addClass["invalid"];
        $["#userEmail"].attr["title","Required"];
        valid = false;
    }
    if[!$["#userEmail"].val[].match[/^[[\w-\.]+@[[\w-]+\.]+[\w-]{2,4}]?$/]] {
        $["#userEmail"].addClass["invalid"];
        $["#userEmail"].attr["title","Invalid Email"];
        valid = false;
    }
	if[!$["#subject"].val[]] {
		$["#subject"].addClass["invalid"];
        $["#subject"].attr["title","Required"];
		valid = false;
	}
	if[!$["#content"].val[]] {
		$["#content"].addClass["invalid"];
        $["#content"].attr["title","Required"];
		valid = false;
	}
	
	return valid;
}

}];

Mã PHP để đính kèm nhiều tệp vào email

Trong mã PHP này, nó tạo ra đối tượng thư cho lớp PHPMailer. Sử dụng đối tượng này, các tùy chọn email được đặt trước khi gọi chức năng gửi.

Nhiều tệp được đăng qua biểu mẫu HTML sẽ được đọc bằng cách sử dụng biến mảng $ _FILES. Mảng này được lặp lại tệp tương ứng & nbsp; sẽ được đính kèm bằng cách gọi hàm addAttachment [] với tham chiếu của đối tượng thư.

Chủ Đề