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
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
Puntos
4848
Visitas
Visitas
5
Resp
Resp
Por webcampeon hace 80 meses
Principiante
Respuesta #1
hola, como dices con unlink puedes eliminar las imágenes subidas al servidor de manera sencilla:
salu2
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
Puntos
Por alber hace 80 meses
Administrador
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
Puntos
Por webcampeon hace 80 meses
Principiante
Respuesta #3
quiero que al borrar el anuncio se borren las imagenes subidas a ese anuncio, si alguien me puede ayudar gracias.
0
Puntos
Puntos
Por webcampeon hace 80 meses
Principiante
Respuesta #4
pues lo que te estaba diciendo campeón, cambia el código que pusiste arriba por este y te lo llevas hecho ;):
salu2
<?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
Puntos
Por alber hace 80 meses
Administrador
Respuesta #5
gracias por tu ayuda idolo ! Salu2.
1
Puntos
Puntos
Por webcampeon hace 80 meses
Principiante