Добро пожаловать, Гость!
Счетчики - Страница 1
PHP/MySQL | Счетчики
EXTM :
Вот исходный код счетчиков гостевой и админ-клуба:
/*
-----------------------------------------------------------------
Статистика гостевой
-----------------------------------------------------------------
$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 . ' / <span class="red"><a href="guestbook/index.php?act=ga&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($mod = 1) . ')</div>';
// Ссылка на Админ-Клуб
if (core::$user_rights >= 1)
echo '<div class="menu"><a href="guestbook/index.php?act=ga&do=set">Админ-Клуб</a> (' . counters::guestbook($mod = 2) . ')</div>';
----------
Но почему то теперь не получается, не могу понять в чем дело.
Если можете подскажите, что не так я делаю?
P.S. На вопросы: "Зачем тебе это?" и т.п. отвечу сразу - мне так хочется (я еще раз пытаюсь выучить php и мне интересно сделать так).
Счетчики
28 Июля 2014Вот исходный код счетчиков гостевой и админ-клуба:
/*
-----------------------------------------------------------------
Статистика гостевой
-----------------------------------------------------------------
$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 . ' / <span class="red"><a href="guestbook/index.php?act=ga&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($mod = 1) . ')</div>';
// Ссылка на Админ-Клуб
if (core::$user_rights >= 1)
echo '<div class="menu"><a href="guestbook/index.php?act=ga&do=set">Админ-Клуб</a> (' . counters::guestbook($mod = 2) . ')</div>';
----------
Но почему то теперь не получается, не могу понять в чем дело.
Если можете подскажите, что не так я делаю?
P.S. На вопросы: "Зачем тебе это?" и т.п. отвечу сразу - мне так хочется (я еще раз пытаюсь выучить php и мне интересно сделать так).
Комментарии:
EXTM 31 Июля 2014
Автор темы
RuSInet,
static function guestbook($mod = 1) и static function guestbook($mod = 2) нельзя использовать т.к. у них одинаковое название. а оператор if вообще оказался ненужным.
Вот так у меня получился рабочий код функций:
static function guestbook($mod = 1)
{
$count = 0;
$count = mysql_result(mysql_query("SELECT COUNT(*) FROM `guest` WHERE `adm`='0' AND `time` > '" . (time() - 86400) . "'"), 0);
return $count;
}
static function guestbook_ac($mod = 2)
{
$count = 0;
$count = mysql_result(mysql_query("SELECT COUNT(*) FROM `guest` WHERE `adm`='1' AND `time` > '" . (time() - 86400) . "'"), 0);
return $count;
}
Автор темы
RuSInet,
static function guestbook($mod = 1) и static function guestbook($mod = 2) нельзя использовать т.к. у них одинаковое название. а оператор if вообще оказался ненужным.
Вот так у меня получился рабочий код функций:
static function guestbook($mod = 1)
{
$count = 0;
$count = mysql_result(mysql_query("SELECT COUNT(*) FROM `guest` WHERE `adm`='0' AND `time` > '" . (time() - 86400) . "'"), 0);
return $count;
}
static function guestbook_ac($mod = 2)
{
$count = 0;
$count = mysql_result(mysql_query("SELECT COUNT(*) FROM `guest` WHERE `adm`='1' AND `time` > '" . (time() - 86400) . "'"), 0);
return $count;
}
EXTM 30 Июля 2014
Автор темы
==========
Какие тут teg'и чтобы писать код с подсветкой строк? А то я не пойму
Автор темы
RuSInet (29 Июля 2014):
EXTM,
<?
class counters{
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;
}
}
?>
Вот так правильно, а вывод правильно сделал под код как сейчас
RuSInet, как я и думал, оказалось что две функции с одинаковым названием неприменимы. И еще оказолось применение "if" бессмыслено т.к. и без него работает. Я сегодня додумался наконец как сделать EXTM,
<?
class counters{
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;
}
}
?>
Вот так правильно, а вывод правильно сделал под код как сейчас
==========
Какие тут teg'и чтобы писать код с подсветкой строк? А то я не пойму