Hướng dẫn how do i create a php form email with an attachment? - làm cách nào để tạo email biểu mẫu php có tệp đính kèm?

Bài viết này chỉ cho bạn cách tạo biểu mẫu email dựa trên PHP hỗ trợ tệp đính kèm tệp. Bài viết cũng sẽ chỉ cho bạn cách xác thực loại và kích thước của tệp đã tải lên.

Biểu mẫu HTML với hộp tải lên tệp

Mã cho biểu mẫu HTML với hộp tải lên tệp được đưa ra bên dưới. Người dùng có thể nhấp vào nút ‘Duyệt, để chọn tệp từ máy cục bộ của mình.


 

Name: 


Email: 


Message:


Select A File To Upload:




Hình thức sẽ trông như thế này:

Xin lưu ý rằng chúng tôi đã thêm:


"enctype="multipart/form-data"

Trong khi xác định thẻ . Điều này là để nói với trình duyệt rằng biểu mẫu này sẽ được sử dụng để tải lên các tệp. Sau đó, chúng tôi đã thêm các trường của tên tên và các trường email và các trường email để thu thập thông tin người dùng. Trường biểu mẫu thứ ba là hộp tải lên tệp.



Khi nhấn nút Sub Sub Sub Sund, dữ liệu biểu mẫu cùng với dữ liệu tệp được đăng lên tập lệnh được trỏ bởi thuộc tính ‘hành động của biểu mẫu.

Nhận tệp đã tải lên trong tập lệnh PHP

Trong tập lệnh PHP, trước tiên chúng tôi sẽ xác thực việc gửi và nếu xác thực thành công, chúng tôi sẽ gửi bài đăng qua email.

Chúng ta có thể truy cập tệp được tải lên và các thuộc tính khác nhau của nó bằng cách sử dụng mảng $ _FILES. Mảng này sẽ chứa tên, kích thước, đường dẫn và các thuộc tính khác của tệp được tải lên. Mã bên dưới có tên, loại và kích thước của tệp đã tải lên:


//Get the uploaded file information
$name_of_uploaded_file =
    basename[$_FILES['uploaded_file']['name']];

//get the file extension of the file
$type_of_uploaded_file =
    substr[$name_of_uploaded_file,
    strrpos[$name_of_uploaded_file, '.'] + 1];

$size_of_uploaded_file =
    $_FILES["uploaded_file"]["size"]/1024;//size in KBs

Mã trên là nhận các thuộc tính khác nhau của tệp được tải lên từ mảng $_FILES[].

Xác thực kích thước và phần mở rộng của tệp đã tải lên

Giả sử chúng tôi không muốn cho phép các tệp lớn hơn kích thước 100kb và chúng tôi chỉ muốn cho phép các tệp hình ảnh được tải lên. Mã xác nhận diễn ra như thế này:


//Settings
$max_allowed_file_size = 100; // size in KB
$allowed_extensions = array["jpg", "jpeg", "gif", "bmp"];

//Validations
if[$size_of_uploaded_file > $max_allowed_file_size ]
{
  $errors .= "\n Size of file should be less than $max_allowed_file_size";
}

