PHP уроки
ПРОСТО самая лучшая обучалка PHP!
  • Студия LPHPRU
  • Уроки PHP
  • Контакты
  • Помощь
Меню
  • PHP - с чего начать?
  • Уроки PHP
  • Функции PHP
  • Массивы
  • Denwer
  • MySQL
  • Информация
  • Dreamweaver уроки
  • JQuery уроки
  • Галерея
  • OpenCart
Календарь
Август (2022)
ПнВтСрЧтПтСбВс
1234567
891011121314
15161718192021
22232425262728
293031    
В продаже

  • Что нового?

    • Тест №2
    • Тест №1 для разработчиков
    • PHP 5.6 RC1
    • SQL. Как cкопировать данные одной колонки в другую, в той же таблице
    • GRUB изменить порядок загрузки OS в Linux
    • SSH - вход на сервер без ввода пароля
    • PhpMyAdmin - проблема с загрузкой большого файла на сервер
  • Комментарии

    • Hello
    • тут нечего не понятно
    • Может уже пора на WebStorm переходит...
    • Здравствуйте. 10 лет пользуюсь др...
    • Была такая проблема, решалась пе...
  • TOP-5

    • Метод POST (2944679 )
    • Привет, МИР! (910169 )
    • Метод GET (666368 )
    • Операторы (605182 )
    • Firefox уже запущен, но не отвечает... (352239 )

Как сделать счетчик загрузок для файлов.

Главная» Array » Как сделать счетчик загрузок для файлов.
PHP урок № 240
Счётчик загрузки файлов
Когда я задумал писать этот скрипт, мне он показался слишком простым, но по ходу разработки и интеграции его с системой пришлось подумать, как сделать его доступным для применения на любом сайте с поддержкой PHP. Скрипт счётчика загрузки представлен тремя файлами, я бы сказал всё таки, что это скорее модуль, который может использоваться на любом сайте, если знать нюансы скрипта. Продолжим. И так тремя файлами представлен счётчик загрузки, которые содержаться в отдельной папке, имя этой папки можно задать произвольно. Оно не влияет на работу программы.
Файлы счётчика:
index.php - главный файл программы, в нём собственно и содержится весь скрипт.
  • download.php - представляет окно загрузки файла.
  • sts.css - это файл стиля самой таблицы где выводится результат работы.
  • stat - файл содержит статистику, некая база данных.
  • Четвёртый файл о котором я ранее не сказал, создаётся автоматически при первом обращении к скрипту. Он отвечает за статистику загрузки. Т.е. именно в нём сохраняется вся информация по количеству загрузок с сервера, того или иного файла.
    Принцип работы счётчика загрузок.
    При обращению по адресу каталога например file_uploads - назовём так папку модуля. Скрипт определяет все файлы находящиеся в той папке где находится папка с модулем file_uploads. Проще сказать так, размещаете папку модуля в любой папке сайта от куда хотите раздавать файлы и вести статистику загрузки этих файлов.
    Файлы имеющие пробел в имени, качаться не будут. Старайтесь писать имена одним словом или использовать знак подчёркивания или дефис. Например так: my_file.txt - это правильно. Так не правильно: my file.txt
    Файлы добавляемые или удаляемые из папки по которой ведётся статистика загрузок, обновляются автоматически, скрипт отслеживает изменения происходящие в директории в которой он работает. Ну а теперь сам скрипт.
    Листинг № Array - Скрипт - счётчик загрузки файлов index.php.
    <link href="./sts.css" rel="stylesheet" type="text/css">
    <?php 
    // По ссылке получаем имя файла, который пытается загрузить пользователь.
    $file_name = htmlspecialchars($_REQUEST['file_name']);


    ////////// БЛОК 1 ///////////////
    ////////////////  Собираем все имена файлов директории в массив ///////


    // Текущий каталог.
    $dir = "../";
    // Массив для файлов.
    $fname = array();

    // Проверяем, каталог ли это?
    if (is_dir($dir))
    {
        
    // Если каталог успешно открыт...
        
    if ($dh = opendir($dir))
        {
            
    // ... считываем содержимое в переменную $file.
            
    while (($file = readdir($dh)) !== false) 
            {
                
    // Если это файл ...
                
    if(is_file($dir . $file))
                {
                    
    // ... добавляем его в конец массива.
                    
    array_push($fname, $dir .$file);
                }
            }
            
    // Закрываем директорию.
            
    closedir($dh);
            

        }
    }
    ////////////////// конец - БЛОК 1 /////////////////
    ?>
    Здесь представлен лишь первый блок файла index.php, выкладывать весь скрипт по частям нет смысла, так что для тех кто заинтересовался счётчиком загрузки файлов, предлагается скачать архив с полностью работающей программой. Ссылка ниже.
    Скачать счётчик загрузки файлов
    Урок закончен.
    SETTER © LPHP.RU
    Администрация сайта
    Array
    Обсудить на форуме.
    • Яндекс.Метрика Здесь находится аттестат нашего WM идентификатора 185571665285
    • "LPHPRU" © 2009-2022