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

Форум PHP

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

 

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

вид форума:
Линейный форум Структурный форум

тема: Получение списка файлов из сетевой папки...
 
 автор: maxi_ch   (06.10.2006 в 11:55)   письмо автору
 
 

Добрый день!

Такой вопрос: необходимо прочитать содержимое СЕТЕВОГО каталога (какого-либо общего сетевого ресурса, сетевого диска) средствами php и вывести список файлов и папок на экран. Знаю, что с версии php 4.3 или 4.4 такая возможность появилась, но никак не могу найти мануала по этим нововведениям.

Реализации описанные ниже не работают! (Warning: opendir(file:///o:/111/) [function.opendir]: failed to open dir: Invalid argument in ... )
--
$file = 'file://s:/111/';

if ($handle = opendir($file)) {
echo "Файлы:n";

while (false !== ($file = readdir($handle))) {
echo "<a href="$file">$file (".($file).")</a><br>";
}
}
--

Стоит apache 2.2 + php 5.1.6

   
 
 автор: tuder   (06.10.2006 в 13:13)   письмо автору
 
   для: maxi_ch   (06.10.2006 в 11:55)
 

Две ошибки


//  Первая:
// $file = 'file://s:/111/';
$file = 's:/111';

if ($handle = opendir($file)) { 
  echo "Файлы:n"; 

   while (false !== ($file = readdir($handle))) { 
// Вторая
// echo "<a href="$file">$file (".($file).")</a><br>"; 
      echo "<a href=$file'>$file (".($file).")</a><br>"; 
   }
}

   
 
 автор: maxi_ch   (06.10.2006 в 13:22)   письмо автору
 
   для: tuder   (06.10.2006 в 13:13)
 

Уважаемый tuder. Эти ошибки не принципиальны... Даже если их исправить (первой ошибки нет: попробуй так ввести адрес в строке браузера и укажи вместо сетевого каталога локальную папку, второй ошибки нет, это экранирование скобок).

Warning: opendir(o:/111) [function.opendir]: failed to open dir: Invalid argument

вот это надо как то поправить!

   
 
 автор: tuder   (07.10.2006 в 08:13)   письмо автору
 
   для: maxi_ch   (06.10.2006 в 13:22)
 

Эти ошибки принципиальны. В каждом случае, когда я даю ответ, я проверяю это на практике.
Вы проверили у себя мой вариант скрипта?

2. Вторая ошибка.
http://files.byte.nsk.su/test/ttt.php
Вот Ваш скрипт в чистом виде. Он не проходит даже парсинг. Из-за ошибки в кавычках.

echo "<a href="_____$file_____">$file ("_____.($file)._____")</a><br>";

Там где .($file). - да, кавычки "экранируют" скобки. А в первом случае, где $file - чистой воды ошибка в открывающих закрывающих двойных кавычках.

1. Первая ошибка. То что вводится в браузере и что он показывает - это его личное дело. Другое дело, когда работаешь с файловой системой.
ОС-команды, такие как
s:
cd \111
type s:\111\test.txt
не будут работать если вдруг им подставить что-то из броузера.

type file://s:\111\test.txt
При чём тут file:// ?
Вот Ваш скрипт с убранной второй ошибкой.
http://files.byte.nsk.su/test/tt.php

Да. Вам недвусмысленно объясняют, что "Invalid argument" - неправильно указан аргумент.
Потому как "Notice: opendir(): Unable to find the wrapper "file".

0. И вот мой вариант скрипта с убранными ошибками
http://files.byte.nsk.su/test/t.php

Всё чудно отрабатывает и показывает каталог.

   
Rambler's Top100
вверх

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