Tính Số Lượt Tải về
Chương Trình Xem Lịch Sử Tải về
= Tải về và Cài đặt Mã PHP =
Đây là phần giới thiệu về một chương trình cho phép bạn biết số lượt tải xuống khi người dùng trang web tải xuống và sử dụng một chương trình. Có thể thiết lập bộ đếm lượt tải xuống trên trang và quản trị viên trang cũng có thể dễ dàng kiểm tra lịch sử tải xuống trên trình duyệt.
Lưu ý: Nếu một trang có liên kết tải về hiển thị thông báo yêu cầu lưu tệp và bị đóng mà không khởi chạy quá trình tải về, nó vẫn sẽ được tính là một lượt tải về. Điều này là do nó đếm số lần nhấp vào liên kết.
Từ trang này, tải về tệp "zip" được nén của chương trình và cài đặt nó trên trang web của bạn. Tệp có tên "count.php", nhưng bạn có thể đổi tên nó.
Bạn có quyền sử dụng và sửa đổi mã nguồn, bao gồm cả việc thay đổi thiết kế trang.
Vui lòng sửa đổi mã nguồn để thêm các chức năng mới hoặc thay đổi thiết kế để tạo ra một trang dễ hiểu và sử dụng.
Giải nén tệp "count.php.zip" đã tải về, và một tệp có tên "count.php" sẽ được tạo ra. Vui lòng tạo một thư mục như là "download_history" và lưu nó ở đó.
Tệp "zip" chỉ chứa một tệp, "count.php," và "màn hình đăng nhập" cho người quản trị được tạo tự động.
Đây là phương pháp cài đặt chính. Những phần chính này cũng được liệt kê trong tệp PHP.
- Cài Đặt Mật Khẩu:
- Một mật khẩu phải được đặt cho trang quản trị viên.
- Mật khẩu mặc định là "admin", nhưng bạn hãy thay đổi nó thành bất kỳ chuỗi nào bạn muốn.
- Để tăng cường bảo mật, hãy đặt một mật khẩu mạnh.
- Cài Đặt Tệp để Tải Xuống:
- Hoàn tất cài đặt cho "$targetFiles = array()".
- Đây là phần như "'1' => 'Đường dẫn của bạn/tên tệp.zip',".
- Thư mục Lưu Tệp Log:
- Một thư mục có tên "log" cần thiết trên máy chủ từ xa để lưu trữ các tệp log ghi lại lịch sử.
- Chương trình này tự động tạo một thư mục có tên "log" khi bạn tải lên lần đầu tiên. Tuy nhiên, nếu bạn nhận được một thông báo như "Không có thư mục", vui lòng tạo và tải lên nó một cách riêng biệt.
- Hiển Thị Lần Tải Lên Lần Đầu:
- Khi tải lên lần đầu tiên, "ngày" và số "0" có thể được hiển thị trong lịch sử.
- Điều này là do các tệp log như "count_1.log" chứa ngày tải lên cũng được tạo ra trong thư mục "log" được tạo tự động.
- Nếu điều này làm phiền bạn, hãy tải một tệp như "count_1.log" từ máy chủ từ xa, xóa dữ liệu và tải lên nó.
- Tuy nhiên, trạng thái "ngày" và "0" cũng có thể là một lịch sử của khi bộ đếm bắt đầu. Nếu có tải về vào ngày đó, nó sẽ được đếm lên.
- Hiển Thị Trang Xem của Quản Trị Viên:
- Khi quản trị viên xem trang, bạn có thể chọn xem URL hay chỉ tên tệp.
- Nếu đặt nhiều bảng lịch sử trên cùng một trang, bạn có thể chọn giữ chúng theo thứ tự được đặt bởi "$targetFiles = array()" hoặc sắp xếp chúng theo thứ tự của ngày khi xuất hiện bản ghi mới.
- Thiết Kế Trang, CSS, v.v.:
- Hãy điều chỉnh thiết kế trang, CSS, v.v., phù hợp để trang dễ đọc.
- Một thời gian trước, CSS được viết dưới dạng một tệp bên ngoài, nhưng bây giờ nó được viết trực tiếp trong cùng một trang để bạn có thể tham khảo các thẻ khi thay đổi CSS.
- Thiết Lập Liên Kết Tải Xuống Trên Trang:
- Thông thường, thẻ <a> tải về được viết như sau:
<a href="/download_history/sample.zip" download="File name when downloading.zip">[Chuỗi tùy ý]</a>
- Trong chương trình này, viết thẻ <a> tải về như sau:
- Phù hợp số trong "download=1" với số được đặt trong "$targetFiles = array()". Cài đặt này liên quan đến các tệp cần tải về.
- Hãy phù hợp đường dẫn với trang của bạn.
- Hãy tải lên trang với liên kết tải về sau khi đã tải lên tệp với "$targetFiles = array()" (trong ví dụ này, "count.php").
[Ví dụ]Sao chép<a href="/download_history/count.php?download=1" download="File name when downloading.zip" target="_blank">[Chuỗi tùy ý]</a> - Thông thường, thẻ <a> tải về được viết như sau:
- Mã Hiển Thị Lịch Sử Trong Một Dòng:
- Tạo JavaScript sau đây và đặt nó trên trang bạn muốn hiển thị:
- Phù hợp số trong "dsp_count=1" với số được đặt trong "$targetFiles = array()".
- Nếu bạn xóa "&day_dsp=on," chỉ "tổng số" sẽ được hiển thị mà không có hiển thị "hôm nay/hôm qua".
- Hãy phù hợp đường dẫn với trang của bạn.
[Ví dụ] Sao chép<script type="text/javascript" src="/download_history/count.php?dsp_count=1&day_dsp=on"></script>Tổng Lượt Tải Xuống: 1865 [Hôm nay: 23 Hôm qua: 76]Tổng Lượt Tải Xuống: 1865
Khi hiển thị nhiều bảng, cấu hình mặc định của chương trình này là sắp xếp theo thời gian cập nhật cuối cùng. Nếu bạn muốn sắp xếp theo tổng số lượt tải về, hãy tạo một tệp mới như "total_downloads.php" và thay thế phần sau.
- Thay Đổi Trong Phần Bình Luận
Thay thế các phần bình luận trong phần sau:// Chọn có thay thế mảng gốc bằng một mảng mới được sắp xếp theo thứ tự của các nhật ký mới khi hiển thị nhiều bảng trên một trang - Thay Đổi Trong Mã Và Bình Luận
Thay thế mã và bình luận trong phần sau. Coi nó như một khối đơn.// Lấy đường dẫn tệp và ngày cập nhật cuối cùng của chúng (được sắp xếp giảm dần theo ngày) $filePathsAndDates = array(); foreach ($filePath as $key => $path) { if (file_exists($path)) { $filePathsAndDates[$key] = filemtime($path); } else { // Xuất lỗi này vào nhật ký và quyết định liệu có tiếp tục hay hủy bỏ quá trình xử lý echo "Lỗi: Tệp không tồn tại - $path<br>"; } } // Sắp xếp giảm dần theo ngày cập nhật cuối cùng (ngày mới nhất đứng đầu) arsort($filePathsAndDates); // Xây dựng lại mảng các đường dẫn tệp đã được sắp xếp $sortedFilePaths = array(); foreach ($filePathsAndDates as $key => $date) { $sortedFilePaths[$key] = $filePath[$key]; }
- Tạo và cài đặt tập tin
- Khi tạo nhiều trang, để tránh lỗi trong việc cài đặt các mục khi thêm nội dung một cách đồng đều, hãy tạo phần mã sau đây thành một tệp ngoại vi và tải nó vào phần đang triển khai hiện tại với một mã khác. Hãy tạo một tệp ngoại vi với tên như "config.php".
// Cấu hình các tệp cần tải về. Nếu có nhiều tệp, thêm chúng như '2', '3', '4', v.v. Đồng thời, '0' cũng là hợp lệ. // Sử dụng "http:" hoặc "https:" cho giao thức. $targetFiles = array( '1' => 'YourURL/FileName.zip', '2' => 'YourURL/FileName.pdf', '3' => 'YourURL/FileName.pdf', '4' => 'YourURL/FileName.pdf', );
- Mã để đọc các tập tin bên ngoài và nơi đặt chúng
- Bao gồm tệp được tạo với tên như "config.php" tại vị trí sau với mã "include __DIR__ . '/config.php';".
- Chú thích hoặc xóa phần sau và thay thế nó bằng mã "include __DIR__ . '/config.php';".
//$targetFiles = array( // '1' => 'YourURL/FileName.zip', // '2' => 'YourURL/FileName.pdf', // '3' => 'YourURL/FileName.pdf', // '4' => 'YourURL/FileName.pdf', //);
// Mảng lưu trữ tổng số lượt download $totalDownloads = array(); // Lấy đường dẫn file và tổng số lượt download của nó foreach ($filePath as $key => $path) { if (file_exists($path)) { $line = file($path); $total = 0; // Tổng số lượt tải xuống cho mỗi hàng foreach ($line as $val) { $valArray = explode(',', $val); $total += trim($valArray[1]); } // Lưu tổng số lượt download vào một mảng $totalDownloads[$key] = $total; } else { // Xuất lỗi này ra nhật ký và quyết định tiếp tục hay hủy bỏ quá trình echo "Lỗi: Tệp không tồn tại - $path<br>"; } } // Sắp xếp theo tổng số lượt tải xuống theo thứ tự giảm dần arsort($totalDownloads); // Xây dựng lại mảng đường dẫn file đã được sắp xếp $sortedFilePaths = array(); foreach ($totalDownloads as $key => $total) { $sortedFilePaths[$key] = $filePath[$key]; }
<!doctype html> <html> <head> <meta charset="UTF-8"> <title>DownloadHistory</title> <meta name="robots" content="NOINDEX,NOFOLLOW"> </head> <body> <?php // Biến nó thành một tập tin bên ngoài và tải nó vào trang được sử dụng với ``include __DIR__ . '/config.php';''. // Cấu hình các tệp cần tải về. Nếu có nhiều tệp, thêm chúng như '2', '3', '4', v.v. Đồng thời, '0' cũng là hợp lệ. // Sử dụng "http:" hoặc "https:" cho giao thức. $targetFiles = array( '1' => 'YourURL/FileName.zip', '2' => 'YourURL/FileName.pdf', '3' => 'YourURL/FileName.pdf', '4' => 'YourURL/FileName.pdf', ); ?> </body> </html>
include __DIR__ . '/config.php';
Có thể có lỗi trong từ ngữ vì nó là bản dịch từ phiên bản tiếng Nhật. Chúng tôi xin lỗi vì sự bất tiện này, nhưng nếu có lỗi trong từ ngữ trong mã, hãy tự chỉnh sửa hoặc điều chỉnh.