Php gửi yêu cầu đăng tệp

Tải lên tệp trong PHP cho phép bạn tải các tệp có phần mở rộng khác nhau lên máy chủ. Chúng tôi có thể sử dụng biểu mẫu HTML và cho phép người dùng tải tệp lên máy chủ. Các tệp này được lưu trữ trong một thư mục tạm thời trừ khi được chuyển đến vị trí đích để lưu trữ vĩnh viễn. Nhưng để tải lên tệp trong PHP hoạt động, chúng tôi phải đảm bảo một số cài đặt cấu hình được đặt phù hợp

Chương trình sau đại học. Phát triển web đầy đủ ngăn xếp

hợp tác với Caltech CTME Đăng ký ngay

Làm cách nào để định cấu hình cài đặt PHP để đảm bảo tải lên tệp mượt mà trong PHP?

Chúng tôi cần định cấu hình các cài đặt cụ thể để cho phép tải lên tệp trong PHP. Nếu không thực hiện đúng các cài đặt này, quá trình tải lên sẽ không thành công hoặc không hoạt động theo cách chúng tôi muốn. Để định cấu hình các cài đặt này, chúng ta cần tìm tệp php. tập tin ini

Nếu bạn biết về php. ini, nó tốt và tốt. Nhưng nếu bạn không biết vị trí chính xác, hãy sử dụng mã bên dưới để xác định vị trí đó

php_ini_loaded_file[] là một chức năng tích hợp sẵn. Tạo tệp PHP bằng mã này và mở tệp đó từ trình duyệt của bạn thông qua máy chủ cục bộ để lấy vị trí của tệp php. tập tin ini. Khi bạn có vị trí, bạn cần tìm và định cấu hình một số cài đặt. Các cài đặt chính cùng với các giá trị được đề xuất là

;

file_uploads = Bật

;

upload_tmp_dir =

;

upload_max_filesize = 16M

;

max_file_uploads = 20

;

post_max_size = 20M

max_input_time = 60

memory_limit = 128M

max_execution_time = 30

Cài đặt khóa tốt nhất để tải lên tệp trong PHP là gì?

  • file_uploads. Khóa file_uploads xác định có cho phép tải tệp lên hay không. Theo mặc định, nó được đặt thành Bật và đó chính xác là những gì chúng tôi muốn
  • upload_max_filesize. Khóa này mô tả kích thước tệp tối đa được phép khi tải lên. Bạn có thể đã thấy điều này khi tải lên ảnh hồ sơ của mình trên một số nền tảng. Khi bạn tải lên một hình ảnh có độ phân giải cao hơn, nó cho phép kích thước tệp là [n]MB. Khóa này là thứ xử lý phần cho phép kích thước tệp tối đa cho mã PHP. Kích thước mặc định được đặt thành 2MB. Nhưng bạn có thể thay đổi nó theo sở thích và yêu cầu của bạn. Bạn cũng có thể truy cập và thay đổi cài đặt của phím này từ. tập tin htaccess
  • upload_tmp_dir. Đây là thư mục lưu file upload tạm thời. Bạn có thể đặt nó thành bất cứ thứ gì. Tuy nhiên, nếu bạn không cung cấp đường dẫn tại đây, hệ thống sẽ chọn một đường dẫn mặc định làm thư mục tạm thời
  • post_max_size. Phím này cho phép bạn đặt giới hạn tối đa cho việc lưu trữ dữ liệu POST. Khi sử dụng tính năng tải tệp lên bằng PHP, tệp được gửi và lưu trữ cùng với dữ liệu của yêu cầu POST. Do đó, nó phải luôn lớn hơn giá trị upload_max_filesize
  • max_file_uploads. Với cài đặt khóa này, bạn có thể định cấu hình số lượng tệp tối đa được tải lên thông qua một yêu cầu. Giá trị mặc định cho khóa max_file_uploads là 20
  • max_input_time. Lệnh này xác định lượng thời gian tối đa được phép để tập lệnh PHP phân tích cú pháp dữ liệu đầu vào của [các] tệp đã tải lên. Giá trị được chỉ định bằng giây và 60 giây thường là một số lượng tốt
  • giới hạn bộ nhớ. Khóa cho biết bộ nhớ tối đa mà tập lệnh PHP có thể tiêu thụ. Kích thước mặc định là 128 MB, đây là một dung lượng đáng kể. Tuy nhiên, nếu bạn vẫn gặp khó khăn khi tải lên các tệp lớn, hãy tăng số. Một điều đáng chú ý khác là luôn giữ số lớn hơn giá trị post_max_size
  • max_execution_time. Nó cho biết số thời gian tối đa tính bằng giây được phép để tập lệnh chạy. Giá trị của khóa này phải tỷ lệ thuận với kích thước của tệp được tải lên

Khóa học mới. Phát triển Full Stack cho người mới bắt đầu

Tìm hiểu Git Command, Angular, NodeJS, Maven và hơn thế nữa Đăng ký ngay

Tạo biểu mẫu HTML để tải lên tệp trong PHP

Bây giờ chúng ta đã hoàn tất cài đặt cấu hình, hãy tiếp tục với việc tạo biểu mẫu HTML để tải tệp lên. Đối với điều này, chúng tôi sẽ tạo chỉ mục. php và lưu nó vào trong một thư mục. Dưới đây là mã cho chỉ mục. tập tin php

Tải lên tệp PHP

Tải tệp lên.

    

  

Khi bạn chạy đoạn mã trên thông qua máy chủ cục bộ của mình, nó sẽ cho kết quả như sau

đầu ra

Một số điều quan trọng cần lưu ý từ biểu mẫu

Có một số điều cần lưu ý trong mẫu HTML trên

  • action="fileUpload. php". Giá trị trong trường hành động đề cập đến tệp sẽ xử lý tệp tải lên trong PHP. Chúng tôi sẽ tạo tệp trong giây lát
  • phương pháp = "POST". Giá trị này cho biết trình duyệt về hành động của tập lệnh để tải lên tệp đã chọn
  • enctype="multipart/form-data". Giá trị này đề cập đến loại nội dung của các tệp sẽ được chấp nhận để tải lên. Nó cũng cho biết loại mã hóa mà tập lệnh PHP sẽ sử dụng để tải lên. Giá trị multipart/form-data cho phép chúng tôi tải tệp lên bằng phương thức POST. Nó cũng đảm bảo các ký tự của tệp không được mã hóa trong khi gửi biểu mẫu. Ngoài multipart/form-data, enctype còn chấp nhận các giá trị application/x-www-form-urlencoded và text/plain
  • Các biến thông báo được sử dụng ở đầu biểu mẫu sẽ hiển thị trạng thái tải lên. Chúng cũng sẽ hiển thị thông báo thành công hoặc lỗi tùy thuộc vào trạng thái tải lên

Chạy tệp qua máy chủ sẽ cho phép bạn duyệt và chọn bất kỳ tệp nào từ máy tính của mình

Khóa học Full Stack Web Developer

Để trở thành chuyên gia về MEAN Stack Xem khóa học

Tạo logic tải lên để tải lên tệp trong PHP

Biểu mẫu HTML đại diện cho mã phía máy khách. Bây giờ biểu mẫu của chúng ta đã sẵn sàng, hãy chuyển sang kịch bản phía máy chủ để xử lý tệp tải lên trong PHP. Dưới đây là mã mà bạn cần sao chép trong tệpUpload. tập tin php

Chủ Đề