Foros del Web » Programando para Internet » PHP »

error con function.unlink

Estas en el tema de error con function.unlink en el foro de PHP en Foros del Web. Warning: unlink(../fotosocios/) [function.unlink]: Not owner in /mnt/web7/13/70/51965670/htdocs/panelcontrol/eliminar_usuarios.php on line 22 ese es el error que recibo al intentar borrar una foto, y esta es la ...
  #1 (permalink)  
Antiguo 06/03/2009, 06:58
 
Fecha de Ingreso: septiembre-2008
Mensajes: 15
Antigüedad: 15 años, 7 meses
Puntos: 0
Exclamación error con function.unlink

Warning: unlink(../fotosocios/) [function.unlink]: Not owner in /mnt/web7/13/70/51965670/htdocs/panelcontrol/eliminar_usuarios.php on line 22


ese es el error que recibo al intentar borrar una foto, y esta es la parte del codigo referente a eso:

Código PHP:
$foto laquesea.jpg;
$archivo "../fotosocios/".$foto;

chmod($ruta,0777);

unlink($ruta); 
Para descartar posibles motivos:

1.- El archivo existe, sino daria error de que no existe.

2.- chmod() lo acepta, con lo cual no es de ahi el error.

3.- tambien probé poniendole la ruta /mnt/web7/13/70/51965670/htdocs/fotosocios/ y la aceptó pero dio el mismo error.. otras rutas avisa como inexistente.

4.- he probado tanto con archivos subidos desde ftp como con archivos subidos por scripts php
  #2 (permalink)  
Antiguo 06/03/2009, 07:22
Avatar de emiliodeg  
Fecha de Ingreso: septiembre-2005
Ubicación: Córdoba
Mensajes: 1.830
Antigüedad: 18 años, 7 meses
Puntos: 55
Respuesta: error con function.unlink

siempre antes de borrar corrobora que exista

Código PHP:
if(is_file($archivo)){
unlink($archivo);

sino fijate con is_writeable(); si te da false le pasas el chmod();

saludos
__________________
Degiovanni Emilio
developtus.com
  #3 (permalink)  
Antiguo 06/03/2009, 07:31
 
Fecha de Ingreso: septiembre-2008
Mensajes: 15
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: error con function.unlink

Cita:
Iniciado por emiliodeg Ver Mensaje
siempre antes de borrar corrobora que exista

Código PHP:
if(is_file($archivo)){
unlink($archivo);

sino fijate con is_writeable(); si te da false le pasas el chmod();

saludos
Sigue teniendo el mismo error usando cada una Not owner in
  #4 (permalink)  
Antiguo 06/03/2009, 08:12
 
Fecha de Ingreso: abril-2006
Mensajes: 1.128
Antigüedad: 18 años
Puntos: 33
Respuesta: error con function.unlink

Deivi-R:
Lo que te ha expuesto el amigo emiliodeg es
para que refines o mejores tu codigo y
son excelentes ideas.

Referente tu error como podemos saber
si no muestras el codigo del archivo
donde ocurre el error.

Lo que me dice ese error es que parece que para borrar un archivo
se requiere de el dueño o usuario registrado para
hacerlo y por ende al tratar de borrar sin validar,
el codigo da ese error.

Saludos
Franco
  #5 (permalink)  
Antiguo 06/03/2009, 08:46
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: error con function.unlink

En efecto, revisa que no tengas activado safe_mode, si lo esta activado te va a dar ese error, por lo que vas a tener que pasar safe_mode a Off.

Saludos
  #6 (permalink)  
Antiguo 06/03/2009, 12:29
 
Fecha de Ingreso: septiembre-2008
Mensajes: 15
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: error con function.unlink

ok, aun asi, he empleado lo que me decis, lo veo buena idea por si el archivo no existe o no tiene permisos, y haciando pruebas, mi codigo generico ha quedado así y funciona, por si a alguien le soluciona algo parecido.

Ya cada uno complica mas el codigo para recibir las variables mediante formularios o botones.

Un saludo y gracias.

Código PHP:
$foto laquesea.jpg;
$ruta "/mnt/web7/13/70/51965670/htdocs/fotosocios/".$foto;

if(
is_file($ruta)){

if(
is_writeable($ruta)){
unlink($ruta);
echo 
"El archivo se ha borrado.";

}else{

chmod($ruta,0777);
unlink($ruta);
echo 
"El archivo se ha borrado.";

}

}else{

echo 
"El archivo no existe";

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 00:55.