Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/12/2011, 15:39
Avatar de jcamacho
jcamacho
 
Fecha de Ingreso: marzo-2008
Mensajes: 72
Antigüedad: 16 años, 1 mes
Puntos: 1
borrar archivos

buenas tardes compañeros de logia , la pregunta es la siguiente porque sera que tengo un sistema en php y cuando ejecuto la rutina para borrar archivos de un directorio si lo hago localmente lo hace pero si lo hago corriendo el sistema desde el servidor no lo hace; el directorio al que quiero acceder tiene privilegios 777 es decir que pueden hacer dentro de el lo que quiera. la rutina que utilizo es la siguiente:

<?php
if(!isset($__REMDIR)){
class NoOpenException extends Exception {}
class NoDeleteException extends Exception {}
class NoDirectoryException extends Exception {}
class UnlinkException extends Exception {}

function borrar_directorio($dir){
if(!is_dir($dir))
throw new NoDirectoryException("$dir::No es un directorio");

if(!($open = opendir($dir)))
throw new NoOpenException("$dir::No se puede abrir");

while($file = readdir($open)){
if($file == "." || $file == "..")
continue;
if(is_dir("$dir/$file"))
borrar_directorio("$dir/$file");
else
if(!unlink("$dir/$file"))
throw new UnlinkException("$dir/$file::No se pudo borrar el archivo");
}
closedir($open);

if(!rmdir($dir))
throw new NoDeleteException("$dir::No ha podido ser borrado");
}

$__REMDIR = true;
}
?>

el $dir se lo paso como parametro ejem: "/home/usuario/image/"; OJO es LINUX