//------ Validate the file extension -----
$allowed_ext = false;
for[$i=0; $isetTXTBody[$text];

$message->addAttachment[$path_of_uploaded_file];

$body = $message->get[];

$extraheaders = array["From"=>$from, "Subject"=>$subject,"Reply-To"=>$visitor_email];

$headers = $message->headers[$extraheaders];

$mail = Mail::factory["mail"];

$mail->send[$to, $headers, $body];

Lớp


"enctype="multipart/form-data"
0 giúp soạn tin một tin nhắn MIME. Trong mã trên, một đối tượng mail_mime được tạo, thân văn bản được cập nhật [

"enctype="multipart/form-data"
1] và tệp đính kèm được thêm vào [

"enctype="multipart/form-data"
2]

Thông báo được mã hóa MIME sau đó được gửi bằng lớp thư.

Mẫu tải lên PHP mẫu

Nhấn vào đây để tải xuống bản tin php-form-toorm.zip

Việc tải xuống chứa một biểu mẫu tải lên PHP hoàn chỉnh gửi được tải lên qua email.

Cách cài đặt thư viện lê

Trong bài viết này, chúng tôi đã sử dụng các lớp Pear :: Mail và Pear :: mail_mime để gửi email với tệp đính kèm. Trước khi sử dụng các lớp này, bạn cần cài đặt gói lê trên máy chủ của mình. Nó nằm ngoài phạm vi của hướng dẫn này để thảo luận về việc lắp đặt lê. Nhưng, tôi muốn cho bạn một mẹo nhanh. Nhận tập lệnh trình cài đặt lê từ

//pear.php.net/go-pear

Lưu tệp dưới dạng pear-installer.php. Tải tệp này lên máy chủ của bạn trong bất kỳ thư mục nào. Sau đó, chạy tệp này từ trình duyệt của bạn, như thế này:

//www.yourdomain.com/pear-installer.php

Điều này hiển thị giao diện web để cài đặt lê trên trang web của bạn. Giao diện cho thấy hướng dẫn chi tiết. Sau khi PEAR được cài đặt, tìm kiếm và cài đặt các gói Mail Mail và Mail Mail_Mime.

Cũng xem: Các biểu mẫu tải lên tệp miễn phí khác từ reusableforms.com: more free file upload forms from ReusableForms.com

Xem thêm

  • Một mẫu email đơn giản ra khỏi lò
  • Cách thêm biểu mẫu email trong trang web WordPress của bạn
  • Gửi các bài nộp biểu mẫu đến email bằng cách sử dụng 'mailto:'
  • Tại sao tập lệnh PHP của tôi không gửi email?

Làm thế nào tệp đính kèm email được gửi với PHP?

Hàm Php Mail [] với một số tiêu đề loại MIME có thể được sử dụng để gửi email với tệp đính kèm trong PHP. Trong mã ví dụ sau, các tiêu đề loại nội dung và mime được sử dụng với hàm mail [] để gửi email với tệp đính kèm bằng PHP. $ đến - Địa chỉ email của người nhận. $ từ - địa chỉ email của người gửi.. In the following example code, MIME and Content-Type headers are used with mail[] function to send email with attachment using PHP. $to – Recipient email address. $from – Sender email address.

Cách tốt nhất để gửi email từ PHP là gì?

Sử dụng hàm php mail [].Hàm thư tích hợp của PHP [] là một trong những cách đơn giản nhất để gửi email trực tiếp từ chính máy chủ web.Nó chỉ cần ba tham số bắt buộc: địa chỉ email, chủ đề email và thân thông báo và gửi nó cho người nhận.. PHP's built-in mail[] function is one of the simplest ways to send emails directly from the web server itself. It just takes three mandatory parameters: the email address, email subject and message body—and sends it to the recipient.

Bạn có thể tạo một biểu mẫu trong PHP không?

Các biểu mẫu có thể được gửi đến trang web bằng PHP.Mục đích chính của việc gửi biểu mẫu cho bản thân là để xác thực dữ liệu.Xác thực dữ liệu có nghĩa là kiểm tra dữ liệu cần thiết được nhập vào các trường biểu mẫu.PHP_Self là một biến trả về tập lệnh hiện tại được thực thi.. The main purpose of submitting forms to self is for data validation. Data validation means checking for the required data to be entered in the form fields. PHP_SELF is a variable that returns the current script being executed.

Chức năng nào được sử dụng để gửi email trong PHP?

Thông thường, có hai tùy chọn để gửi email với chức năng PHP [] của Php [] hoặc thư viện gửi thư như PHPMailer.inbuild PHP mail[] function or a mail-sending library such as PHPMailer.

Bài Viết Liên Quan

Chủ Đề