Понедельников НЕТ!
Регистрация или вход Регистрация или вход Избранное на этом сайте | Главная | Анкета | Рекомендовать | Обратная связь | В избранное | Сделать домашней
Скачать SSDForums
Скачать SSDForums 1.0.1 Скачать SSDForums 1.0.1
Скачать SSDForums 1.0.1 SP1 Скачать SSDForums 1.0.1 SP1
Скачать SSDForums 1.0.1 SP2 Скачать SSDForums 1.0.1 SP2
SSD Forums 1.0.1 SP3 only Slaed 3.5 Pro SSD Forums 1.0.1 SP3 only Slaed 3.5 Pro
SSD Forums 1.0.1 SP4-beta only Slaed 4.1 Pro SSD Forums 1.0.1 SP4-beta only Slaed 4.1 Pro
Jewelry Сase Team
Скачать Ruby Chat 0.1.1 Скачать Ruby Chat 0.1.1
Меню
Главная
Форум
Магазин цифровых товаров

Новости
Подписка на новости
Темы новостей
Добавить новость

Каталог файлов
Карта файлового архива
Публикации

Опросы
Анкета пользователя
Чат

BestMaker
Викторина
Архив новостей
Карманный оракул
Поиск по сайту с помощью Яндекс
Поиск по сайту с помощью Google
Фото дня
Для души
Погода на 3 дня
IndexCat
IndexTop
Map_Pages
Поиск по сайту









