Размер файла: 8.2Kb
<?php
//автор - figura
//сайт - http://f-pt.ru
include("../sistem/cfg.dat");
include("../sistem/global.dat");
include("../temes/$teme/verh.dat");
echo'<div class="razd"><B>Топ юзеров</B></div>';
if($status=="uzer" || $status=="moder" || $status=="admin")
{
//кешовый фаил
if($file_time = @filemtime("../data/statstik/usertop.dat"))
{
$file_time = $file_time + "10800";
}else{ $file_time = "0"; }
$real_time = time();
if($file_time < $real_time)
{
//обновляем кеш
$arrs_dir = scandir("../data/uzer/");
$user_top_file = fopen("../data/statstik/usertop.dat", "w+");
flock ($user_top_file,LOCK_EX);
$i = 0; $var = count($arrs_dir);
while($i < $var)
{
if(($arrs_dir[$i] != ".") && ($arrs_dir[$i] != ".."))
{
$arrs = file("../data/uzer/$arrs_dir[$i]");
$arrs = explode("<||>",$arrs[0]);
$kod_str = "$arrs_dir[$i]|$arrs[2]|$arrs[3]|$arrs[4]|$arrs[37]|\r\n";
fputs($user_top_file,$kod_str);
}
++$i;
}
flock ($user_top_file,LOCK_UN);
fclose($user_top_file);
@chmod("../data/statstik/usertop.dat", 0666);
}
if(empty($act)){ $act = "postov"; }
if($act == "postov"){ echo'Самые активные'; }else{ echo'<a href="top_uzer.php?act=postov&'.SID.'">Самые активные</a>'; }
echo' | ';
if($act == "golosov"){ echo'Самые популярные'; }else{ echo'<a href="top_uzer.php?act=golosov&'.SID.'">Самые популярные</a>'; }
echo' | ';
if($act == "many"){ echo'Самые богатые'; }else{ echo'<a href="top_uzer.php?act=many&'.SID.'">Самые богатые</a>'; }
echo'<br>';
if($act == "postov")
{
$arrs_dir = file("../data/statstik/usertop.dat");
$i = 0;
$var = count($arrs_dir);
while($i < $var)
{
$arrs = explode("|",$arrs_dir[$i]);
$param["$arrs[0]"] = $arrs[1];
++$i;
}
arsort($param);
foreach($param as $key => $value)
{
//echo(" -> $value <br>");
$arr_uzer_login[] = $key;
$arr_uzer_post[] = $value;
}
$nom = count($arr_uzer_login);
//начало новой навигации
if(isset($_GET['nom_page']) && ($_GET['nom_page'] != "")){$nom_page = $_GET['nom_page'];}else{ $nom_page = "1"; }
if(eregi("[^0-9]" , $nom_page )){ $nom_page = "1"; }
$asd = $nom_page - 1;
$i= $asd * 30;
$var = $i+30;
if($nom < $i){ $var = 0; echo'Страница не найдена!<br>'; }
while($i < $var)
{
if($i < $nom)
{
$uzer_login = str_replace(".dat","", $arr_uzer_login[$i]);
$n = $i + 1;
echo'<div class="link">'.$n.'.<a href="../pages/my_menu.php?act=anket&if_uzer='.$uzer_login.'&'.SID.'"><B>'.$uzer_login.'</B></a> ['.$arr_uzer_post[$i].']</div>';
}
++$i;
}
//конец новой навигации
$asd2 = ceil($nom / 30);
$asd3 = "0";
//навигация вперёд, назад
if("1" < $nom_page)
{
$nom_previous_page = $nom_page - 1;
echo '<a href="top_uzer.php?act='.$act.'&nom_page='.$nom_previous_page.'&'.SID.'">Назад</a>';
}else{ echo 'Назад'; }
echo'|';
if($asd2 > $nom_page)
{
$nom_next_page = $nom_page + 1;
echo '<a href="top_uzer.php?act='.$act.'&nom_page='.$nom_next_page.'&'.SID.'">Далее</a>';
}else{ echo 'Далее'; }
}
if($act == "golosov")
{
$arrs_dir = file("../data/statstik/usertop.dat");
$i = 0;
$var = count($arrs_dir);
while($i < $var)
{
$arrs = explode("|",$arrs_dir[$i]);
$rating = $arrs[2] - $arrs[3];
$param["$arrs[0]"] = $rating;
++$i;
}
arsort($param);
foreach($param as $key => $value)
{
$arr_uzer_login[] = $key;
$arr_uzer_post[] = $value;
}
$nom = count($arr_uzer_login);
//начало новой навигации
if(isset($_GET['nom_page']) && ($_GET['nom_page'] != "")){$nom_page = $_GET['nom_page'];}else{ $nom_page = "1"; }
if(eregi("[^0-9]" , $nom_page )){ $nom_page = "1"; }
$asd = $nom_page - 1;
$i= $asd * 30;
$var = $i+30;
if($nom < $i){ $var = 0; echo'Страница не найдена!<br>'; }
while($i < $var)
{
if($i < $nom)
{
$uzer_login = str_replace(".dat","", $arr_uzer_login[$i]);
$n = $i + 1;
echo'<div class="link">'.$n.'.<a href="../pages/my_menu.php?act=anket&if_uzer='.$uzer_login.'&'.SID.'"><B>'.$uzer_login.'</B></a> ['.$arr_uzer_post[$i].']</div>';
}
++$i;
}
//конец новой навигации
$asd2 = ceil($nom / 30);
$asd3 = "0";
//навигация вперёд, назад
if("1" < $nom_page)
{
$nom_previous_page = $nom_page - 1;
echo '<a href="top_uzer.php?act='.$act.'&nom_page='.$nom_previous_page.'&'.SID.'">Назад</a>';
}else{ echo 'Назад'; }
echo'|';
if($asd2 > $nom_page)
{
$nom_next_page = $nom_page + 1;
echo '<a href="top_uzer.php?act='.$act.'&nom_page='.$nom_next_page.'&'.SID.'">Далее</a>';
}else{ echo 'Далее'; }
}
if($act == "many")
{
$arrs_dir = file("../data/statstik/usertop.dat");
$i = 0;
$var = count($arrs_dir);
while($i < $var)
{
$arrs = explode("|",$arrs_dir[$i]);
if($arrs[4] != ""){$param["$arrs[0]"] = $arrs[4];}
++$i;
}
arsort($param);
foreach($param as $key => $value)
{
$arr_uzer_login[] = $key;
$arr_uzer_post[] = $value;
}
$nom = count($arr_uzer_login);
//начало новой навигации
if(isset($_GET['nom_page']) && ($_GET['nom_page'] != "")){$nom_page = $_GET['nom_page'];}else{ $nom_page = "1"; }
if(eregi("[^0-9]" , $nom_page )){ $nom_page = "1"; }
$asd = $nom_page - 1;
$i= $asd * 30;
$var = $i+30;
if($nom < $i){ $var = 0; echo'Страница не найдена!<br>'; }
while($i < $var)
{
if($i < $nom)
{
$uzer_login = str_replace(".dat","", $arr_uzer_login[$i]);
$n = $i + 1;
echo'<div class="link">'.$n.'.<a href="../pages/my_menu.php?act=anket&if_uzer='.$uzer_login.'&'.SID.'"><B>'.$uzer_login.'</B></a> ['.$arr_uzer_post[$i].']</div>';
}
++$i;
}
//конец новой навигации
$asd2 = ceil($nom / 30);
$asd3 = "0";
//навигация вперёд, назад
if("1" < $nom_page)
{
$nom_previous_page = $nom_page - 1;
echo '<a href="top_uzer.php?act='.$act.'&nom_page='.$nom_previous_page.'&'.SID.'">Назад</a>';
}else{ echo 'Назад'; }
echo'|';
if($asd2 > $nom_page)
{
$nom_next_page = $nom_page + 1;
echo '<a href="top_uzer.php?act='.$act.'&nom_page='.$nom_next_page.'&'.SID.'">Далее</a>';
}else{ echo 'Далее'; }
}
echo'<br>Внимание, рейтинг обновляется раз в три часа!';
}else{ echo'Данная информация доступна только Авторизированным пользователям<br>'; }
echo'<br><a href="stats.php?act=index&'.SID.'">К статистике</a><br>';
echo'<hr size="2" width="100%">';
echo'<a href="../index.php?'.SID.'">На главную</a><br>';
include("../sistem/global_end.dat");
include("../temes/$teme/niz.dat");
?>