Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: mrdir выдаёт ошибку Permission denied

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
maximushka
Отправлено: 05 Июля, 2011 - 21:23:17
Post Id


Новичок


Покинул форум
Сообщений всего: 40
Дата рег-ции: Нояб. 2009  


Помог: 0 раз(а)




Выполнил два условия:
1. доступ к удаляемой папке 0777, т.е. самый общедоступный и широкий.
2. папка предварительно очищается рекурсивно от других папок и unlink файлов в ней.
папка даже создаётся с помощью того же скрипта-php.

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

Думаю, что дело в назначении скрипту-php прав на манипуляции над папками, работаю в Денвере под виндой и на локальном хосте. Как это сделать? или проблема в другом, как её решить?
 
 Top
altermann
Отправлено: 05 Июля, 2011 - 22:15:46
Post Id



Частый гость


Покинул форум
Сообщений всего: 196
Дата рег-ции: Март 2010  
Откуда: Днепропетровск


Помог: 6 раз(а)




Код покажите.


-----
Я прирожденный кузнец, я не могу не куя!
 
 Top
maximushka
Отправлено: 06 Июля, 2011 - 09:02:46
Post Id


Новичок


Покинул форум
Сообщений всего: 40
Дата рег-ции: Нояб. 2009  


Помог: 0 раз(а)




altermann пишет:
Код покажите.


PHP:
скопировать код в буфер обмена
  1. function removeDir($mdir)
  2.     {
  3.      
  4.         $dir = opendir($mdir);
  5.            
  6.         while(false !== ($check = readdir($dir)))
  7.         {
  8.             if($check != '.' && $check != '..')
  9.             {
  10.                 if(is_dir($mdir .'/'. $check))//если это директория
  11.                 {          
  12.                     removeDir($mdir .'/'. $check); //рекурсия
  13.                 }
  14.                 elseif(is_file($mdir .'/'. $check))//если файл
  15.                 {
  16.                     unlink($mdir .'/'. $check);//файлы чистит безотказно (с любой вложенностью)
  17.                 }            
  18.            
  19.             };
  20.         };
  21.                 //echo substr(sprintf('%o', fileperms($mdir)), -4); //0777 выдает
  22.                 rmdir($mdir);//а папки - нефига, и тута ошибка выдаётся Permission denied.
  23.                 //rename($mdir,$_SERVER['DOCUMENT_ROOT'].'/delfolder'); //тоже не работает, с той же ошибкой.
  24.         }

(Добавление)
Всё, проблему решил. оказывается надо было сразу перед удалением rmdir($mdir);
вызвать:
closedir($dir);

теперь всё без ругани и реально удалилось...
 
 Top
White
Отправлено: 06 Июля, 2011 - 09:31:32
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 830
Дата рег-ции: Июнь 2011  
Откуда: Днепропетровск


Помог: 28 раз(а)




safe mode выключен?


-----
if(time()>1356048000) die();
 
 Top
maximushka
Отправлено: 06 Июля, 2011 - 09:38:39
Post Id


Новичок


Покинул форум
Сообщений всего: 40
Дата рег-ции: Нояб. 2009  


Помог: 0 раз(а)




White пишет:
safe mode выключен?

Да как то упоминался и он, правда я не знаю как его включить и отключить на пхп.

Но проблема в сабж уже решена, надо было вызвать до rmdir($mdir); функцию закрытия директории: closedir($dir); т.к. она была открыта $dir = opendir($mdir);
т.е. программно заблокирована... в том числе и на удаление.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Работа с файловой системой и файлами »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB