Счетчик гостевой/админ-клуба

231
.
Вот исходный код счетчиков гостевой и админ-клуба:
/*
    -----------------------------------------------------------------
    Статистика гостевой
    -----------------------------------------------------------------
    $mod = 1    колличество новых в гостевой
    $mod = 2    колличество новых в Админ-Клубе
    -----------------------------------------------------------------
    */
    static function guestbook($mod = 0)
    {
        $count = 0;
        switch ($mod) {
            case 1:
                $count = mysql_result(mysql_query("SELECT COUNT(*) FROM `guest` WHERE `adm`='0' AND `time` > '" . (time() - 86400) . "'"), 0);
                break;

            case 2:
                if (core::$user_rights >= 1)
                    $count = mysql_result(mysql_query("SELECT COUNT(*) FROM `guest` WHERE `adm`='1' AND `time` > '" . (time() - 86400) . "'"), 0);
                break;

            default:
                $count = mysql_result(mysql_query("SELECT COUNT(*) FROM `guest` WHERE `adm`='0' AND `time` > '" . (time() - 86400) . "'"), 0);
                if (core::$user_rights >= 1) {
                    $req = mysql_query("SELECT COUNT(*) FROM `guest` WHERE `adm`='1' AND `time`>'" . (time() - 86400) . "'");
                    $count = $count . '&#160;/&#160;<span class="red"><a href="guestbook/index.php?act=ga&amp;do=set">' . mysql_result($req, 0) . '</a></span>';
                }
        }
        return $count;
    }


Выводятся ссылки так:
// Ссылка на гостевую
if ($set['mod_guest'] || $rights >= 7)
    echo '<div class="menu"><a href="guestbook/index.php">' . $lng['guestbook'] . '</a> (' . counters::guestbook() . ')</div>';


==========

Я хотел сделать (и даже делал как то давно (хоть и немного по другому), но удалил) такой код:
/*
    -----------------------------------------------------------------
    Статистика гостевой/Админ-Клуба
    -----------------------------------------------------------------
    $mod = 0    колличество новых в гостевой и Админ-Клубе
$mod = 1    колличество новых в гостевой
    $mod = 2    колличество новых в Админ-Клубе
    -----------------------------------------------------------------
    */
    static function guestbook($mod = 1)
    {
        $count = 0;
        if ($mod) {
                $count = mysql_result(mysql_query("SELECT COUNT(*) FROM `guest` WHERE `adm`='0' AND `time` > '" . (time() - 86400) . "'"), 0);
        }
        return $count;
    }

    static function guestbook($mod = 2)
    {
        $count_ac = 0;
        if ($mod) {
                $count_ac = mysql_result(mysql_query("SELECT COUNT(*) FROM `guest` WHERE `adm`='1' AND `time` > '" . (time() - 86400) . "'"), 0);
        }
        return $count_ac;
    }


И вот такие ссылки:
// Ссылка на гостевую
if ($set['mod_guest'] || $rights >= 7)
    echo '<div class="menu"><a href="guestbook/index.php">' . $lng['guestbook'] . '</a> (' . counters::guestbook(1) . ')</div>';
// Ссылка на Админ-Клуб
if (core::$user_rights >= 1)
    echo '<div class="menu"><a href="guestbook/index.php?act=ga&amp;do=set">Админ-Клуб</a> (' . counters::guestbook(2) . ')</div>';


----------

Но почему то теперь не получается, не могу понять в чем дело.
Если можете подскажите, что не так я делаю?
.
Ей 25
Говорить что ты не так делаешь долго... Потому что у тебя всё не так.
Не помешало б сходить PHP поучить.
.
Блиносвёрт ?
EXTM, ты хотел сделать "такой код", ты его и сделал!
зачем устраивать эти головоломки, чтобы мы по нерабочему коду определяли, что ты хотел?
напиши словами, что нужно...
.
Блиносвёрт ?
функция на то и функция, чтобы к ней с разными параметрами обращаться, а ты написал две функции, дал одно и то же название им, и к каждой со своим параметром обращаешься! не работает, в частности, потому что у тебя две функции с одним названием
.
ValekS, Вот я как раз и пытаюсь учить.
.
Jane, Я хотел сделать вывод счетчиков гостевой и админ-клуба разными, а не в одном коде.
.
EXTM
# Jane (29.07.2014 / 09:57)
функция на то и функция, чтобы к ней с разными параметрами обращаться, а ты написал две функции, дал одно и то же название им, и к каждой со своим параметром обращаешься! не работает, в частности, по
А как тогда сделать разные названия функции, если счетчики гостевой и админ-клуба работают от одной функции - guestbook?
Я ведь потому и написал в топике исходный код, ну и свой ниже.
.
меняешь одну но везде, например на guestbook2
.
-sanek-, Поменял везде (вроде правильно все). Результата нужного нет, теперь в обеих счетчиках выдает "2".
.
ValekS
Ей 25
# EXTM (29.07.2014 / 21:52)
Jane, Я хотел сделать вывод счетчиков гостевой и админ-клуба разными, а не в одном коде.
Ты видел как стандартно сделано? Через кейсы? Можешь их условиями заменить if-elseif.
Потом вызывай функцию с параметрами, например сначала с 1 - и это будет вывод кол-ва постов в гостевой, а потом с 2 - это Админка.

И исчо: ты в коде вывода, в условии, втутил что-то типо core::$user_right а надо просто $rights. Ты ж не в классе находишся, что бы так переменную вызывать.
Всего: 13