Tiêu đề php excel

Có lẽ cũng không cần giới thiệu nhiều về nhu cầu "giấu diếm" này vì hiện nay có khá nhiều trang sử dụng cách quản lý tải xuống như vậy và cũng có một số lượng cũng không kém các trang mới muốn tìm .  trang web to hidden path of the files download.
Quản lý băng thông và "tài sản" là 2 lý do chính để sử dụng 1 chương trình quản lý tải xuống trên trang web . Bạn thử tưởng tượng có 1 . Bạn thử tưởng tượng có 1. Bạn thử tưởng tượng có 1 trang web cho tải nhạc hoặc ebook với 1 mức phí nho nhỏ, nếu liên kết để tải trực tiếp các tệp bị lộ tùm lum thì thứ nhất là "lỗ vốn", thứ hai là băng thông sẽ hết sạch nhanh  đến khoảng trước khi bạn đang xem chuyện gì đã xảy ra.
Một số lý do khác cũng "chính đáng" không kém ví dụ như bạn muốn đếm số lần tải xuống tệp; . Trong những trường hợp như vậy, hãy sử dụng 1 chương trình quản lý tải xuống trên trang web tệp của bạn tự tải lên và các tệp này nằm lại trong cơ sở dữ liệu hoặc được đặt trong 1 thư mục từ bên ngoài web không đọc được. Trong những trường hợp như vậy, hãy sử dụng 1 chương trình quản lý tải xuống trên trang web sẽ khá thuận lợi.
Tuy nhiên, cũng có một số điều cần lưu ý trước khi bạn quyết định sử dụng 1 chương trình quản lý tải xuống trên trang web . .  của mình.  

  • Tốc độ download sẽ chậm hơn rất nhiều so với download file trực tiếp
  • Máy chủ sẽ phải xử lý nhiều công việc hơn so với khi cho phép tải xuống tệp trực tiếp
  • Nếu tệp được lưu trữ trong cơ sở dữ liệu, bạn nên lưu ý rằng số lượng kết nối đồng thời vào cơ sở dữ liệu là có hạn, trong khi 1 tệp có dung lượng lớn, có thể phải mất tới nửa tiếng hoặc hơn thế nữa để tải xuống
CHƯƠNG TRÌNH START TIẾN
Giả sử bạn có 1 tệp tài liệu. zip trong cùng thư mục với tệp tải xuống. php. Nhưng chỉ mình bạn biết là file tài liệu. zip này nằm ở đâu, người khác muốn tải xuống thì phải truy cập vào tệp tải xuống. php của bạn. Mã nguồn của tệp tải xuống. php will like after.  

Mã PHP

//file download.php

Ủa, chỉ có nhiều như vậy thôi à?  Đúng vậy, chỉ có vỏn vẹn 10 dòng là có 1 trình quản lý download chương trình . zip, ta còn phải làm nhiều việc để chương trình hoàn thiện hơn. ].
Đầu tiên, ta mở tệp tài liệu. zip to read at binary mode [nhị phân].

Mã PHP

$fp fopen[$filename"rb"];.  

Tiếp tục theo báo cáo cho trình duyệt biết dữ liệu được trả về từ máy chủ là dữ liệu nhị phân chứ không phải là văn bản HTMl như thông thường:

Mã PHP

header["Content-type: application/octet-stream"];  

.
Đồng thời ta cũng thông báo cho trình duyệt biết dung lượng của tệp sẽ được tải xuống.

Mã PHP

header["Content-length: " filesize[$filename]];  

.
Và cuối cùng là đọc tệp nội dung và lặp lại để trình duyệt tải xuống.

Mã PHP

fpassthru[$fp];  

.
Lệnh fpassthru[$fp]; .

Mã PHP

$content fread[$handlefilesize[$filename]];
echo 
$content;  

Như vậy chương trình này cũng không có gì khác với các chương trình PHP thông thường ngoài 2 lệnh header[]. In the command

Mã PHP

header["Content-length: " filesize[$filename]];  

không có gì là khó hiểu, lệnh này thông báo cho trình duyệt biết dung lượng của tệp chuẩn bị tải xuống [thực ra không có lệnh này thì quá trình tải xuống vẫn diễn ra như bình thường]. Trục xoay vấn đề ở lệnh

Mã PHP

header["Content-type: application/octet-stream"];  

.
Lệnh

Mã PHP

header["Content-type: application/octet-stream"];  

sẽ thông báo cho trình duyệt biết dữ liệu chuẩn được tải xuống là dữ liệu nhị phân. Vì dữ liệu nhị phân nên trình duyệt sẽ thực hiện quá trình tải xuống và lưu tệp thay vì hiển thị trên trình duyệt như 1 trang HTML thông thường.
Thử chạy ví dụ trên vài lần, thay thế tệp tài liệu. zip bằng một số tệp khác nhau [ví dụ tệp Word, PDF, Excel. ] và thử trên một vài trình duyệt khác nhau, bạn sẽ thấy có vài chỗ hơi khó chịu.  
  • Trình duyệt sẽ mặc định lưu tệp vào đĩa với tên là tải xuống. php. You must revert your file name for true before open file ra read
  • Trong một số trường hợp, thay vì hỏi lưu tệp vào đĩa, trình duyệt sẽ mở luôn tệp [ví dụ: chạy Word hoặc Acrobat mở luôn tệp vừa được tải xuống]
Để giải quyết 2 vấn đề khó chịu trên cũng không có gì khó khăn lắm, ta chỉ cần thêm 1 lệnh header[] nữa thôi

Mã PHP

header['Content-disposition: attachment; filename="'.$filename.'"'];  

Tham số "tệp đính kèm" của tiêu đề "Bố trí nội dung" sẽ thông báo cho trình duyệt biết là nên tải xuống và lưu tệp thay vì mở. Tham số "filename=" sẽ thông báo cho trình duyệt biết tên của tệp đang được tải xuống.  CẢI TIẾN TRÌNH
Cho đến bây giờ chương trình của chúng ta vẫn còn thô sơ, chúng ta vẫn cần chúng .  
  • Cho phép người dùng chọn tệp để tải xuống. Hiện tại chương trình của chúng ta mới cho phép download 1 file duy nhất
  • Check tra data input from user. Đây là một công việc luôn nên làm. Chương trình cho phép sử dụng tùy chọn tệp để tải xuống thì cũng cần phải kiểm tra kỹ kẻo chính tệp cấu hình, nguồn tệp hoặc mật khẩu tệp của bạn bị tải xuống thì phiền
Cho phép người dùng chọn tệp để tải xuống.  Thao tác này có thể khá đơn giản đối với bạn. Chương trình sẽ nhận vào tệp tham số từ URL [ví dụ. Tải xuống. php?file=tài liệu. nén]. Xử lý đoạn mã như sau.  

Mã PHP

$fp fopen[$filename"rb"];.  0

--------------------------------------- .
-------------------> BỔ SUNG BÀI VIẾT

Chủ Đề