Karayazi » 2012.10.20 12:23

Здравствуйте, есть ли такая функция чтобы при вызове этой функции удалил самого файла и папку вместо с подпапками и файлами который находится сам скрипт?. Ну типа при вызове этой функции скрипт уничтожил самого себя. Функция должна находится в той папке который удаляется.

Gemorroj » 2012.10.20 12:27

просто удаляешь собственную папку. должны быть соответствующие права.

Karayazi » 2012.10.20 12:35

Gemorroj

Код:

1
span style="color: #0000BB"><?php function removeDirectory($dir) { if ($objs = glob($dir."/*")) { foreach($objs as $obj) { is_dir($obj) ? removeDirectory($obj) : unlink($obj); } } rmdir($dir); }?>

функцию я поставил на sys/fnc.php , вызов: http://site.ru/papka/index.php?del
index.php:

Код:

1
lt;?include ('sys/head.php');include('sys/fnc.php');if(isset($_GET['del'])){$dir=dirname($_SERVER['PHP_SELF']); removeDirectory($dir);}include ('sys/foot.php');?>

не удаляет.

Gemorroj » 2012.10.20 12:57

Karayazi замени $_SERVER['PHP_SELF'] на __FILE__

Karayazi » 2012.10.20 14:27

Код:

1
lt;?include ('sys/head.php');include('sys/fnc.php');if(isset($_GET['del'])){$dir=dirname(__FILE__); removeDirectory($dir);}include ('sys/foot.php');?>

Всеровно не удаляет, вчем можеть проблема, может есть какое то другое решение ?

Gemorroj » 2012.10.20 15:10

Karayazi, не хватает прав на удаление.

Karayazi » 2012.10.20 15:14

А в самой функции заранее нельзя поставить права?

Gemorroj » 2012.10.20 15:27

Karayazi, Чтобы поставить права, на это тоже нужны права =)

Karayazi » 2012.10.20 15:58

И что теперь, нельзя как нибудь попробовать чтоли?