Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: рекурсивное дерево файлов

Сообщения:  [1-10]    [11-20]   [21-30]  [31-32] 

 
 автор: Саня   (14.01.2010 в 15:44)   письмо автору
 
   для: freeing   (14.01.2010 в 15:31)
 

Название функции

  Ответить  
 
 автор: freeing   (14.01.2010 в 15:31)   письмо автору
 
   для: Саня   (14.01.2010 в 15:29)
 

это что? - strpos

  Ответить  
 
 автор: Саня   (14.01.2010 в 15:29)   письмо автору
 
   для: freeing   (14.01.2010 в 15:25)
 

strpos потерялся.
Внимательнее надо быть. И перед тем как бежать на форум, попробуйте сначала самостоятельно решить проблему.

  Ответить  
 
 автор: freeing   (14.01.2010 в 15:25)   письмо автору
 
   для: Саня   (14.01.2010 в 15:10)
 

Что не так?

<?php
    $DOCUMENT_ROOT 
$_SERVER["DOCUMENT_ROOT"];
    
$REQUEST_URI $_SERVER["REQUEST_URI"];

    
preg_match_all("/path=(.*)\//is"$REQUEST_URI$URI);

    
$GLOBALS["ff"] = urldecode($URI[1][0]);

    function 
Tree($dir)
    {
        if(isset(
$dir))
        {
            if (
is_dir($dir)) 
            {
                
$scandir scandir($dir);

                if(
is_array($scandir))
                {
                    print 
"<dl>";

                    foreach(
$scandir as $scandir)
                    {
                        if(
$scandir !== "." && $scandir !== "..")
                        {
                            
$path $dir.'/'.$scandir;

                            if(
is_dir($path))
                            {
                                print 
"<dd><a href=\"?path=".urlencode($path)."/\">".$scandir."</a></dd>";

                                if(isset(
$GLOBALS["ff"]))
                                {
                                    
Tree ($path);
                                }
                            }
                        }
                    }

                    print 
"</dl>";
                }
            }
        }
    }

    
Tree($DOCUMENT_ROOT."/.txt");
?>

  Ответить  
 
 автор: Саня   (14.01.2010 в 15:10)   письмо автору
 
   для: freeing   (14.01.2010 в 15:01)
 

К $URI[1][0] применить urldecode.
Объявить переменную $URI глобальной.

Документация по области видимости переменных: http://docs.php.net/manual/ru/language.variables.scope.php

  Ответить  
 
 автор: freeing   (14.01.2010 в 15:01)   письмо автору
 
   для: Саня   (14.01.2010 в 14:49)
 

короче! что делать )

  Ответить  
 
 автор: Саня   (14.01.2010 в 14:49)   письмо автору
 
   для: freeing   (14.01.2010 в 14:35)
 

Во-первых, к результату выдирания нужно применить urldecode. Во-вторых, область видимости переменной $URI локальная, поэтому нельзя её использовать в функции.

  Ответить  
 
 автор: freeing   (14.01.2010 в 14:35)   письмо автору
 
   для: Саня   (14.01.2010 в 14:30)
 

не пашет!

<?php
    $DOCUMENT_ROOT 
$_SERVER["DOCUMENT_ROOT"];
    
$REQUEST_URI $_SERVER["REQUEST_URI"];

    
preg_match_all("/path=(.*)\//is"$REQUEST_URI$URI);

    function 
Tree($dir)
    {
        if(isset(
$dir))
        {
            if (
is_dir($dir)) 
            {
                
$scandir scandir($dir);

                if(
is_array($scandir))
                {
                    print 
"<dl>";

                    foreach(
$scandir as $scandir)
                    {
                        if(
$scandir !== "." && $scandir !== "..")
                        {
                            
$path $dir.'/'.$scandir;

                            if(
is_dir($path))
                            {
                                print 
"<dd><a href=\"?path=".urlencode($path)."/\">".$scandir."</a></dd>";

                                if (isset(
$URI[1][0]) && strpos($URI[1][0], $path) !== false)
                                {
                                    
Tree ($path);
                                }
                            }
                        }
                    }

                    print 
"</dl>";
                }
            }
        }
    }

    
Tree($DOCUMENT_ROOT."/.txt");
?>

  Ответить  
 
 автор: Саня   (14.01.2010 в 14:30)   письмо автору
 
   для: freeing   (14.01.2010 в 14:28)
 

Да.

  Ответить  
 
 автор: freeing   (14.01.2010 в 14:28)   письмо автору
 
   для: Саня   (14.01.2010 в 14:24)
 

разобрать ее выражением и кинуть вместо $_GET["path"]?

  Ответить  

Сообщения:  [1-10]    [11-20]   [21-30]  [31-32] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования