Foros del Web » Programando para Internet » PHP »

Borrar varias fotos con ciclo for

Estas en el tema de Borrar varias fotos con ciclo for en el foro de PHP en Foros del Web. Hola: Necesito borrar varias fotos que está en una carpeta (esto es subido previamente en el administrador. Para ello tengo que hacer un ciclo pero ...
  #1 (permalink)  
Antiguo 20/11/2012, 08:30
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 16 años, 4 meses
Puntos: 15
Borrar varias fotos con ciclo for

Hola:

Necesito borrar varias fotos que está en una carpeta (esto es subido previamente en el administrador. Para ello tengo que hacer un ciclo pero no se como. Esta es la ruta:

Código PHP:
Ver original
  1. $dir_fotos = "../../images/galeria/large/".$foto_nombre2."";

Yo hice un código para borrar fotos pero cuando es una sola y lo hace perfecto. Así:

Código PHP:
Ver original
  1. $dir_foto = "../posadas/logos/".$nombre_logo."";
  2.     if(is_file("$dir_foto"))
  3.     {
  4.         unlink($dir_foto);
  5.     }

pero no se como hacerlo con esta parte porque son varias.

Cómo puedo hacer esto???

Gracias
__________________
Caminando con el corazón partío
  #2 (permalink)  
Antiguo 20/11/2012, 09:20
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 16 años, 4 meses
Puntos: 15
Respuesta: Borrar varias fotos con ciclo for

Lo hice asi y las borra pero se queda pegado y dice Fatal error: Maximum execution time of 120 seconds exceeded in...:

Código PHP:
Ver original
  1. $ruta1 = "../../images/galeria/large/";
  2.  
  3. $contador = 9;
  4.  
  5. for($i=1; $contador<=9; $i++){
  6.     $foto_fin = $foto_nombre. '_'  .$i. '.' . $extension;
  7.     if(is_file($foto_fin[$i]))
  8.     unlink($ruta1.$foto_fin);
  9.     }

????
__________________
Caminando con el corazón partío
  #3 (permalink)  
Antiguo 20/11/2012, 09:23
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 3 meses
Puntos: 1532
Respuesta: Borrar varias fotos con ciclo for

¿revisaste si la carpeta tiene permisos para borrar, incluso los archivos tambien?
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #4 (permalink)  
Antiguo 20/11/2012, 09:33
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 16 años, 4 meses
Puntos: 15
Respuesta: Borrar varias fotos con ciclo for

Hola, es que si los borra pero lo que creo que está mal es el if(is_file($foto_fin[$i])) porque cuando lo reviso después de borrarlos me dice "Fatal error: Maximum execution time of 120 seconds exceeded in...:"

Será eso???
__________________
Caminando con el corazón partío
  #5 (permalink)  
Antiguo 20/11/2012, 09:58
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años, 7 meses
Puntos: 326
Respuesta: Borrar varias fotos con ciclo for

Cita:
Iniciado por kimmy Ver Mensaje
Hola, es que si los borra pero lo que creo que está mal es el if(is_file($foto_fin[$i])) porque cuando lo reviso después de borrarlos me dice "Fatal error: Maximum execution time of 120 seconds exceeded in...:"

Será eso???
Eso es pq tienes limitada la ejecución del script a 120 segundos...

Puedes cambiarlo poniendo al principio esto:

Código PHP:
ini_set("max_execution_time"300); 
O bien, ponerlo a 0 para q sea "infinito"

Edit: De todas formas, no deberia ser así:?
Código PHP:
 if(is_file($ruta1.$foto_fin)) 
    
unlink($ruta1.$foto_fin); 
__________________
>> Eleazan's Source
>> @Eleazan
  #6 (permalink)  
Antiguo 20/11/2012, 10:25
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 16 años, 4 meses
Puntos: 15
Respuesta: Borrar varias fotos con ciclo for

Gracias Eleazan, me sirvió la instrucción del is_file, pero aun cuando aumente el max_execution_time a 300 sigue tardando mucho y luego me dice Fatal error: Maximum execution time of 300 seconds exceeded in...

Si se borran las fotos pero debe haber algo malo en el código porque se queda pegado como 2 minutos.

Por qué?
__________________
Caminando con el corazón partío
  #7 (permalink)  
Antiguo 20/11/2012, 10:35
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años, 7 meses
Puntos: 326
Respuesta: Borrar varias fotos con ciclo for

Cita:
Iniciado por kimmy Ver Mensaje
Gracias Eleazan, me sirvió la instrucción del is_file, pero aun cuando aumente el max_execution_time a 300 sigue tardando mucho y luego me dice Fatal error: Maximum execution time of 300 seconds exceeded in...

Si se borran las fotos pero debe haber algo malo en el código porque se queda pegado como 2 minutos.

Por qué?
Sorry, no me fijé!...

Está mal el bucle, nunca se deja de cumplir la condición de $contador <= 9.. pq $contador no existe, debería ser $i

;)
__________________
>> Eleazan's Source
>> @Eleazan
  #8 (permalink)  
Antiguo 20/11/2012, 10:36
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Respuesta: Borrar varias fotos con ciclo for

Tu for esta muy mal, la estructura es:
Código:
for (variable inicial; condicional para ejecutar; incremento o decremento)
Tienes muy mal el for ya que nunca trabajas con la variable inicial dentro del condicional, por eso entra en un loop infinito y te llega esa alerta.

Saludos.
  #9 (permalink)  
Antiguo 20/11/2012, 10:50
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 16 años, 4 meses
Puntos: 15
Respuesta: Borrar varias fotos con ciclo for

Es cierto, tampoco lo vi. Mil gracias!!!!
__________________
Caminando con el corazón partío

Etiquetas: fotos, ciclos
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 04:11.