Хорошо, суть в том. У меня есть галерея изображений на моем сайте. Я могу загружать и извлекать изображения в свою базу данных Mysqli. Несколько изображений помещаются в div-заполнители, которые показывают маленькую рамку вокруг изображения и имя изображения. У меня есть функция удаления для каждого изображения, которая работает с отвязкой PHP. Но всякий раз, когда я удаляю изображение, поле и имя изображения все равно появляются.
Есть ли способ не только удалить ссылку на изображение, но и весь div, чтобы заполнитель полностью удалялся? Или есть способ поместить div внутри переменной, потому что я знаю, как разорвать связь с переменной, содержащей несколько файлов. Вот мой код
Div называется «медиа».
<ul class="media-list">
<?php
include "config.php"; //database connection
$res = $mysqli->query("SELECT * FROM upload_data");
while ($row = $res->fetch_assoc()):
?>
<div class="media">
<a class="media-left" href="#">
<!-- <img src="upload/<?php echo $row['file_name'] ?>" alt="<?php echo $row['file_name'] ?>"> -->
</a>
<div class="img"><?php if (isset($_SESSION['email']))
{
echo '<a href="delete.php?id=&nm=<?php echo $row[\'file_name\'] ?>">Delete</a>';} ?>
<a target="_blank" href="javascript:popImage('upload/<?php echo $row['file_name'] ?>','<?php echo $row['file_name'] ?>')">
<img width="300" height="200" src="upload/<?php echo $row['file_name'] ?>" alt="<?php echo $row['file_name'] ?>">
</a>
</div>
</div>
<?php
endwhile;
?>
Вот также код отмены связи, если вам интересно:
<?php
include "config.php";
if(isset($_GET['id'])):
$hap = unlink('upload/'.$_GET['nm']);
if($hap){
$stmt = $mysqli->prepare("DELETE FROM upload_data WHERE id_upload=?");
$stmt->bind_param('s', $id);
$id = $_GET['id'];
if($stmt->execute()):
echo "<script>location.href='gallery.php'</script>";
else:
echo "<script>alert('".$stmt->error."')</script>";
endif;
} else{
echo "<script>alert('No Delete File From Harddisk')</script>";
echo "<script>location.href='gallery.php'</script>";
}
endif;
?>