Как я могу отобразить счетчик, который подсчитывает количество скачиваемых файлов? Я видел это раньше. «Скачан 450 раз». Благодарю.PHP - Количество загруженных раз
ответ
Не позволяйте пользователю загрузить файл непосредственно, но корыто сценария вроде следующего ...
<?php
$file = $_REQUEST['file'];
$dldir = "downloads/";
if (
(file_exists($dldir.$file) && // file exists
(strpos($file, "../") === false) && // prevent an attacker from switching to a parent directory
) {
header('Content-type: '.mime_content_type($dldir.file));
header("Content-Transfer-Encoding: binary");
header("Content-Length: " . filesize($dldir.$file) ."; ");
header('Content-Disposition: attachment; filename="'.$file.'"');
echo file_get_contents($dldir.$file);
/** Update the counter here, e.g. by using mysql **/
} else {
die("File not found");
}
?>
Также будьте осторожны, чтобы не разрешать загрузку файлов, таких как/etc/passwd, при создании пользовательских сценариев загрузки. – Kaivosukeltaja
Я бы УКАЗАЛ, в какой папке для получения файла, не позволяйте (например, Kaivos .. сказал), пользователи захватывают файл от вас, как/etc/passwd. – Jakub
Правильно ... Я добавил код, чтобы это не происходило. – ty812
Если вы хотите сделать это с помощью PHP, вам нужно контролировать загрузку в PHP-скрипте. В основном это сводится к следующим двум линиям псевдокода:
set_number_of_downloads(get_number_of_downloads() + 1);
readfile($file_being_downloaded);
On Apache вы могли бы mod_rewrite обновить базу данных при запросе файла. Это имеет преимущество скорости отправки (может использоваться файл sendfile), и вам не нужно менять URL-адреса или структуру каталогов.
#!/usr/bin/perl
$| = 1;
$dbh = DBI->connect("dbi:mysql:database=; host=localhost; user=; password=")
or die "Connecting from PHP to MySQL database failed: $DBI::errstr";
while (<STDIN>) {
$dbh->query(... update database ...);
print $_;
}
http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html#rewriteengine
- 1. Ограниченное количество загруженных файлов
- 2. Количество загруженных файлов
- 3. Уменьшить количество загруженных фотографий
- 4. php найти количество случаев (количество раз)
- 5. Количество классов, загруженных в java
- 6. Как отобразить «живое» количество загруженных файлов?
- 7. Каждое увеличение Deploy количество загруженных классов
- 8. Петля через PHP «Объект» x количество раз?
- 9. PHP повторить запись SQL X количество раз
- 10. Echo out html set количество раз - php
- 11. PHP: количество раз, когда было найдено слово?
- 12. Общее количество загруженных классов в Glassfish
- 13. Как получить количество страниц .PDF, загруженных пользователем?
- 14. Максимальное количество приложений, загруженных в один процесс
- 15. Fotorama 4: Количество предварительно загруженных изображений
- 16. Подтвердить размер и количество загруженных изображений
- 17. ASP.NET MVC большое количество загруженных файлов
- 18. Rails count количество всех загруженных файлов Carrierwave
- 19. перемещение загруженных файлов в PHP
- 20. Слушатель PHP для загруженных файлов
- 21. PHP: Повторная обработка загруженных файлов
- 22. Loop X количество раз
- 23. Количество раз 3 свернуто
- 24. Количество раз появляется слово
- 25. Генерирует datalist количество раз
- 26. updateMatrix x количество раз
- 27. Количество раз код выполняется
- 28. кварц фиксированный количество раз
- 29. Подсчитайте количество раз Сообщения прочитано
- 30. Получение лучших пользователей загруженных фотографий с помощью php
Pls дайте нам знать, что вы пытались до сих пор. – KB22