Публикация документов в интранет

Michael EZ

Guest
Публикация документов в интранет

Есть несколько папок куда сотрудники по ФТП скидывают свои Вордовские файлики, нужен скрипт который будет динамически формировать ссылки на существующие файлы и называть их по названию документа.
Если кто знает как написать или уже где лежит подобное, или хотябы как называется :D
 

Фанат

oncle terrible
Команда форума
практически весь нужный тебе скрипт лежит в примере к функции [m]readdir[/m]
однако, судя по разделу, в котором размещён вопрос, тебя интересует именно готовый скрипт
 

Michael EZ

Guest
lovchy типа оригинально ;)
Фанат
Спасибо! Все ведь начинали когдато. Теперь есть откуда начать. :)
 

Фанат

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

Да. надо не забыть urencode при выводе ссылок.
 

Michael EZ

Guest
Наверное не так все просто...
Мне еще надо ходить по папкам - отделам и смотреть содержимое подкаталогов.
 

Фанат

oncle terrible
Команда форума
ну да, конечно, тебе лучше знать. чем мне

не надо никуда ходить.
делай просто ссылку на каталог.
а в нем опять запустится твой скрипт - сделаешь его индексным.
 

Michael EZ

Guest
Китайская грамота - однако.
Фанат
можно тебе мылом описать подробнео что я делаю и что получается чтоб здесь народ не смешить. Ответишь?
 

Фанат

oncle terrible
Команда форума
а разве требуется какое-то более подробное описание того, что ты делаешь?
Почему не нужно смешить людей? Разве это плохо, когда люди смеются?
А для чего, по-твоему, нужен форум? Для того, чтбы люди списывались с его помощью по е-мейлу? Это тогда не форум, а служба знакомств какая-то получится.
почему ты считаешь, что я один в состоянии ответить на твои вопросы? почему считаешь, что я не могу ошибиться? А если я буду писать тебе мейлом, то никто не увидит ошибки. В форуме же много людей, которые поправят или посоветуют более правильный способ.

по-моему, гораздо быстрее написать - что не получается, и сразу получит ответ, чем заморачиваться с почтами.
 

Alexandre

PHPПенсионер
сначла пишешь скрипт, который показывает ссылки на все файлы в каталоге.
потом добавляешь удобства:
через is_dir проверяешь - каталог это, или файл.
если каталог - то выводишь ссылку жирным.
если файл - записываешь в массив.
Ну для большего удобства и юзабилити я бы еще добавил:

если каталог , то перед ссылкой выводу иконку папки
если файл (документ ) то смотрю его расширение и вывожу иконку соответственно расширению txt, elx, doc....

пример файл навигатора можно найти на php.spb.ru
 

Фанат

oncle terrible
Команда форума
пример файл навигатора с php.spb.ru не имеет ни малейшего отношения к данному вопросу.
А иконочками-картиночками - о, да! - самое время заниматься. когда ещё даже основной алгоритм показа не работает. только иконочек и не хватало.
 

Michael EZ

Guest
Alexandre
можно дать точную ссылку на навигатор? сам не нашел :(
Фанат
Картинки мне на самом деле не особо нужны. Нужнее чтобы каталоги назывались не так как реально они называются, но чтоб я мог задать им названия, например в текстовом файлике. Это наверное тоже РНР файл должен быть с массивом? (Мне нужен простейший вариант)

ЗЫ насчет посмеяться я тоже не прочь :) например мне стало смешно когда ты предложил сделать скрипт индексным... Я от слова скрипт уже не шарахаюсь, но до индексов мне еще очень далеко ;)
 

Фанат

oncle terrible
Команда форума
то есть, понятие index.html тебе незнакомо?
и как происходит, что если обращаешься к www.site.ru то загружается www.site.ru/index.html - тебе неизвестно?

для тех, кто невнимательно читает, повторяю
НАВИГАТОР ТЕБЕ НЕ НУЖЕН
он выполняет совсем другие функции.

по поводу собственных имён каталогов.
ты всё остальное уже сделал?
 

Michael EZ

Guest
один из сэмплов readdir показывает то что надо, но по клику на каталоге формируется в строке браузера:
http://server2/publicdoc/indexdoc.php?path=./Departments/ART

но переход по ссылке не происходит :(

ЗЫ Понятия индекса у меня еще от фокспро ;)
 

Фанат

oncle terrible
Команда форума
а ты сделай, чтобы формировалось /Departments/ART
что значит - по ссылке не переходит? Ноги отказали? или протезы отвалились?

про фокспро не надо мне рассказывать. равно как про своё трудное детство и первую любовь.
надо просто ПРИНЯТЬ к сведению, что на сайте слово индекс имеет ДРУГОЕ значение.
 

Фанат

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

Michael EZ

Guest
когда кликаеш по файлу он нормально открывается, когда по каталогу ничего не происходит :(
вот код:

<?php

$path = './Departments';
if(!isset($path))
{
$path = ".";
}

if ($handle = opendir($path))
{
$curDir = substr($path, (strrpos(dirname($path."/."),"/")+1));
print "current directory: ".$curDir."<br>************************<br>";
print "Path: ".dirname($path."/.")."<br>************************<br>";

while (false !== ($file = readdir($handle)))
{
if ($file != "." && $file != "..")
{
$fName = $file;
$file = $path.'/'.$file;
if(is_file($file))
{
print "[F]&nbsp;&nbsp;<a href='".$file."'>".$fName."</a>&nbsp;&nbsp;&nbsp; ".filesize($file)." bytes<br>";
}
if(is_dir($file))

{
print "[D]&nbsp;&nbsp;<a href='indexdoc.php?path=substr($file, 1)'>$fName</a><br>";
}
}
}
$up = substr($path, 0, (strrpos(dirname($path."/."),"/")));
print "[^]&nbsp;&nbsp;<a href='indexdoc.php?path=$up'>up one level</a><br>";

closedir($handle);
}
?>

Попробовал первый символ (точку) убрать substr вот такая ссылка формируется:

http://server2/publicdoc/indexdoc.php?path=substr(./Departments/ART, 1)

-~{}~ 24.05.05 12:43:

мб сервер не так работает, IIS6 установлен еще Coppermine Photo Gallery - нормально работает.
 

Фанат

oncle terrible
Команда форума
здесь не мастерская по исправлению неизвестно каких кодов.
тебе сказали, как делать.
взять ПРИМЕР из ДОКУМЕНТАЦИИ и ДОРАБОТАТЬ под свои нужды.

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

Michael EZ

Guest
собсно взял оттуда и доработал как мог, а вот дальше как изменить путь на свой - нет мыслей.
Извини что время отнял. Спасибо!
 
Сверху