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. Cita: Iniciado por jaronu muestra la ruta que le pasas al script de subida y el proceso de subida. Ok , $ruta="users/images" Asi las sube ...

  #31 (permalink)  
Antiguo 09/10/2008, 05:41
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 22 años, 5 meses
Puntos: 8
Respuesta: unlink no me funciona

Cita:
Iniciado por jaronu Ver Mensaje
muestra la ruta que le pasas al script de subida y el proceso de subida.
Ok ,
$ruta="users/images"
Asi las sube perfecto

$ruta="../users/images";
Así no sube nada porque esa no es su ruta

De todas formas insisto una vez más que la subida la hace perfectamente , las sube todas las que quiero sin problema , el problema está en el borrado, el permiso de la carpta images es 777 así que tampoco es eso sino devolvería problemas de permisos ¿no?.
Un saludo
  #32 (permalink)  
Antiguo 09/10/2008, 05:43
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 8 meses
Puntos: 52
Respuesta: unlink no me funciona

y el proceso de subida?

Yo subo archivos a una carpeta de mi servidor y los borro sin problemas, mi unico fin es ayudarte, como el de este foro, ayudar.
  #33 (permalink)  
Antiguo 09/10/2008, 05:52
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 8 meses
Puntos: 52
Respuesta: unlink no me funciona

aqui concatenas las variables, haces lo mismo al subir??
$ImgName=$AdId.$sufijo.$ImgName;


Y aqui transformas en minusculas el nombre del archivo, haces lo mismo al subir??

$ImgName=strtolower($ImgName);
  #34 (permalink)  
Antiguo 09/10/2008, 07:05
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 22 años, 5 meses
Puntos: 8
Respuesta: unlink no me funciona

Cita:
Iniciado por jaronu Ver Mensaje
muestra la ruta que le pasas al script de subida y el proceso de subida.

hay sistemas para subir archivos en este foro, has visto alguno??

para ver las diferencias con el tuyo

seria mas facil ver si hay algun error de ruta u otra cosa

pero si no quieres poner el script tu mismo, es mas dificil ayudarte

un saludo
Bueno gracias ante todo pero creo haber dicho una y otra vez que SUBE PERFECTAMENTE Los archivos , el problema es el borrado.

Pero no tengo ningún problema de poner el código, de todas formas todo sería imposible ya que las imágenes se redimensioan mediante una clase .

function proces_img($file,$id) {
/* directorio de subida de imágenes */
Código:
include("diccionario.php");

$test=comprueba_foto($file);
	if ($test)
		{ 
			$id=trim($id);
			
			//subimos la imagen convertimos los caracteres del nombre a minúsculas
			$file['name']=strtolower($file['name']);
			
			$file['name']=$id.$sufijo.$file['name'];

			
			/* comprobamos si tiene guines - y los sustituimos por guiness bajos _ */
		  if (strpos($file['name'],"-") )
			$file['name']=eliminar_guiones($file['name']);  	
			
			if ( upload_image($file,$path) )
									
			return true; 
			
			return false;
			
		 }
	else
			return false; 
			 
}
Función que sube el archivo mediante clases despúes de redimensionar ç
Código:
function upload_image($image,$path)

{

if ($image) {

    // ---------- IMAGE UPLOAD ----------
    
    // we create an instance of the class, giving as argument the PHP object 
    // corresponding to the file field from the form
    // All the uploads are accessible from the PHP object $_FILES
    $handle = new Upload($image);

    // then we check if the file has been uploaded properly
    // in its *temporary* location in the server (often, it is /tmp)
    if ($handle->uploaded) {
        // yes, the file is on the server
        // below are some example settings which can be used if the uploaded file is an image.
        $handle->image_resize            = true;
        $handle->image_ratio_y       = true;
        $handle->image_x                 = 80;
						


        // now, we start the upload 'process'. That is, to copy the uploaded file
        // from its temporary location to the wanted location
        // It could be something like $handle->Process('/home/www/my_uploads/');
        $handle->Process( $path );

        
        // we check if everything went OK
        if ($handle->processed) {
            // everything was fine !
          
			return true;
         } 
		else
			return false;
		  
     }
	 return false;
  }
	return false;
}
Un saludo y gracias
  #35 (permalink)  
Antiguo 09/10/2008, 09:46
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 22 años, 5 meses
Puntos: 8
Respuesta: unlink no me funciona

Esto es raro raro raro, despúes de muchas horas probando todo lo que se me ocurría y lo que se me iba sugiriendo por estos foros he llegado a la conclusión que esto es muy raro: explico

con la función delante
Código:
function borrar_archivo ($ImgId,$AdId,$ImgName) {

/* le añadimos el sufijo del AdID a cada imagen para localizarla en el servidor */
include("diccionario.php");
$ImgName=$AdId.$sufijo.$ImgName;
$ImgName=strtolower($ImgName);
$link="users/images/$ImgName";
if ( !unlink($link) )
echo "<span class='aviso'>no se pudo borrar el archivo $ImgName </span>";
else  {
borrar_img($ImgId);
echo "Imagen borrada correctamente, gracias";

}

}
Tal y como está la función ahora NO BORRA EL ACHIVO EN CUESTIÓN ahora si en vez de la variable $ImgName le pongo el nombre de la imagen $ImgName 213ansimpsons_ma.jpg SI LA BORRA ¿porque? ¿quien entiende esto?, logicamente alguno me rpeguntaréis ¿seguro que $ImgName tiene valor , la respuesta es si , primero porque cuando me da el error además de salir el nombre de esta en el mismo error fijaros en este cacho
Código:
echo "<span class='aviso'>no se pudo borrar el archivo $ImgName </span>";
no se pudo borrar el archivo 213ansimpsons_ma.jpg
sino tuviera valor no saldría aquí tampoco ¿verdad?.
Bueno en fin que es un misterio y seguro q es una chorrada que cuando la vea clara me daré de bofetadas como siempre.
Código:
Warning: unlink(users/images/213ansimpsons_ma.jpg )
Un saludo y gracias
  #36 (permalink)  
Antiguo 09/10/2008, 09:59
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 22 años, 5 meses
Puntos: 8
Respuesta: unlink no me funciona

La aguja en un pajar encontrada ¡¡¡¡¡ aleluya ¡¡¡¡

Solucionado del modo más simple y estúpido al mismo tiempo. Antes de concatenar el nombre de la imagen con el $path la Id y el sufijo para completar la ruta de la imagen simplemente le meto trim para eliminar posibles espacios en blanco , parece ser aunque yo no los apreciaba que por delante tenía algunos. y ahora encuentra la ruta tal como la tenía al principio users/images/$imagen
trim($ImgName);

Gracias por la ayuda que siempre prestáis en estos foros.
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




La zona horaria es GMT -6. Ahora son las 03:22.