Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 20.01.2013
Сообщений: 108
1

Простенкий файловый менеджер

27.11.2016, 15:43. Показов 991. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго времени суток!
Есть скрипт php который должен принимать из формы путь к любой директории на компьютере и отображать ее содержимое(файлы и папки), а также переходить на уровень вверх и в корень.
Проблема в том что невозможно перейти в корень(например если находишся в директории C:/Windows то перейти в C:/)/ И сама загрузка папок и файлов происходит очень медленно. Помогите подправить
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
<html>
    <head>
        <title>Project</title>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    </head>
               
    <body>
    <?PHP
                       
        function getfilessize($d)
        {
            global $filesize;
            $filesize = 0;
            $dir = scandir($d);
                               
                                                               
            foreach($dir as $file)
            {
                if (($file!='.') && ($file!='..'))
                                               
                    if(is_dir($d . '/' . $file))
                        $filesize += getfilessize($d .'/'.$file);
                    else
                        $filesize += filesize($d . '/' . $file);
                                               
            }
                               
            return $filesize;
        }
                       
                               
        function scan($p) {
            $files = scandir($p);
             foreach ($files as $file):
                $d = $p.'/'.$file;
                if (is_dir($d)) {
                    if (($file == '.') || ($file == '..')) {
                        echo '<a href="'.'test.php/'.$file.'?f=scan&p='.$d.'">'.$file.'</a><br />',PHP_EOL;
                    }
                    else {
                        $filesize = getfilessize($d);
                        echo '<a href="'.'test.php/'.$file.'?f=scan&p='.$d.'">'.$file.'</a>'.' : '.$filesize.'<br />',PHP_EOL;
                    }
                }
                else {
                    echo $file .' : '. filesize($d).'Kb'.'<br>';
                }
            endforeach;
        }
               
        if(isset($_GET['f']) and $_GET['f']=='scan') {
            $p = $_GET['p'];
            scan($p);
        }
        else {
            $dir  = 'E:\local_server\openserver';
            $files = scandir($dir);
            foreach ($files as $file):
                $d = $dir.'/'.$file;
                if (is_dir($d)) {
                                       
                    if (($file == '.') || ($file == '..')) {
                        echo '<a href="'.'test.php/'.$file.'?f=scan&p='.$d.'">'.$file.'</a><br />',PHP_EOL;
                    }
                    else {
                        $filesize = getfilessize($d);
                        echo '<a href="'.'test.php/'.$file.'?f=scan&p='.$d.'">'.$file.'</a>'.$filesize.'<br />',PHP_EOL;
                    }
                }
                else {
                    echo $file .' : '. filesize($d).'Kb'.'<br>';
                }
            endforeach;
        }
    ?>
    </body>
</html>
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.11.2016, 15:43
Ответы с готовыми решениями:

Файловый менеджер
Доброго времени суток. Сейчас разбираюсь с файловым менеджером. Посмотрел пример написания вот на...

файловый менеджер
Доброго вечера всем кто читает срочно возникла необходимость в написании файлового менеджера на...

Файловый менеджер
Добрый день! Столкнулся с необходимостью создания на сайте возможности для пользователя загружать,...

Файловый менеджер
Всем привет! Пытаюсь двигаться дальше в изучении php. Пишу файловый менеджер. Вернее пытаюсь...

1
Заблокирован
27.11.2016, 16:34 2
Это файл-менеджером трудно назвать. Я такое обычно называю file browser, нек. мои коллеги еще иногда – file viewer.

Цитата Сообщение от artur4ek94 Посмотреть сообщение
Проблема в том что невозможно перейти в корень(например если находишся в директории C:/Windows то перейти в C:/)/
Может, это хорошо, что нельзя. Обычно публичный корень делается глубже, чем корень диска/ФС, часто совмещается с корнем сайта.

Цитата Сообщение от artur4ek94 Посмотреть сообщение
И сама загрузка папок и файлов происходит очень медленно. Помогите подправить
Делайте все манипуляции до начала вывода. Не считайте суммарный объем каталогов.
0
27.11.2016, 16:34
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.11.2016, 16:34
Помогаю со студенческими работами здесь

Простенький файловый менеджер
Поругайте, что неправильно, что может не так делается... Ограничил доступ вверх - в пределах...

Файловый менеджер (ооп).
Как Вы видите файловый менеджер с ООП. Какие бы вы создали объекты, в каком порядке???

Файловый менеджер
Всем доброго времени суток. в общем нужна помощь, не за даром естественно. необходимо написать...

Файловый менеджер
Есть ли у кого примеры самого простенького файлового менеджера на Qt ? Название темы должно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru