Foros del Web » Programando para Internet » PHP »

unlink() no me funciona

Estas en el tema de unlink() no me funciona en el foro de PHP en Foros del Web. Hola Necesito que me ayuden a entender que estoy haciendo mal. La idea es eliminar un registro en el que guardo el nombre de las ...

  #1 (permalink)  
Antiguo 12/08/2010, 10:18
 
Fecha de Ingreso: julio-2009
Mensajes: 311
Antigüedad: 14 años, 9 meses
Puntos: 0
Pregunta unlink() no me funciona

Hola
Necesito que me ayuden a entender que estoy haciendo mal.
La idea es eliminar un registro en el que guardo el nombre de las 4 imagenes del aviso.
Cada imagen es guardada en dos carpertas diferentes porque estan en tamaños diferentes.
El registro lo elimino sin problemas.
Pero las imagenes no son borradas.
Aclaro que he corrrido esta pagina de a partes y he verificado que las rutas sean correctas.
Gracias por ayudarme

`
Código PHP:
include 'db.php';

$idAviso=$_POST[idAviso];

$tpropiedad=Trim($_POST['tpropiedad']);
if (
$tpropiedad==="Casa") {$tabla="avisos";$carpeta="C";$carpeta2="C2";}
if (
$tpropiedad==="Apartamento") {$tabla="avisos2";$carpeta="Ap";$carpeta2="Ap2";}

//elimino las imagenes de las carpetas de fotos
$consultaSQL="Select imagen1,imagen2,imagen3,imagen4 FROM ".$tabla." WHERE idAviso = '".$idAviso."'";
$resultado=mysql_query($consultaSQL);
$row=mysql_fetch_array($resultado);

if(!empty(
$row['imagen1'])){
$imagen1 $row['imagen1'];
$ruta1="../images/".$carpeta."/".$imagen1;
$ruta2="../images/".$carpeta2."/".$imagen1;
unlink($ruta1);
unlink($ruta2);
}
if(!empty(
$row['imagen2'])){
$imagen2 $row['imagen2'];
$ruta1="../images/".$carpeta."/".$imagen2;
$ruta2="../images/".$carpeta2."/".$imagen2;
unlink($ruta1);
unlink($ruta2);
}
if(!empty(
$row['imagen3'])){
$imagen3 $row['imagen3'];
$ruta1="../images/".$carpeta."/".$imagen3;
$ruta2="../images/".$carpeta2."/".$imagen3;
unlink ($ruta1);
unlink ($ruta2);
}
if(!empty(
$row['imagen4'])){
$imagen4 $row['imagen4'];
$ruta1="../images/".$carpeta."/".$imagen4;
$ruta2="../images/".$carpeta2."/".$imagen4;
unlink ($ruta1);
unlink ($ruta2);
}
//elimino registro de la base de datos
 
$consultaSQL="DELETE FROM ".$tabla." WHERE idAviso = '".$idAviso."'";
 
mysql_db_query($database$consultaSQL$conexion);
 
$ruta="MisAvisos.php?idAviso=$idAviso & mje='Aviso Eliminado'";
 
header("location:$ruta");
 exit(); 
  #2 (permalink)  
Antiguo 12/08/2010, 10:35
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Respuesta: unlink() no me funciona

puede ser problema de permisos, checa que tengas los permisos correctos.
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.

Última edición por eits; 12/08/2010 a las 10:40
  #3 (permalink)  
Antiguo 12/08/2010, 10:43
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Respuesta: unlink() no me funciona

al ejecutar unlink() te muestra algun error? o simplemente no elimina el fichero?


EDITO: Revisando un poco el codigo, seria mejor usar el path completo y no relativo, pruebalo con el path completo y nos cuentas.
  #4 (permalink)  
Antiguo 12/08/2010, 10:44
 
Fecha de Ingreso: junio-2006
Mensajes: 126
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: unlink() no me funciona

Deberias de mostrar cual es el error y sino muestra ninguno seguro es por los permisos como decia eits.
__________________
Saludos, Javier Hernández
http://www.javierhernandez.info
  #5 (permalink)  
Antiguo 12/08/2010, 11:15
 
Fecha de Ingreso: julio-2009
Mensajes: 311
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: unlink() no me funciona

No muestra errores , veo que al mirar mi codigo Uds no le ven errores entonces vere como se le asignan permisos ni idea la verdad
  #6 (permalink)  
Antiguo 12/08/2010, 11:38
 
Fecha de Ingreso: julio-2009
Mensajes: 311
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: unlink() no me funciona

Mire en la base de datos y ambas carpetas que contienen las imagenes tienen permisos 777 y cada una de las imagenes tb pero pude observar un detalle que creo que es lo que esta generando problema pero no se cmo resolverlo.
Mirando en el programa que uso para subir veo que las carpetas y todos las paginas php tienen en Owner mi numero de username para contactar sin embargo las imagenes dentro de las carpetas tinen en Owner 99.
Si fuera eso como lo cambio
Gracias a todos los que me estan ayudando..
  #7 (permalink)  
Antiguo 12/08/2010, 11:42
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: unlink() no me funciona

una dato:

- PHP no puede borrar archivos ni carpetas que no haya creado por si mismo...

si subes los archivos manualmente, es obvio que PHP no va a poder borrarlos... pues el uso de funciones del sistema archivos requiere de ser el owner...

así de simple, si creas un archivo con código PHP fácilmente se puede borrar con otro código PHP.... pero si se trata de un archivo que solo subiste al hosting -y depende del hosting, claro- y deseas borrarlo con PHP por ende el problema... (:

PDTA: si activas el reporte de errores, y muestras el mensaje de error muchos lo agradecerían!!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #8 (permalink)  
Antiguo 12/08/2010, 11:50
 
Fecha de Ingreso: julio-2009
Mensajes: 311
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: unlink() no me funciona

Cita:
Iniciado por pateketrueke Ver Mensaje
una dato:

- PHP no puede borrar archivos ni carpetas que no haya creado por si mismo...

si subes los archivos manualmente, es obvio que PHP no va a poder borrarlos... pues el uso de funciones del sistema archivos requiere de ser el owner...

así de simple, si creas un archivo con código PHP fácilmente se puede borrar con otro código PHP.... pero si se trata de un archivo que solo subiste al hosting -y depende del hosting, claro- y deseas borrarlo con PHP por ende el problema... (:

PDTA: si activas el reporte de errores, y muestras el mensaje de error muchos lo agradecerían!!
Las imagenes las sube un usuario mediante formulario y estando logeado.
No las subo yo.
Mire en el Cute para ver como estaba el tema de los permisos.
Y referente al hosting provisoriamente lo tengo en 000Webhosting pues estoy en etapa de pruebas luego lo trasladare a un servidor de pago
  #9 (permalink)  
Antiguo 12/08/2010, 11:57
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Respuesta: unlink() no me funciona

Entonces, el usuario php es el 99 y las carpetas, que posiblemente creaste tu desde el ftp, tienen permisos tu numero de usuario, de ahi el posible problema.

De todas formas, activa el sistema de errores, para ver que esta pasando exactamente.
Pon esto al principio del script, antes de poner ninguna otra linea:
Código PHP:
error_reporting(E_ALL);
ini_set("display_errors"1); 
Y pruebas a ver que error te da.
  #10 (permalink)  
Antiguo 12/08/2010, 12:04
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Respuesta: unlink() no me funciona

entonces es probable que tengas que echar mano de getcwd y de chdir para ubicarte en el lugar correcto.

saludos.
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #11 (permalink)  
Antiguo 12/08/2010, 12:24
 
Fecha de Ingreso: julio-2009
Mensajes: 311
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: unlink() no me funciona

no genera errores pero no ejecuta la eliminacion de las imagenes creo que es como dijo DooBie las carpetas as cree yo desde ftp y tienen como propietario mi nombre de usuario y las iamgens subidas con php tienen propietario 99 cual debo cambiar y de qeu forma
-gracias por ayudarme
+
  #12 (permalink)  
Antiguo 12/08/2010, 12:30
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Respuesta: unlink() no me funciona

Que raro, probaste lo de la ruta completa que te comente antes?
  #13 (permalink)  
Antiguo 12/08/2010, 12:43
 
Fecha de Ingreso: julio-2009
Mensajes: 311
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: unlink() no me funciona

de esta forma he usado las rutas en todo el sitio sin prolbemas, alguine me pude tirar una idea como cambio de propietario las imagenes , es lo que tengo que hacer??
  #14 (permalink)  
Antiguo 12/08/2010, 13:16
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Respuesta: unlink() no me funciona

Es decir, que como te ha funcionado para otras cosas, no lo pruebas... En fin.

Para cambiar el grupo, si te deja el hosting, es con el comando chgrp GRUPO o con chown USUARIO:GRUPO
  #15 (permalink)  
Antiguo 12/08/2010, 13:29
 
Fecha de Ingreso: julio-2009
Mensajes: 311
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: unlink() no me funciona

estos son los errores que me salieron , puse alguna linea mas para ver que esta sucediendo

Warning: unlink(../images/C/6351) [function.unlink]: No such file or directory in /home/a3434157/public_html/deleteAviso.php on line 27

Warning: unlink(../images/C2/6351) [function.unlink]: No such file or directory in /home/a3434157/public_html/deleteAviso.php on line 28

Warning: unlink(../images/C/6351) [function.unlink]: No such file or directory in /home/a3434157/public_html/deleteAviso.php on line 29

Código PHP:
if(!empty($row['imagen1'])){
$imagen1 $row['imagen1'];
$ruta1="../images/".$carpeta."/".$imagen1;
$ruta2="../images/".$carpeta2."/".$imagen1;
echo 
"ruta1".$ruta1;
echo 
"ruta2".$ruta2;
unlink($ruta1);
unlink($ruta2);
if(
unlink($ruta1)){ echo "se ha eliminado la imagen de Carpeta";}
else {echo 
"Imposible eliminar la imagen"; }
if(
unlink($ruta2)){ echo "se ha eliminado la imagen de Carpeta2";}
else{ echo 
"Imposible eliminar la imagen";}

Imposible eliminar la imagen

Warning: unlink(../images/C2/6351) [function.unlink]: No such file or directory in /home/a3434157/public_html/deleteAviso.php on line 31

Imposible eliminar la imagen
  #16 (permalink)  
Antiguo 12/08/2010, 13:36
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: unlink() no me funciona

bueno, los errores son bastante claros.... si no lo entiendes usa un traductor...

como regla de sentido común, siempre se debería comprobar la existencia de un archivo antes de borrarlo... ¿no crees?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #17 (permalink)  
Antiguo 12/08/2010, 14:01
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: unlink() no me funciona

Cita:
Iniciado por marcos46g
unlink(../images/C/6351)
Que tipo de imagen es?... no tiene extension?
__________________
- León, Guanajuato
- GV-Foto
  #18 (permalink)  
Antiguo 12/08/2010, 14:13
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: unlink() no me funciona

Cita:
Imposible eliminar la imagen

Warning: unlink(../images/C2/6351) [function.unlink]: No such file or directory in /home/a3434157/public_html/deleteAviso.php on line 31

Imposible eliminar la imagen
Bueno como bien dijeron el error es que no se ha encontrado ese archivo en esa ruta, así que o bien las imágenes se han subido incorrectamente, o se subieron con algún caracter raro, como la Ñ, auque no es rara xD, que he visto fallos en subida de imágenes al servidor por estas cosas o bien es una cuestión de permisos lo cual se arregla haciendo un :

if(chmod("ruta de la imagen", 0664))
{
if(unlink("ruta de la imagen")) echo "se ha eliminado la imagen";
else echo "no se pudo eliminar la imagen";
}

Pero lo que más me llamó la atención fue:
Warning: unlink(../images/C/6351) ¿El 6351 es el archivo o un directorio?
Porque si es la imagen ¿Donde está la extensión? dudo que puedas borrar un archivo de imagen sin su extensión; 6351.jpg o 6351.gif o la que sea.

Un saludo.
  #19 (permalink)  
Antiguo 12/08/2010, 14:14
 
Fecha de Ingreso: julio-2009
Mensajes: 311
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: unlink() no me funciona

verifico la existencia de la imagen y me da esto
Warning: unlink(../images/C/6351) [function.unlink]: No such file or directory in /home/a3434157/public_html/deleteAviso.php on line 29

pero la imagen si existe y es la ruta correcta , con respecto a la extension (que veo puede estar el problema por ese lado pues cuando seleccionas una imagen de la pc para agregarla al aviso por supuesto que si son jpg la mayoria, luego yo las renombro con el numero de aviso y le agrego un digito mas que corrresponde al numero de foto de ese aviso
es decir la foto 6351 es la foto1 del aviso 635 pero yo no le agrego la extension en ese cambio de nombre y es guardada asi.
Para ser mostrada y todo lo que hago en el sito eso no me a provocado problemas pero veo que en este caso para esto si.
deberia agregarle la extension cuando la renombro??
Gracias a todos lo que con buena onda me estan ayudando
pegom el codigo con el metodo que renombro las imagenes
en el campo imagen1 esta el nombre original

Código PHP:
 $consultaSQL="Update avisos6 SET imagen1='".$imagen1."'WHERE idAviso='".$idAviso."'";
         
          
mysql_db_query($database$consultaSQL$conexion);
          
$archivoRen=$idAviso."1";
          
$archivoRenstr_replace(" " ""$archivoRen); //sin espacios
          
$destino ="images/Ch/".$imagen1;
          
$destinoN="images/Ch/".$archivoRen;    //imagen 120*120
          
$destinoN2="images/Ch2/".$archivoRen;  //imagen original

          
          
           
if (file_exists ($destino))
          {
rename($destino,$destinoN); }
          
$consultaSQL="Update avisos6 SET imagen1='".$archivoRen."'WHERE idAviso='".$idAviso."'";
           
mysql_query($consultaSQL) or die(mysql_error());
          
//guardo la imagen original antes de ser redimensionada
            
if (file_exists ($destinoN))
           {
           
chmod ($destinoN,0777);
           
copy($destinoN,$destinoN2); }
          } 
  #20 (permalink)  
Antiguo 12/08/2010, 14:15
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: unlink() no me funciona

Renombra el archivo con un número si quieres pero mantén su extensión
  #21 (permalink)  
Antiguo 12/08/2010, 14:34
Avatar de SergeMedina  
Fecha de Ingreso: septiembre-2007
Ubicación: Guadalajara, Jalisco
Mensajes: 459
Antigüedad: 16 años, 7 meses
Puntos: 20
Respuesta: unlink() no me funciona

Y otro tip:
Utiliza rutas absolutas para borrar los archivos. Puedes declarar una constante para asignar la ruta base a donde estan las imagenes.

En tu caso, si resuelves la ruta que php esta tratando de buscar seria:
Código code:
Ver original
  1. /home/a3434157/public_html/deleteAviso.php + ../images/C/6351
  2.  
  3. te daria como resultado:
  4. /home/a3434157/images/C/6351
__________________
I see dead pixels
  #22 (permalink)  
Antiguo 12/08/2010, 15:57
 
Fecha de Ingreso: julio-2009
Mensajes: 311
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: unlink() no me funciona

Aca estoy de nuevo he solucionado el problema por el cual se guardaba el nombre de la imagen sin extension .
Tambien corregi de acuerdo a sus sugerencias la ruta absoluta
asi quedo el codigo para una imagen
Código PHP:
consultaSQL="Select imagen1,imagen2,imagen3,imagen4 FROM ".$tabla." WHERE idAviso = '".$idAviso."'";

$resultado=mysql_query($consultaSQL);
$row=mysql_fetch_array($resultado);
if(!empty(
$row['imagen1'])){
$imagen1 $row['imagen1'];
$ruta1="/home/a3434157/images/".$carpeta."/".$imagen1;
$ruta2="/home/a3434157/images/".$carpeta2."/".$imagen1;
//echo "ruta1".$ruta1`."<br>";
//echo "ruta2".$ruta2;
if (file_exists($ruta1)){unlink($ruta1);}
if (
file_exists($ruta2)){unlink($ruta2);}
if(
unlink($ruta1)){ echo "Se ha eliminado la imagen de Carpeta";}
else {echo 
"Imposible eliminar la imagen"; }
if(
unlink($ruta2)){ echo "se ha eliminado la imagen de Carpeta2";}
else{ echo 
"Imposible eliminar la imagen";}

pero a pesar de todos estos cambios me da el siguiente error
Warning: unlink(/home/a3434157/images/C/6371.jpg) [function.unlink]: No such file or directory in /home/a3434157/public_html/deleteAviso.php on line 27

obviamente he verificado que la imagen esta en la carpeta correcta
Supongo el tema pasa unicamente por los permisos pero vengo probando con algunas ideas que vengo encontrando pero sin llegar a la solucion
  #23 (permalink)  
Antiguo 12/08/2010, 16:02
Avatar de SergeMedina  
Fecha de Ingreso: septiembre-2007
Ubicación: Guadalajara, Jalisco
Mensajes: 459
Antigüedad: 16 años, 7 meses
Puntos: 20
Respuesta: unlink() no me funciona

Código PHP:
Ver original
  1. if (file_exists($ruta1)){unlink($ruta1);} //se borra si existe
  2. if (file_exists($ruta2)){unlink($ruta2);}
  3. if(unlink($ruta1)){ echo "Se ha eliminado la imagen de Carpeta";} //trata de borrarlo de nuevo, fallará si el anterior unlink borro la imagen.
  4. else {echo "Imposible eliminar la imagen"; }
  5. if(unlink($ruta2)){ echo "se ha eliminado la imagen de Carpeta2";}
  6. else{ echo "Imposible eliminar la imagen";}

Estas ejecutando dos veces unlink. La primera vez verificas que exista el archivo, si existe entonces lo borras. La segunda ejecutas unlink dentro de un if.

Cual es la linea 27?
__________________
I see dead pixels
  #24 (permalink)  
Antiguo 12/08/2010, 16:14
 
Fecha de Ingreso: julio-2009
Mensajes: 311
Antigüedad: 14 años, 9 meses
Puntos: 0
Pregunta Respuesta: unlink() no me funciona

Cita:
Iniciado por SergeMedina Ver Mensaje
Código PHP:
Ver original
  1. if (file_exists($ruta1)){unlink($ruta1);} //se borra si existe
  2. if (file_exists($ruta2)){unlink($ruta2);}
  3. if(unlink($ruta1)){ echo "Se ha eliminado la imagen de Carpeta";} //trata de borrarlo de nuevo, fallará si el anterior unlink borro la imagen.
  4. else {echo "Imposible eliminar la imagen"; }
  5. if(unlink($ruta2)){ echo "se ha eliminado la imagen de Carpeta2";}
  6. else{ echo "Imposible eliminar la imagen";}

Estas ejecutando dos veces unlink. La primera vez verificas que exista el archivo, si existe entonces lo borras. La segunda ejecutas unlink dentro de un if.

