Вопрос по коду

Kriogen

Новичок
Фанат, :) нет учебник не надо... спасибо :) все учебники я пересмотрел и хэлпы тоже... но у меня не получается самому написать функцию, т.е. вызвать её рекурсивно, чтобы выбранную папку вывела!
 

Фанат

oncle terrible
Команда форума
тебе не нужна никакая рекурсия.
рекурсия - это когда функция вызывает сама себя.
а тебе надо всего лишь вывести содержимое указанного каталога.

-~{}~ 02.04.06 16:53:

передали скрипту адрес каталога - скрипт его содержимое вывел.
и всё.

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

Kriogen

Новичок
Re: Вопрос по коду

Фанат, нет мне как раз-то и нужно чтобы пользователь мог лазить по каталогам и скачивать файлы!, а просто вывести содержимое каталога это легко!
Автор оригинала: Kriogen
P.S. Этот код мне нужен для написания электронной библиотеки, содержащей рар и зип архивы.
 

Фанат

oncle terrible
Команда форума
у меня такое ощущение, что ты не читаешь то, то я тебе пишу.
а разговариваешь сам с собой.

скажи, как сказанное мной противоречит твоим желаниям?
 

Kriogen

Новичок
Фанат, ничего не протеворечит, но как передавать скрипту имя папки ?
получается что:
в начале скрипт обходит корень каталога,где содержится куча папок.
потом пользователь щелкает по папке и отображается уже эта папка.
Как я думаю, то список должен выводиться в виде ссылок, а иначе по ним не щелкнешь :), соответственно ссылка каим-то образом должна передать скрипту имя папки на которую она ссылается!

Верно?
вот как это все сделать? я просто не пойму:) я просто окончательно во всем этом запутался, что мне без посторонней помощи просто не разобраться!
 

Фанат

oncle terrible
Команда форума
обрати внимание на вот эту ссылку:
http://phpclub.ru/talk/showthread.php?s=&postid=596771
в ней скрипту showthread.php передаётся адрес того, что он должен показать.
скажи, что ты впервые встречаешь такую системув интернете.
 

Kriogen

Новичок
:) нет конечно.. здесь передается id, мне советовали передавать вместо пути id, но опять таки не сказали как :)
вот посмотри я немного модифицировал скрипт...в котором передается путь...скажи какие фильтры установить на .. , ./ и т.д. чтобы блокировать просмотр за пределами папки lib?
http://library.iskra-net.ru/biblioteka.php
 

Фанат

oncle terrible
Команда форума
мне советовали передавать вместо пути id
это ещё зачем? у тебя есть это id? нету? а зачем передавать то, чего не существует?
какие фильтры установить на .. , ./ и т.д. чтобы блокировать просмотр за пределами папки lib?
никакие не надо.
у тебя там safe mode включено, так что, ничего опасного твой скрипт не просмотрит.

ну, а вообще, надо бы строить полный путь от корня диска, и смотреть, не выходит ли он за пределы lib
 

Kriogen

Новичок
за пределы как раз и выходит .... я уже донаписал защиту от такого рода выхода за пределы Lib

PHP:
if( !isset( $path ) || $path == ""|| $path == ".."|| $path == "../"|| $path == "./" )  {
     $path = "./lib";
   }
 

Фанат

oncle terrible
Команда форума
ну, можно почикать все точки из запроса, например
 

ns

Новичок
Если у тебя папки доступны через Apache, то рекомендую
почитать офф. ман у Apache.

http://httpd.apache.org/docs/2.0/mod/mod_autoindex.html

возможности у autoindex в apache 2 очень большие, можно сделать конфетку.

Надо только почитать ман и немного эксперимента.
Увы, нету под рукой готового конфига.
 
Сверху