Foros del Web » Programando para Internet » PHP »

Modificar y Eliminar fotos subidas al servidor con sus entradas en la BD

Estas en el tema de Modificar y Eliminar fotos subidas al servidor con sus entradas en la BD en el foro de PHP en Foros del Web. Hola. El problema que se me plantea ahora es el siguiente. He subido fotos a un directorio en mi servidor y me ha dejado las ...
  #1 (permalink)  
Antiguo 13/08/2009, 17:08
 
Fecha de Ingreso: junio-2008
Mensajes: 287
Antigüedad: 15 años, 10 meses
Puntos: 1
Modificar y Eliminar fotos subidas al servidor con sus entradas en la BD

Hola.

El problema que se me plantea ahora es el siguiente.

He subido fotos a un directorio en mi servidor y me ha dejado las rutas en la base de datos.

Tambien he podido modificar los registros en la base de datos lo que tengo que hacer ahora es borrar la foto que tenia en el servidor y poner la nueva.

Alguien sabe como podria hacerlo?

Muchas gracias.
  #2 (permalink)  
Antiguo 13/08/2009, 17:21
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 2 meses
Puntos: 25
Respuesta: Modificar y Eliminar fotos subidas al servidor con sus entradas en la BD

para remover la foto seria:

Código PHP:
unlink("laruta/foto.jpg"); 

para actualizar la nueva imagen
Código PHP:
mysql_query("UPDATE tabla SET campo='nuevafoto' WHERE id='ID'"); 
Es un ejemplo, adaptalo a tus necesidades. Saludos
__________________
Hospedaje Web al mejor costo!
  #3 (permalink)  
Antiguo 13/08/2009, 17:34
Avatar de anjovi4  
Fecha de Ingreso: diciembre-2005
Mensajes: 37
Antigüedad: 18 años, 4 meses
Puntos: 0
Respuesta: Modificar y Eliminar fotos subidas al servidor con sus entradas en la BD

Mira si guardas las rutas de las imagenes quiere decir que guardas el nombre y la extension de la imagen. Entonces lo que tienes que hacer es subir la nueva imagen con el nombre y extension que tienes guardado en la db, esto hara que se sobreescriba el archivo. Haciendo esto no habra necesidad de borrala y subir nuevamente sino en un solo paso haces las dos cosas.

Bueno saludos bye...
  #4 (permalink)  
Antiguo 13/08/2009, 17:39
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 2 meses
Puntos: 25
Respuesta: Modificar y Eliminar fotos subidas al servidor con sus entradas en la BD

pues yo creo que si deberia de actualizar y eliminar la imagen vieja SI ES UNA!. Esto evita espacio en HD y una tabla enorme con campos basura, por asi llamarlo.
__________________
Hospedaje Web al mejor costo!
  #5 (permalink)  
Antiguo 13/08/2009, 17:46
 
Fecha de Ingreso: junio-2008
Mensajes: 287
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: Modificar y Eliminar fotos subidas al servidor con sus entradas en la BD

Este es el codigo que estoy utilizando lo tengo puesto antes a modificar la foto

Código PHP:
$referencia=$_GET['referencia'];
    
mysql_query("select * from inmuebles where referencia = $referencia");
    
$fotico1=$row["foto1p"];
    
//si hay alguna imagen que borrar se borra
    
