скачивание файлов из директории

Статус
В этой теме нельзя размещать новые ответы.

dotsenko

Постоялец
Регистрация
27 Дек 2006
Сообщения
236
Реакции
134
есть демки файлы тоесть в главной директории нужен скрипт который будет показывать их в ряд и рядом будет кнопка или надпись скачать демку .dem файлы
 
Кто тебя учил так выражаться? =)
Еще раз и подробнее: как скачивать - по http или ftp?
 
расшифровать вопрос автора топика можно так:

Нужен скрипт каторый выводит все файлы из папки. Со ссылками Скачать.
 
Так эта... Включи директори листинг, убери index.htm из той папки - и вуаля. Давай людям ссылку на саму папку, по этой ссылке апач будет выдавать список файлов - с размерами, датой создания, и возможностью качать..

Имхо самый простой путь, и никаких скриптов не надо.
 
PHP:
<?php
$url='http://site.com/';
$handle=opendir('dir/dir');
while(false!==($file=readdir($handle))) {
    if($file!='.' && $file!='..') {
        echo $file.' <a href="'.$url.'dir/dir/'.$file.'">Скачать</a><br>';
    }
}
closedir($handle);
?>
 
PHP:
<?php
$url='http://site.com/';
$handle=opendir('dir/dir');
while(false!==($file=readdir($handle))) {
    if($file!='.' && $file!='..') {
        echo $file.' <a href="'.$url.'dir/dir/'.$file.'">Скачать</a><br>';
    }
}
closedir($handle);
?>


Да-да... особенно, если is_dir($file) вернет true +)
 
есть демки файлы тоесть в главной директории нужен скрипт который будет показывать их в ряд и рядом будет кнопка или надпись скачать демку .dem файлы


PHP:
         /**
         * Recursive get filest into dir and subdirs
         *
         * @param string $directory
         * @return array
         *
         * // Example of use
         *        print_r(getFiles('.'));
         *
         */
        function getFiles($directory, $bRecursive = true,  $bReturnFullPath = true,  $bReturnAll= false) {


                if(is_file($directory)) return false;
                if(!is_dir($directory)) return false;

                $directory = rtrim($directory, '\\/');

                if(!is_dir($directory)) return false;
                // Try to open the directory
                if($dir = opendir($directory)) {
                        // Create an array for all files found
                        $tmp = Array();
                        // Add the files
                        while($file = readdir($dir)) {
                                // Make sure the file exists
                                if($file != "." && $file != ".." && $file[0] != '.') {
                                        // If it's a directiry, list all files within it

                                        if(is_dir($directory . "/" . $file))
                                        {
                                                if($bRecursive)
                                                {
                                                        $tmp2 = CDir::getFiles($directory . "/" . $file);
                                                        if(is_array($tmp2)) {
                                                                $tmp = array_merge($tmp, $tmp2);
                                                        }
                                                }
                                        } else {
                                                if($bReturnAll)
                                                {
                                                        $arr_item = array('item'=>$file, 'fullitem'=>$directory .'/'. $file, 'isFile'=>true);
                                                        array_push($tmp, $arr_item);
                                                }
                                                else if ($bReturnFullPath)
                                                array_push($tmp, $directory . "/" . $file);
                                                else
                                                array_push($tmp, $file);
                                        }
                                }
                        }
                        // Finish off the function
                        closedir($dir);
                        return $tmp;
                }
                return false;
        }
 
Вот пример Для просмотра ссылки Войди или Зарегистрируйся, котороя уходит в глубь папки и создает массив с путями до файлов
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху