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}");
Example #3
0
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);
}