Странная проблема php opendir / glob - PullRequest
0 голосов
/ 17 октября 2011

У меня странная проблема с opendir (такая же проблема с glob):

$dir = "Y:\\\\foldername\\";
if (is_dir($dir)) {
    if ($dh = opendir($dir)) {
        while (($file = readdir($dh)) !== false) {
            echo "filename: $file\n";
        }
        closedir($dh);
    }
}

Y: \ - сетевая папка с аутентификацией. Мой веб-сервер называется testweb, и этот скрипт называется tree.php. К сожалению, моя среда основана на Windows (PHP 5.2.5 ISAPI, сервер Windows 2003).

Когда я открываю скрипт на той же машине, где работает IIS (http://testweb/tree.php), все работает нормально, но если я подключаюсь к тому же адресу с другой машины (например, моего ноутбука), я получаю следующую ошибку:

Предупреждение: opendir () .. не удалось открыть каталог. Нет ошибок IN D: \ web \ tree.php

Кажется, проблема с разрешениями, но почему она работает с "локальной машины", а не снаружи? Как я могу это исправить?

Спасибо за вашу помощь !!

Ответы [ 2 ]

1 голос
/ 23 мая 2014

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

Я решил эту проблему, указав абсолютный путь для функции opendir (), которая вместо записи "вложенная папка "Я написал" C: \ wamp \ www \ myproject \ subfolder ", и это решило мою проблему!

Спасибо

1 голос
/ 17 октября 2011

проверьте ваши права доступа к этому каталогу .. вы можете сделать это с помощью функции is_readable

...