if (!($fotico1=='../../venta/'))
        {
        
unlink("../../venta/$fotico1"); 
        
mysql_query("delete from inmuebles where referencia = $referencia"); 
me da error diciendome que no encuentra el directorio o el archivo?

Alguien sabe donde tengo el fallo?

Saludos.
  #6 (permalink)  
Antiguo 13/08/2009, 17:53
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 2 meses
Puntos: 25
Respuesta: Modificar y Eliminar fotos subidas al servidor con sus entradas en la BD

Elimina esta linea: if (!($fotico1=='../../venta/'))

y pon la siguiente:

if(file_exists($fotico1))



Saludos
__________________
Hospedaje Web al mejor costo!
  #7 (permalink)  
Antiguo 14/08/2009, 02:04
 
Fecha de Ingreso: junio-2008
Mensajes: 287
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: Modificar y Eliminar fotos subidas al servidor con sus entradas en la BD

Hola, gracias a todos por la respuesta.

Realmente cuando me refiero que quiero actualizar una foto no es cambiar esa misma foto con otra con el mismo nombre si no poner otra foto totalmente diferente, con lo que me ha comentado "Urgido" ya parece que lo voy consiguiendo, ahora el fallo que me da que no tengo permisos para borrar esos archivos.

Hay alguna forma de darle permisos momentaneos al archivo que deseo eliminar?

osea que antes de lanzar el unlink me cambie los permisos del archivo para poder borrarlo.

Muchas gracias.
  #8 (permalink)  
Antiguo 14/08/2009, 04:49
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 2 meses
Puntos: 25
Respuesta: Modificar y Eliminar fotos subidas al servidor con sus entradas en la BD

que error te sale?
__________________
Hospedaje Web al mejor costo!
  #9 (permalink)  
Antiguo 15/08/2009, 09:32
 
Fecha de Ingreso: junio-2008
Mensajes: 287
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: Modificar y Eliminar fotos subidas al servidor con sus entradas en la BD

Hola buenas.

El error que me da es el siguiente:

Código PHP:
Warningunlink(../../venta/) [function.unlink]: Permission denied in C:AppServwwwTuvivienda.netgestioninmueblesmodif3.php on line 27 
Supongo que es algo con los permisos del directorio y archivo que deseo borrar.

Saludos.
  #10 (permalink)  
Antiguo 15/08/2009, 12:01
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 2 meses
Puntos: 25
Respuesta: Modificar y Eliminar fotos subidas al servidor con sus entradas en la BD

usa rutas completas ejemplo:

unlink("/home/usuarios/dominios.com/public_html/file.jpg");
__________________
Hospedaje Web al mejor costo!
  #11 (permalink)  
Antiguo 16/08/2009, 05:34
 
Fecha de Ingreso: junio-2008
Mensajes: 287
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: Modificar y Eliminar fotos subidas al servidor con sus entradas en la BD

Cita:
Iniciado por anjovi4 Ver Mensaje
Mira si guardas las rutas de las imagenes quiere decir que guardas el nombre y la extension de la imagen. Entonces lo que tienes que hacer es subir la nueva imagen con el nombre y extension que tienes guardado en la db, esto hara que se sobreescriba el archivo. Haciendo esto no habra necesidad de borrala y subir nuevamente sino en un solo paso haces las dos cosas.

Bueno saludos bye...
Hola buenas, gracias por la respuesta.

Si fuese yo el que tengo que cambiar las imagenes no tengo problema entro por FTP y las borro pero en este caso al cliente se lo tengo que poner facil, y no le puedo decir que se fije en el nombre de la imagen a ver si es el mismo que la que ya tenia anteriormente.

De todas formas muchas gracias, otra cosa que ya se.

Saludos.
  #12 (permalink)  
Antiguo 16/08/2009, 05:38
 
Fecha de Ingreso: junio-2008
Mensajes: 287
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: Modificar y Eliminar fotos subidas al servidor con sus entradas en la BD

Cita:
Iniciado por urgido Ver Mensaje
usa rutas completas ejemplo:

unlink("/home/usuarios/dominios.com/public_html/file.jpg");
Hola buenos dias.

He intentado poner la ruta completa como me comentabas, y me sigue dando el mismo fallo, seguro que es algo que hago mal pero no se donde tengo el fallo

Dejo el codigo que tengo para ver si por casualidad ven donde tengo el fallo.

Código PHP:
    mysql_query("select * from inmuebles where referencia = $referencia");
    
$fotico1=$row["foto1p"];
    
//si hay alguna imagen que borrar se borra
    
if(file_exists("/www.dominio.net/public_html/venta/$fotico1"))
        {
        
unlink("/www.dominio.net/public_html/venta/$fotico1"); 
        }
        else
        {
        echo 
"Error, no se ha borrado la imagen";
        exit;
        } 
www.dominio.net como se habran imaginado no es mi dominio.

Saludos.
  #13 (permalink)  
Antiguo 16/08/2009, 08:28
 
Fecha de Ingreso: julio-2009
Mensajes: 118
Antigüedad: 14 años, 9 meses
Puntos: 2
Respuesta: Modificar y Eliminar fotos subidas al servidor con sus entradas en la BD

el error esta en:
$fotico1=$row["foto1p"];

si haces un echo $fotico1; verás que está vacío y por eso no elimina nada.

Cambia esto:

Código PHP:
 mysql_query("select * from inmuebles where referencia = $referencia");
    
$fotico1=$row["foto1p"]; 
Por


Código PHP:
$query mysql_query('select * from inmuebles where referencia =\''.addslashes($referencia).'\'');

        while (
$row mysql_fetch_assoc($query)) 
        {
               
$fotico1=$row["foto1p"];
        } 
Saludos!
__________________
Todo sobre programación en PHP
  #14 (permalink)  
Antiguo 16/08/2009, 12:22
 
Fecha de Ingreso: junio-2008
Mensajes: 287
Antigüedad: 15 años, 10 meses
Puntos: 1
Respuesta: Modificar y Eliminar fotos subidas al servidor con sus entradas en la BD

Hola gracias por responder.

Despues de las modificaciones me da este error

Código PHP:
Warningunlink(../../venta/) [function.unlink]: Permission denied in 
Si que me elimina la entrada en la base de datos pero las imagenes siguen si borrarse.

Gracias.
  #15 (permalink)  
Antiguo 16/08/2009, 12:29
 
Fecha de Ingreso: agosto-2009
Ubicación: Lanzarote - Canarias
Mensajes: 57
Antigüedad: 14 años, 8 meses
Puntos: 2
Respuesta: Modificar y Eliminar fotos subidas al servidor con sus entradas en la BD

creo que no tienes ningun problema cuando subas un archivo con el mismo nombre este sobreescribe el viejo. para el unlink prueba de hacer un chmod($file,777); y luego el 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 15:29.