Foros del Web » Programando para Internet » PHP »

duda en eliminar carpeta y archivo

Estas en el tema de duda en eliminar carpeta y archivo en el foro de PHP en Foros del Web. hola es que estoy tratando de crear un script para eliminar directorio o archivos sin tener permiso en las carpetas este es el codigo que ...
  #1 (permalink)  
Antiguo 08/01/2012, 13:08
(Desactivado)
 
Fecha de Ingreso: septiembre-2010
Mensajes: 498
Antigüedad: 13 años, 6 meses
Puntos: 5
duda en eliminar carpeta y archivo

hola es que estoy tratando de crear un script para eliminar directorio o archivos sin tener permiso en las carpetas este es el codigo que llevo usando y probando

Código PHP:
Ver original
  1. <?php
  2. function deldir($directorio, $borrarRaiz = false)
  3. {    
  4.  $directorio = rtrim($directorio, '/') .'/';
  5.  
  6.  $carpetaActual = opendir($directorio);
  7.  while(($contenidoCarpeta = readdir($carpetaActual)) !== false)
  8.  {
  9.   $rutaCompleta = $directorio . $contenidoCarpeta;
  10.   if($contenidoCarpeta != '.' && $contenidoCarpeta != '..')
  11.   {              
  12.    if(is_dir($rutaCompleta)) { deldir($rutaCompleta); }
  13.    else                      { unlink($rutaCompleta); }
  14.   }
  15.  }
  16.  closedir($carpetaActual);
  17.  
  18.  if($borrarRaiz == false)
  19.  {
  20.   if(!rmdir($directorio)) { return false; }
  21.  }
  22.  return true;
  23. }
  24. ?>
  25.  
  26. <?    
  27.    $carpeta   = "../12/";
  28.    $borrarRaiz = true; #true: deja la carpeta pero elimina el contenido. false: borra todo
  29.   echo ($borrarRaiz == false) ? "<h1>Borrado completo, incluyendo la raiz: $carpeta</h1>" : "<h1>Borrando solo el contenido de: $carpeta</h1>";
  30.    $rta = deldir($carpeta, $borrarRaiz);    
  31.    echo ($rta) ? "<p style='color:green'>Borrado con exito</p>" : "<p style='color:red'>Error en el borrado</p>";    
  32. ?>

Última edición por privatefta; 08/01/2012 a las 13:17
  #2 (permalink)  
Antiguo 08/01/2012, 13:28
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: duda en eliminar carpeta y archivo

aja.... y cual es la duda...
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #3 (permalink)  
Antiguo 08/01/2012, 13:35
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: duda en eliminar carpeta y archivo

Cita:
estoy tratando de crear un script para eliminar directorio o archivos sin tener permiso en las carpetas
¿Y crees que sin tener permisos para acceder a esas carpetas, vas a poder borrar o escribir en ellas?
Francamente, en el contexto de tus permisos, ¿no crees que los administradores no se darían cuenta de que intentas una acción ilegal?
Dudo que sean tan incapaces como para no advertir la maniobra. Lo más probable es que no puedas, y que si puedes, te cancelen la cuenta.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #4 (permalink)  
Antiguo 08/01/2012, 13:36
(Desactivado)
 
Fecha de Ingreso: septiembre-2010
Mensajes: 498
Antigüedad: 13 años, 6 meses
Puntos: 5
Respuesta: duda en eliminar carpeta y archivo

que quiero eliminar el directorio sin tener que darle permiso a la carpeta que pueda darle permiso directamente desde php
  #5 (permalink)  
Antiguo 08/01/2012, 13:39
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: duda en eliminar carpeta y archivo

Partamos de la base que no puedes dar permisos si no los tienes. Es un principio básico de todos los sistemas de administración de usuarios, tanto de los sistemas operativos como de las bases de datos.
Un script no puede saltearse eso porque el creador (tu) tiene determinados permisos, sus usuarios también, y todo lo que hace contiene las mismas limitaciones que el creador o el usuario. Las heredan.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #6 (permalink)  
Antiguo 08/01/2012, 13:42
(Desactivado)
 
Fecha de Ingreso: septiembre-2010
Mensajes: 498
Antigüedad: 13 años, 6 meses
Puntos: 5
Respuesta: duda en eliminar carpeta y archivo

es que tengo un servidor linux y hay tengo todo lo de mi web y es que tengo un script donde genero la base de datos de mi web y quiero crear otro para poder borar todos los sql que guarda en la carpeta es lo que queiro hacer
  #7 (permalink)  
Antiguo 08/01/2012, 13:46
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: duda en eliminar carpeta y archivo

Con más razón: Linux tiene un poderosísimo sistema de permisos de usuario, que no te puedes saltar. Si el user que utilizas no tiene los permisos para escribir sobre esa carpeta, no hay modo que el script funcione.
Con un user con los permisos adecuados, todo andará perfecto...
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #8 (permalink)  
Antiguo 08/01/2012, 14:02
(Desactivado)
 
Fecha de Ingreso: septiembre-2010
Mensajes: 498
Antigüedad: 13 años, 6 meses
Puntos: 5
Respuesta: duda en eliminar carpeta y archivo

yo soy el unico usuario en ese servidor amigo no estoy entendiendo lo que me quieres decir de usuario si lo que quiero es hacer atravez de php
  #9 (permalink)  
Antiguo 08/01/2012, 14:33
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: duda en eliminar carpeta y archivo

Me remito a tus propias palabras:
Cita:
(...) es que estoy tratando de crear un script para eliminar directorio o archivos sin tener permiso en las carpetas (...)
Si no es eso, ¿a qué te referías?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #10 (permalink)  
Antiguo 08/01/2012, 17:07
(Desactivado)
 
Fecha de Ingreso: septiembre-2010
Mensajes: 498
Antigüedad: 13 años, 6 meses
Puntos: 5
Respuesta: duda en eliminar carpeta y archivo

mira es que el script que esta puesto hay me funciona dandole permiso a la carpeta 777 directo por el ftp y eso es lo que me refiero a no tener que darle yo mismo permiso ya que si la boro y al crear otravez el directorio recoge el permiso 644 y con ese no lo ejecuta
  #11 (permalink)  
Antiguo 08/01/2012, 17:48
(Desactivado)
 
Fecha de Ingreso: septiembre-2010
Mensajes: 498
Antigüedad: 13 años, 6 meses
Puntos: 5
Respuesta: duda en eliminar carpeta y archivo

Código PHP:
Ver original
  1. <?php
  2. $fichero=$_GET["fichero"];
  3. //yo lo probe asi y me trabajo pero con permiso en la carpeta 777
  4. //$path="files/".$fichero;
  5. $path=chmod("files/"$fichero, 0777);
  6. unlink($path);
  7. echo "<script> alert (\"Archivo borrado con éxito\"); </script>";
  8. echo "<script language=Javascript> location.href=\"index.php\"; </script>";
  9. ?>

esto esta bien
  #12 (permalink)  
Antiguo 09/01/2012, 09:41
(Desactivado)
 
Fecha de Ingreso: septiembre-2010
Mensajes: 498
Antigüedad: 13 años, 6 meses
Puntos: 5
Respuesta: duda en eliminar carpeta y archivo

hay alguna forma de poder darle permiso a una carpeta atravez de php
  #13 (permalink)  
Antiguo 09/01/2012, 09:46
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 15 años, 11 meses
Puntos: 326
Respuesta: duda en eliminar carpeta y archivo

system / exec

Algo así como

Código PHP:
system("chmod 0777 -R carpeta"); 
__________________
>> Eleazan's Source
>> @Eleazan
  #14 (permalink)  
Antiguo 09/01/2012, 10:32
(Desactivado)
 
Fecha de Ingreso: septiembre-2010
Mensajes: 498
Antigüedad: 13 años, 6 meses
Puntos: 5
Respuesta: duda en eliminar carpeta y archivo

ya ese lo habia encontrado en el inernet y no me funciono
  #15 (permalink)  
Antiguo 09/01/2012, 10:50
(Desactivado)
 
Fecha de Ingreso: septiembre-2010
Mensajes: 498
Antigüedad: 13 años, 6 meses
Puntos: 5
Respuesta: duda en eliminar carpeta y archivo

mira tengo esto y me funciona para poder leer el directorio

Código PHP:
Ver original
  1. <?php
  2.     if ($gestor = opendir(chmod("files",0777))) {
  3.         echo "<ul>";
  4.         while (false !== ($arch = readdir($gestor))) {
  5.            if ($arch != "." && $arch != "..") {
  6.                echo "<li><a href=\"files/".$arch."\" class=\"linkli\">".$arch."</a> <a href=\"./borrar.php?fichero=".$arch."\">Borrar</a></li>\n";
  7.            }
  8.         }
  9.         closedir($gestor);
  10.         echo "</ul>";
  11.     }
  12.     ?>

Etiquetas: carpetas
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.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:12.