function dir_remove($dir) { $objects = glob($dir . '/*'); foreach ($objects as $object) { is_dir($object) ? dir_remove($object) : unlink($object); } rmdir($dir); }
<?php // // Удаляем галерею // $galleryid = (int) $_GET['deletegallery']; // Удалаем папки и файлы с сервера // Получаем путь к галерее на сервере $select_gallery = mysqli_query($link, "SELECT path FROM Gallery WHERE GalleryID = {$galleryid}"); $gallery = mysqli_fetch_assoc($select_gallery); // Подлючаем функцию для удаления директории со всем содержимым include 'model/model_dir_remove.php'; // Удаляем директорию dir_remove($gallery['path']); // Удаляем из БД // удаляем информацию о просмотрах mysqli_query($link, "DELETE iv \n\t\t\t\t\t FROM ImageViews iv\n\t\t\t\t\t\t , Image i\n\t\t\t\t\t\t , Gallery g \n\t\t\t\t\t WHERE g.GalleryID = {$galleryid}\n\t\t\t\t\t and i.GalleryID = g.GalleryID \n\t\t\t\t\t and iv.ImageID = i.ImageID"); // удаляем информацию об изображениях mysqli_query($link, "DELETE i \n\t\t\t\t\t FROM Image i\n\t\t\t\t\t\t , Gallery g \n\t\t\t\t\t WHERE g.GalleryID = {$galleryid}\n\t\t\t\t\t and i.GalleryID = g.GalleryID"); // удаляем галерею mysqli_query($link, "DELETE g \n\t\t\t\t\t FROM Gallery g \n\t\t\t\t\t WHERE g.GalleryID = {$galleryid}");
function dir_remove($directory, $recursive = true) { $directory = dir_strip_trailing_slash($directory); if ($recursive) { foreach (dir_read($directory, null, DIR_READ_ALL, false) as $item) { if ($item == '.' || $item == '..') { continue; } is_dir("{$directory}/{$item}") ? dir_remove("{$directory}/{$item}", true) : file_delete("{$directory}/{$item}"); } } @rmdir($directory); }