Cual es la linea 27?
La linea 27 era en la que se repetia el unlink
Quedo asi , ahora no muestra errores pero no borra las imagenes

Código PHP:
$consultaSQL="Select imagen1,imagen2,imagen3,imagen4 FROM ".$tabla." WHERE idAviso = '".$idAviso."'";

$resultado=mysql_query($consultaSQL);
$row=mysql_fetch_array($resultado);
if(!empty(
$row['imagen1'])){
$imagen1 $row['imagen1'];
$ruta1="/home/a3434157/images/".$carpeta."/".$imagen1;
$ruta2="/home/a3434157/images/".$carpeta2."/".$imagen1;
//echo "ruta1".$ruta1`."<br>";
//echo "ruta2".$ruta2;
if (file_exists($ruta1)){if(chmod($ruta10664)){unlink($ruta1);}}
if (
file_exists($ruta2)){if(chmod($ruta20664)){unlink($ruta2);}}

  #25 (permalink)  
Antiguo 12/08/2010, 16:40
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: unlink() no me funciona

Cita:
Iniciado por marcos46g Ver Mensaje
La linea 27 era en la que se repetia el unlink
Quedo asi , ahora no muestra errores pero no borra las imagenes

Código PHP:
$consultaSQL="Select imagen1,imagen2,imagen3,imagen4 FROM ".$tabla." WHERE idAviso = '".$idAviso."'";

$resultado=mysql_query($consultaSQL);
$row=mysql_fetch_array($resultado);
if(!empty(
$row['imagen1'])){
$imagen1 $row['imagen1'];
$ruta1="/home/a3434157/images/".$carpeta."/".$imagen1;
$ruta2="/home/a3434157/images/".$carpeta2."/".$imagen1;
//echo "ruta1".$ruta1`."<br>";
//echo "ruta2".$ruta2;
if (file_exists($ruta1)){if(chmod($ruta10664)){unlink($ruta1);}}
if (
file_exists($ruta2)){if(chmod($ruta20664)){unlink($ruta2);}}

Has comprobado si está entrando en los if de file_exist? Sigo pensando que el problema va a estar en la ruta que se le está pasando.
  #26 (permalink)  
Antiguo 12/08/2010, 16:48
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Respuesta: unlink() no me funciona

Cita:
Iniciado por eits Ver Mensaje
entonces es probable que tengas que echar mano de getcwd y de chdir para ubicarte en el lugar correcto.

saludos.
hazme caso, creo que esto te puede ayudar.
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #27 (permalink)  
Antiguo 12/08/2010, 16:49
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: unlink() no me funciona

Prueba a cambiar las dos últimas líneas de momento, aunque se alargue el código, para ver paso a paso si entra en todas las condiciones.

if (file_exists($ruta1)){if(chmod($ruta1, 0664)){unlink($ruta1);}}
if (file_exists($ruta2)){if(chmod($ruta2, 0664)){unlink($ruta2);}}

Por:
Código PHP:
if ( file_exists($ruta1) )
{
    
    if ( 
chmod($ruta10664)
    {
       if ( 
unlink($ruta1) ) echo 'Parece que borró :P';
       else echo 
'No se pudo borrar';
    }
    else echo 
'No cambia permisos';

}
else echo 
'No encuentra la ruta';    

//Y esto mismo con $ruta2 
  #28 (permalink)  
Antiguo 12/08/2010, 16:55
 
Fecha de Ingreso: julio-2009
Mensajes: 311
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: unlink() no me funciona

realmente tenes razon no entra al if de file_exist?
probe con esta ruta y con esta y no entra con ninguna de las 2
home/a3434157/images/C/6371.jpg
home/a3434157/images/C2/6371.jpg
y poniendo la barra adelante del home
/home/a3434157/images/C/6371.jpg
/home/a3434157/images/C2/6371.jpg
epro no entro en ninguno d elos dos casos
Me voy a enloquecer he estado toda la tarde con esto
Gracias por la ayuda que me estan dando!!!!
  #29 (permalink)  
Antiguo 12/08/2010, 17:10
Avatar de eits  
Fecha de Ingreso: junio-2005
Ubicación: valladolid, yucatán
Mensajes: 1.655
Antigüedad: 18 años, 10 meses
Puntos: 88
Respuesta: unlink() no me funciona

mi último intento ^_^"
Código PHP:
Ver original
  1. echo getcwd();
coloca esto para que te devuelva el directorio donde te encuentras y verificas si es igual a lo que estas colocando.

saludos.
__________________
El amor es la locura mas lucida que tiene el hombre.- Andres Henestrosa
la tristeza no existe, solo es... la ausencia de la felicidad.
  #30 (permalink)  
Antiguo 12/08/2010, 17:49
 
Fecha de Ingreso: julio-2009
Mensajes: 311
Antigüedad: 14 años, 9 meses
Puntos: 0
Pregunta Respuesta: unlink() no me funciona

Cita:
Iniciado por eits Ver Mensaje
mi último intento ^_^"
Código PHP:
Ver original
  1. echo getcwd();
coloca esto para que te devuelva el directorio donde te encuentras y verificas si es igual a lo que estas colocando.

saludos.
probe y me da este resultado

echo getcwd()."<BR>"; me imprime /home/a3434157/public_html
echo $ruta1."<br>"; me imprime home/a3434157/images/C/6371.jpg
Código PHP:

if(!empty($row['imagen1'])){
$imagen1 $row['imagen1'];
$ruta1="home/a3434157/images/".$carpeta."/".$imagen1;
$ruta2="home/a3434157/images/".$carpeta2."/".$imagen1;
echo 
getcwd()."<BR>";
echo 
$ruta1."<br>";
//echo $ruta2."<br>";
if (file_exists($ruta1)){echo "entro";if(chmod($ruta10664)){unlink($ruta1);}}
if (
file_exists($ruta2)){echo "entro2";if(chmod($ruta20664)){unlink($ruta2);}}

sigo dando las gracias a cada uno que me va ayudando a encontrar la solucion

Etiquetas: unlink
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 19:12.