Интересное в сети
  • Подробности детский спортивный игровой комплекс на нашем сайте.
  • Публикации
    Files
    Подсчет количества файлов в категории с учетом файлов в подкатегориях Slaed 2.1 и выше (Lite ветка)


    Для тех, кому важна статистика в модуле файлов.
    Пример смотрим у меня в Файловом архиве. Наведя мышку на количество дождитесь всплывающей подсказки.




    1. Добавим в стили
    Код
    1
    2
    .for_c4et0 {color: #aaa;font-size: 9px;}
    .for_c4et1 {color: #aaa;font-size: 9px; text-decoration: underline; cursor:pointer;}


    2. Заменим функцию на новую. Все изменения прокомментированы
    PHP - Код
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    <?php
    function categories($id="") {
        global
    $prefix, $db, $module_name, $tabcolumn, $showsubkat;
        
    // добавлено $massiv3
        
    static $massiv, $massiv2, $massiv3;
        
    $id = (intval($id)) ? $id : 0;
        
    $where = ($id) ? "WHERE parentid = '$id'" : "";
        
    $tdwidth = intval(100/$tabcolumn);
        if (!
    is_array($massiv)) {
            
    $result = $db->sql_query("SELECT cid, title, parentid FROM ".$prefix."_files_categories ".$where."");
            while (list(
    $cid, $title, $parentid) = $db->sql_fetchrow($result)) $massiv[] = array($cid, $title, $parentid);
        }
        if (!
    is_array($massiv2)) {
            
    $result = $db->sql_query("SELECT cid, title, parentid FROM ".$prefix."_files_categories");
            while (list(
    $cid, $title, $parentid) = $db->sql_fetchrow($result)) $massiv2[] = array($cid, $title, $parentid);
        }

        
    // начало вставки 1
        
    if (!is_array($massiv3)) {
            
    $result = $db->sql_query("SELECT fc.cid, fc.parentid, Count(f.lid) AS tmp FROM ".$prefix."_files AS f INNER JOIN ".$prefix."_files_categories AS fc ON (fc.cid=f.cid) WHERE status != '0' GROUP BY fc.cid, fc.parentid");
                                                                                                                                                              
    //0        //1 в текущ//2всего//3в подкат   //4
            
    while (list($cid, $parentid, $summ) = $db->sql_fetchrow($result)) $massiv3[$cid] = array($parentid, $summ, $summ, 0, $cid);

            foreach (
    $massiv3 as $key => $val) {
                
    $flag = $val[0];
                while (
    $flag!=0) {
                        
    $massiv3[  $flag  ][2] = $massiv3[  $flag  ][2] + $val[1];
                        
    $massiv3[   $flag ][3] = $massiv3[  $flag  ][3] + $val[1];
                        
    $flag = $massiv3[  $flag  ][0];
                }
            }
        }
        
    // конец вставки 1

        
    if ($massiv) {
            foreach (
    $massiv as $key => $val) {
                if (
    $val[2] == $id) {
                    
    // добавлено условие, что бы выводился ноль, в случае отсутствия файлов в категории
                    
    if (!isset($massiv3[$val[0]][1])) {$massiv3[$val[0]][1] = 0;}
                    if (!isset(
    $massiv3[$val[0]][2])) {$massiv3[$val[0]][2] = 0;}
                    if (!isset(
    $massiv3[$val[0]][3])) {$massiv3[$val[0]][3] = 0;}
                    
    // добавлено $massiv3[бла-бла], расставлены стили и титлы
                    
    $ccontent .= "<td valign=\"top\" width=\"".$tdwidth."%\"><table border=\"0\"><tr><td><img border=\"0\" src=\"images/blocks/Files.gif\" title=\"$title\"></td><td><a href=\"index.php?name=$module_name&op=cat&id=$val[0]\" title=\"$val[1]\"><b>$val[1]</b></a> "
                        
    ."<b r><font class=\"for_c4et0\"><span class=\"for_c4et1\" title=\"Всего в категории (с учетом кол-ва в подкатегориях): "
                        
    .$massiv3[$val[0]][2]."\">сумм. "
                        
    .$massiv3[$val[0]][2]
                        .
    "</span> / <span class=\"for_c4et1\" title=\"Всего в категории (без учета кол-ва в подкатегориях): "
                        
    .$massiv3[$val[0]][1]."\">в кат. "
                        
    .$massiv3[$val[0]][1]
                        .
    "</span> / <span class=\"for_c4et1\" title=\"Всего в подкатегориях: "
                        
    .$massiv3[$val[0]][3]."\">в пкат. "
                        
    .$massiv3[$val[0]][3]
                        .
    "</span></font>"
                    
    ."</td></tr>";
                    if (
    $showsubkat == 1 && $massiv2) {
                        foreach (
    $massiv2 as $key => $val2) {
                            if (
    $val[0] == $val2[2]) {
                                
    // добавлено условие, что бы выводился ноль, в случае отсутствия файлов в категории
                                
    if (!isset($massiv3[$val2[0]][1])) {$massiv3[$val2[0]][1] = 0;}
                                if (!isset(
    $massiv3[$val2[0]][2])) {$massiv3[$val2[0]][2] = 0;}
                                if (!isset(
    $massiv3[$val2[0]][3])) {$massiv3[$val2[0]][3] = 0;}
                                
    // добавлено $massiv3[бла-бла], расставлены стили и титлы
                                
    $ccontent .= "<tr><td colspan=\"2\"><img border=\"0\" src=\"images/navi.gif\" title=\"$val2[1]\"> <a href=\"index.php?name=$module_name&op=cat&id=$val2[0]\" title=\"$val2[1]\">$val2[1]</a> "
                                
    ."<b r><font class=\"for_c4et0\"><span class=\"for_c4et1\" title=\"Всего в категории (с учетом кол-ва в подкатегориях): "
                                
    .$massiv3[$val2[0]][2]."\">сумм. "
                                
    .$massiv3[$val2[0]][2]
                                .
    "</span> / <span class=\"for_c4et1\" title=\"Всего в категории (без учета кол-ва в подкатегориях): "
                                
    .$massiv3[$val2[0]][1]."\">в кат. "
                                
    .$massiv3[$val2[0]][1]
                                .
    "</span> / <span class=\"for_c4et1\" title=\"Всего в подкатегориях: "
                                
    .$massiv3[$val2[0]][3]."\">в пкат. "
                                
    .$massiv3[$val2[0]][3]
                                .
    "</span></font>"
                            
    ."</td></tr>";
                            }
                        }
                    }
                    
    $ccontent .= "</table></td>";
                    if (
    $cont == ($tabcolumn - 1)) {
                        
    $ccontent .= "</tr><tr>";
                        
    $cont = 0;
                    } else {
                        
    $cont++;
                    }
                }
            }
        }
        if (
    $ccontent) {
            
    OpenTable();
            echo
    "<table border=\"0\" cellspacing=\"0\" cellpadding=\"10\" align=\"center\"><tr>".$ccontent."</td></tr></table>";
            list(
    $files_num) = $db->sql_fetchrow($db->sql_query("SELECT Count(lid) FROM ".$prefix."_files WHERE status !='0'"));
            list(
    $cat_num) = $db->sql_fetchrow($db->sql_query("SELECT Count(cid) FROM ".$prefix."_files_categories"));
            echo
    "<hr><center>"._ALLFILES.": <b>$files_num</b> "._INF." <b>$cat_num</b> "._ALLFILES2."</center>";
            
    CloseTable();
        }
    }
    ?>



    Дата публикации: 16.07.2007
    Прочитано: 11900 раз
    [ Назад | Начало | Наверх ]
    Комментарии

    ifahr
    Дата: 07.09.2007 | Комментарий: 6
    ifahrSerg, красавчик!
    Успешно применил твой хак в нескольких других модулях. Все отлично работает! Спасибо!
    Serg_pnz
    Дата: 01.08.2007 | Комментарий: 5
    Serg_pnzMrSmit, весьма странно... когда тестировал вроде специально на это внимание обращал...
    Не все кальсоны с оторванными пуговицами - брюки. © Serg_pnz
    "...даме водки? Это чистый спирт!" © кот Бегемот
    MrSmit
    Дата: 01.08.2007 | Комментарий: 4
    MrSmitSerg_pnz ок. Есть еще вопросик по этому хаку...

    Дело в том что если в категории много подкатегорий, а в этих подкатегориях есть тоже подкатегории, то не выводится количество файлов... Что нужно дописать чтобы устранить это???

    Спасибо
    Serg_pnz
    Дата: 01.08.2007 | Комментарий: 3
    Serg_pnz
    Цитата
    У тебя в коде, что написан в этой теме.... тег или что это я не знаю.. (просто в PHP ,большой 0) <br>, между ними стоит пробел. Убери его...
    Это нарочно пробел поставлен - что бы статья отображалась правильно на сайте. (К сожалению бб-редактор в слаеде далек от совершенства, да и на том же ipb иногда без пробела или иного символа не разместить то, что хотелось бы - я имею ввиду код)
    Не все кальсоны с оторванными пуговицами - брюки. © Serg_pnz
    "...даме водки? Это чистый спирт!" © кот Бегемот
    MrSmit
    Дата: 01.08.2007 | Комментарий: 2
    MrSmitТоже отличный и нужный хак. Вот только есть очень маленькая неполадочка.... когда выводится количество файлов в сумме, в категории и подкатегории, они не переносятся на новую строку.

    У тебя в коде, что написан в этой теме.... тег или что это я не знаю.. (просто в PHP ,большой 0) <br>, между ними стоит пробел. Убери его... А то такие как я, ЛАМЕРЫ, попробуют и все, а разбираться не захотят.

    Вот это нужно чуть подправить.
    <b r><font class=

    А так хак супер. Респект тебе
    sam07
    Дата: 17.07.2007 | Комментарий: 1
    sam07Вау... Серж не перестаешь удивлять!
    Думаю данный хак будет полезен если не всем, то многим, ибо "модернизировать" свой сайт ДОЛЖЕН каждый.
    Ну а автору "модернизаций" и "тюнингов" троекратный respect!
    Так держать!
    Всего 16 на 2 страницах по 10 на каждой странице
    [<<] [ 1 | 2 ]
    Вы не можете отправить комментарий анонимно, пожалуйста зарегистрируйтесь.
    SetLinks error: Incorrect password!
    Календарь 3 в 1
    - М - Г + Г + М
    Май, 2024
    пнвтсрчтптсбвс
    12345
    6789101112
    13141516171819
    20212223242526
    2728293031
    Купить.
    Можно в кредит на 90 дней!
    Навигация
    »» RSS
    Главная | Форум | Новости | Подписка на новости | Темы новостей | Добавить новость | Каталог файлов | Карта файлового архива | Публикации | Опросы | Анкета пользователя | Чат | BestMaker | Викторина | Архив новостей | Карманный оракул | Поиск по сайту с помощью Яндекс | Поиск по сайту с помощью Google | Фото дня | Для души | Погода на 3 дня | IndexCat | IndexTop | Map_Pages | Весь Оракул

    Rambler's Top100

    Генерация страницы: 0.272 сек. и 17 запросов к базе данных за 0.023 сек.
    Web site engine code is Copyright © 2006 by SLAED CMS. All rights reserved.