Bienvenido a datoweb.com!! En este foro podrás encontrar ayuda sobre diseño y desarrollo web en general. Si quieres formar parte de esta comunidad para pedir ayuda o colaborar ayudando a otros usuarios del foro solo tienes que registrarte desde el siguiente enlace: Registrarse en el Foro

Borrar imagenes subidas al servidor con php

Hola, compré una web de anuncios de coches y todo perfecto hasta ahora muy satisfecho .. pero me topé con un problema a la hora de subir los anuncios, cuando voy a borrar uno todo bien pero las imagenes subidas se quedan en el hosting ..
me gustaria que al borrar anuncio se borren las imagenes del servidor tambien , he oido que se puede a traves de la funcion unlink alguien me puede ayudar ? muchas gracias.
Editado
0
Puntos
5
Resp
213
Visitas
Por webcampeon hace 4 meses
Principiante offline

Respuesta #1

hola, como dices con unlink puedes eliminar las imágenes subidas al servidor de manera sencilla:
unlink('../carpeta/imagen.jpg');
si dejas como tienes montado el código del fichero que te borra la imagen de la base de datos te puedo explicar como implementar esto

salu2
0
Puntos
Por alber hace 4 meses
Administrador offline

Respuesta #2

aqui te lo dejo
<?php require_once ('../conexion.php');


   if (!isset($_SESSION['iduser']) || !$_POST['idpost']){
	   
	   header ('Location:'.$dato['0']);
   }



	//CONSULTA BASE DATOS 2
    mysql_select_db($database_conexion, $conexion);
    $query_DatosUser2 = sprintf("SELECT * FROM z_posts WHERE id=%s ",$_POST['idpost'],"int");
    $DatosUser2 = mysql_query($query_DatosUser2, $conexion) or die(mysql_error());
    $row_DatosUser2 = mysql_fetch_assoc($DatosUser2);
    $totalRows_DatosUser2 = mysql_num_rows($DatosUser2);
	
	
	
	if ($row_DatosUser2['autor']==$_SESSION['iduser']){
		
	//BORRADO BASE DATOS
    $deleteSQL = sprintf("DELETE FROM z_posts WHERE id=%s",
                               GetSQLValueString($_POST['idpost'], "int"));
        
    mysql_select_db($database_conexion, $conexion);
    $Result1 = mysql_query($deleteSQL, $conexion) or die(mysql_error());
		
		}
	
	
	mysql_free_result($DatosUser2);


?>
0
Puntos
Por webcampeon hace 3 meses
Principiante offline

Respuesta #3

quiero que al borrar el anuncio se borren las imagenes subidas a ese anuncio, si alguien me puede ayudar gracias.
0
Puntos
Por webcampeon hace 3 meses
Principiante offline

Respuesta #4

pues lo que te estaba diciendo campeón, cambia el código que pusiste arriba por este y te lo llevas hecho ;):
<?php require_once ('../conexion.php');


   if (!isset($_SESSION['iduser']) || !$_POST['idpost']){
	   
	   header ('Location:'.$dato['0']);
   }



	//CONSULTA BASE DATOS 2
    mysql_select_db($database_conexion, $conexion);
    $query_DatosUser2 = sprintf("SELECT * FROM z_posts WHERE id=%s ",$_POST['idpost'],"int");
    $DatosUser2 = mysql_query($query_DatosUser2, $conexion) or die(mysql_error());
    $row_DatosUser2 = mysql_fetch_assoc($DatosUser2);
    $totalRows_DatosUser2 = mysql_num_rows($DatosUser2);
	
	
	
	if ($row_DatosUser2['autor']==$_SESSION['iduser']){
		
	unlink('../img/upload/'.$row_DatosUser2['imagen']);

	//BORRADO BASE DATOS
    $deleteSQL = sprintf("DELETE FROM z_posts WHERE id=%s",
                               GetSQLValueString($_POST['idpost'], "int"));
        
    mysql_select_db($database_conexion, $conexion);
    $Result1 = mysql_query($deleteSQL, $conexion) or die(mysql_error());
		
		}
	
	
	mysql_free_result($DatosUser2);


?>
solo tienes que agregar la linea que elimina el fichero que corresponde a ese post:
unlink('../img/upload/'.$row_DatosUser2['imagen']);
con eso ya tienes una idea mas aproximada en la cual puedes hacer y deshacer

salu2
2
Puntos
Por alber hace 3 meses
Administrador offline

Respuesta #5

gracias por tu ayuda idolo ! Salu2.
1
Puntos
Por webcampeon hace 3 meses
Principiante offline

Relaccionados

Para comentar Inicia sesión o Registrate