Foros del Web » Programando para Internet » PHP »

Forzar borrado de un fichero

Estas en el tema de Forzar borrado de un fichero en el foro de PHP en Foros del Web. Buenas, he intentado borrar una carpeta de mi servidor pero algunos ficheros y directorios que están dentro no puedo borrarlos, como si estuvieran bloqueados por ...
  #1 (permalink)  
Antiguo 14/10/2007, 05:44
Avatar de Harris  
Fecha de Ingreso: febrero-2007
Mensajes: 132
Antigüedad: 17 años, 2 meses
Puntos: 0
Forzar borrado de un fichero

Buenas, he intentado borrar una carpeta de mi servidor pero algunos ficheros y directorios que están dentro no puedo borrarlos, como si estuvieran bloqueados por el sistema. No me deja hacer ningún tipo de cambio, ni de nombre, ni de permiso.

Lo he intentado desde el panel de control del servidor, desde el ftp, y desde php con unlink y rmdir. Pero no he conseguido nada.

Me gustaría saber si conocéis alguna instrucción en php que fuerza la eliminación de ficheros y directorios o algún otro método.

Muchas gracias.
  #2 (permalink)  
Antiguo 14/10/2007, 07:57
 
Fecha de Ingreso: enero-2005
Mensajes: 102
Antigüedad: 19 años, 3 meses
Puntos: 0
Re: Forzar borrado de un fichero

Con unlink debería funcionar perfectamente. Te paso un formulario para eliminar archivos y directorios que utilizo desde hace un tiempo, y funciona perfectamente:

Código:
<form action="<?=$PHP_SELF?>" method="post" name="form1">
Borra archivos:
<input type='hidden' name='Sborrar' value='archivo'>
<input name="archivo" type="text" id="archivo">
<input name="boton" type="submit" id="boton" value="Enviar">
</form>

<form action="<?=$PHP_SELF?>" method="post" name="form1">
Borra directorios:
<input type='hidden' name='Sborrar' value='directorio'>
<input name="archivo" type="text" id="archivo">
<input name="boton" type="submit" id="boton" value="Enviar">
</form>
<?
if ($_POST["Sborrar"]=="archivo"){
	$archivo=$_POST["archivo"];
	unlink($archivo);
}else if($_POST["Sborrar"]=="directorio"){
	$archivo=$_POST["archivo"];
	rmdir($archivo);
}
?>
Lo pones en el directorio donde estén los archivos (o en otro) y la dirección de, por ejemplo, una foto a borrar sería la siguiente:

/foto1.jpg

Y la cepilla de lo lindo. La ruta depende de donde coloques el archivo PHP que lleve el código. Prueba y ya me dirás qué tal.
__________________
Selección de noticias RSS:
Motor - Negocios - Hoteles
  #3 (permalink)  
Antiguo 16/06/2009, 21:37
Avatar de chuliano  
Fecha de Ingreso: marzo-2008
Ubicación: C. de Patagones - Argentina
Mensajes: 21
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: Forzar borrado de un fichero

Ta muy bueno ese ejemplo Chuluba, pero tambien tengo un problema similiar.
Cree un directorio por error, con el siguiente nombre "egresados\\\\yo"
cuando intento borrar desde el FTP, medice lo siguiente.

Permission denied: Cannot enter "egresados\\\\yo".

No encuntro forma de borrarlo.
  #4 (permalink)  
Antiguo 16/06/2009, 22:00
Avatar de chuliano  
Fecha de Ingreso: marzo-2008
Ubicación: C. de Patagones - Argentina
Mensajes: 21
Antigüedad: 16 años, 1 mes
Puntos: 0
Respuesta: Forzar borrado de un fichero

chaluba mil gracias!!! funciono perfectamente, en ves de usar el nombre como me figura ""egresados\\\\yo", lo hice con el nombre "egresados\\yo" con solo 2 \\ barras y la elimino perfectamente.
Muchas gracias por el aporte!!!
  #5 (permalink)  
Antiguo 17/06/2009, 00:48
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
Respuesta: Forzar borrado de un fichero

recordar que no se puede eliminar un directorio sin antes haber borrado todos los archivos internos, eso de las barras realmente no comprendo muy bien, como es posible tener mas de una......

hechale una miradita al tema de directorios
saludos
__________________
Gokuh Salvo al mundo. PUNTO!!!!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Tema Cerrado

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 23:06.