Вход Регистрация
Файл: selemege.tk/plugins/cleaner/forum.php
Строк: 90
<?
/*
=======================================
DCMS-Cleaner
Автор: Искатель
---------------------------------------
При распространении указывать ссылку на
оф. сайт http://dcms-fiera.ru
---------------------------------------
Контакты
ICQ: 587863132
http://dcms-fiera.ru
=======================================
*/
include_once '../../sys/inc/start.php';
include_once 
'../../sys/inc/compress.php';
include_once 
'../../sys/inc/sess.php';
include_once 
'../../sys/inc/home.php';
include_once 
'../../sys/inc/settings.php';
include_once 
'../../sys/inc/db_connect.php';
include_once 
'../../sys/inc/ipua.php';
include_once 
'../../sys/inc/fnc.php';
include_once 
'../../sys/inc/user.php';

only_reg();

if (
user_access('adm_panel_show'))
{

$set['title'] = 'Форум - Файлы';
include_once 
'../../sys/inc/thead.php';

?>
<link rel="stylesheet" href="style/style.css" type="text/css" />
<?

title
();
aut();

$num 0;
$nums 0;
$size 0;


if(isset(
$_GET['del']) && $_GET['del'] == 'all')
{
    
    
// Папка файлов форума
    
$dh opendir(H.'sys/forum/files');
    
    while(
$fname readdir($dh))
    {
        
$file_array explode('.'$fname);
        
$nums count($file_array);
        
$fileres $file_array[($nums 1)];
        
$file_types explode("|"'frf');
        
        if(
in_array($fileres$file_types))
        {
            
$files[] = $fname;
        }
        
        
$real $fname;
        
        
// Берем id файла 
        
$file abs(intval($fname));
        
        
// Фиксируем размер
        
$file_size = @filesize(H.'sys/forum/files/' $real);
        
        
// Определяем запись в таблице файла
        
$id_post mysql_fetch_array(mysql_query("SELECT * FROM `forum_files` WHERE `id` = '$file' LIMIT 1"));
        
        
// Определяем пост 
        
$post mysql_fetch_array(mysql_query("SELECT * FROM `forum_p` WHERE `id` = '$id_post[id_post]' LIMIT 1"));
        
         
// Сверяем файлы с таблицей постов
        
if ($real != '..' && $real != '.' && !$post['id'])
        {
            
// Удаляем запись в таблице
            
mysql_query("DELETE FROM `forum_files` WHERE `id_post` = '$file'");
            
            
// Удаляем файл
            
@unlink(H.'sys/forum/files/' $real);
            
            
// Суммируем размер для общего веса файлов
            
$size $size + @filesize(H.'sys/forum/files/' $real);
            
            
$num++;
        
        }
        elseif (
$file_size == '0'// Проверяем файлы с нулевым размером
        
{
            
// Удаляем запись в таблице
            
mysql_query("DELETE FROM `forum_files` WHERE `id_post` = '$file'");
            
            
// Удаляем файл
            
@unlink(H.'sys/forum/files/' $real);
            
            
// Суммируем размер для общего веса файлов
            
$size $size + @filesize(H.'sys/forum/files/' $real);
            
            
$num++;
        }
    
    }
    
    
$_SESSION['message'] = 'Форум успешно очищен, удалено (' $num ') файлов';
    
header("Location: ?");
    exit;
}



echo 
'<div class="mess">';
echo 
'В релизах DCMS 6.6.4 ветке и ее всех модификациях не удаляются прикрепленные файлы, при удалении тем в форуме.<br />';


/*
=============================================
Сравнение файлов с таблицей 
forum_p, поиск (мертвых) 
файлов
=============================================
*/

$num 0;

// Папка файлов форума
$dh opendir(H.'sys/forum/files');

while(
$fname readdir($dh))
{
    
$file_array explode('.'$fname);
    
$nums count($file_array);
    
$fileres $file_array[($nums 1)];
    
$file_types explode("|"'frf');
    
    if(
in_array($fileres$file_types))
    {
        
$files[] = $fname;
    }
    
    
$real $fname;
    
    
// Берем id файла 
    
$file abs(intval($fname));
    
    
// Фиксируем размер
    
$file_size = @filesize(H.'sys/forum/files/' $real);
    
    
// Определяем запись в таблице файла
    
$id_post mysql_fetch_array(mysql_query("SELECT * FROM `forum_files` WHERE `id` = '$file' LIMIT 1"));
    
    
// Определяем пост 
    
$post mysql_fetch_array(mysql_query("SELECT * FROM `forum_p` WHERE `id` = '$id_post[id_post]' LIMIT 1"));
    
     
// Сверяем файлы с таблицей постов
    
if ($real != '..' && $real != '.' && !$post['id'])
    {
        echo 
$real ' - <br />';
        
        
// Суммируем размер для общего веса файлов
        
$size $size + @filesize(H.'sys/forum/files/' $real);
        
        
$num++;
    
    }
    elseif (
$file_size == '0'// Проверяем файлы с нулевым размером
    
{
        
$num++;
    }

}


if (
$num 0)echo '<img src="style/icons/delete.gif" /> <font color=red>В форуме обнаружено <b>' $num '</b> файлов для удаления. Эти файлы занимают ' size_file($size) . ' (sys/forum/files/)</font>';
else
echo 
'<img src="style/icons/ok.gif" /> <font color=green>В форуме с файлами все отлично</font>';
echo 
'</div>';


echo 
'<div class="foot">';
echo 
'<img src="style/icons/str.gif" /> <a href="?del=all">Очистить форум от мусора</a>';
echo 
'</div>';

echo 
'<div class="foot">';
echo 
'<img src="style/icons/str2.gif" /> <a href="index.php">DCMS Cleaner</a>';
echo 
'</div>';



include_once 
'../../sys/inc/tfoot.php';
}
?>
Онлайн: 0
Реклама