Подтвердить что ты не робот

Удалить изображение из папки PHP

У меня есть папка, где хранятся мои изображения под названием img/. У меня есть таблица со всеми моими изображениями:

<table border="3">
    <tr>
        <td>    
            <?php
            $files = glob("img/*");
            foreach ($files as $file) {
                echo "<div class='divimages'>"; 
                echo '<img src="'.$file.'"/>';
                echo "<input type='submit' value='Delete image'/><br>";
                echo "</div>";  
            }
            ?>
        </td>
    </tr>   
</table>

Как удалить изображение, связанное с кнопкой со значением: "Delete image".

4b9b3361

Ответ 1

Есть несколько маршрутов. Один, самый простой, предполагает включение этого в форму; когда он отправляет вам ответ на данные POST и удаляет изображение с помощью unlink

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ. Это не безопасно. Злоумышленник может использовать этот код для удаления любого файла на вашем сервере. Вы должны расширить этот демонстрационный код, чтобы добавить некоторую меру безопасности, иначе вы можете ожидать плохие вещи.

Каждая разметка отображения изображений будет содержать следующую форму:

echo '<form method="post">';
  echo '<input type="hidden" value="'.$file.'" name="delete_file" />';
  echo '<input type="submit" value="Delete image" />';
echo '</form>';

... и в верхней части того же файла PHP:

if (array_key_exists('delete_file', $_POST)) {
  $filename = $_POST['delete_file'];
  if (file_exists($filename)) {
    unlink($filename);
    echo 'File '.$filename.' has been deleted';
  } else {
    echo 'Could not delete '.$filename.', file does not exist';
  }
}
// existing code continues below...

Вы можете подробно остановиться на этом, используя javascript: вместо отправки формы вы можете отправить запрос AJAX. Код на стороне сервера будет похож на этот.

Документация и связанное с ней чтение

Ответ 2

Вы можете удалить файлы на PHP с помощью функции unlink().

unlink('path/to/file.jpg');

Ответ 4

Вы можете попробовать этот код. Это простой образ PHP Удаление кода с сервера.

<form method="post">
<input type="text" name="photoname"> // You can type your image name here...
<input type="submit" name="submit" value="Delete">
</form>

<?php
if (isset($_POST['submit'])) 
{
$photoname = $_POST['photoname'];
if (!unlink($photoname))
  {
  echo ("Error deleting $photoname");
  }
else
  {
  echo ("Deleted $photoname");
  }
}
?>