Просмотр файла reiting/top.php

Размер файла: 8.66Kb
  1. <?php
  2. header ("Content-type:text/vnd.wap.wml; charset=utf-8");
  3.  
  4. header("Pragma: no-cache");
  5. @include "config.php";
  6.  
  7. //проверка ввода page
  8. if (empty($_GET['p'])) $page = 1;
  9. else $page=$_GET['p'];
  10.  
  11. if (empty($_GET['uid'])) $action = "";
  12. else $action="view";
  13.  
  14. switch ($action) {
  15. case "view":
  16. // ------------------------------ вывод статистики пользователя ---------------------
  17. //проверка ввода id
  18. if (empty($_GET['uid'])) exit;
  19. $uid=(int)$_GET['uid'];
  20. // проверка существования учетной записи
  21. $result = mysql_query("SELECT site_name,link FROM users WHERE uid=$uid");
  22. $row=mysql_fetch_row($result);
  23. if (empty($row[0])) exit;
  24. $site = $row[0];
  25. $link = $row[1];
  26. $today = date("Ymd");
  27. $hour = date("H");
  28. // за сегодня
  29. $result = mysql_query("SELECT sum(count),sum(host) FROM count_24 WHERE date=$today AND uid=$uid");
  30. $row = mysql_fetch_row($result);
  31. $count_today = (int)$row[0];
  32. $host_today = (int)$row[1];
  33. // за 24 часа
  34. $result = mysql_query("SELECT sum(count),sum(host) FROM count_24 WHERE (date=$today-1 AND hour>$hour) OR (date=$today AND hour<=$hour) AND uid=$uid");
  35. $row = mysql_fetch_row($result);
  36. $count_24 = (int)$row[0];
  37. $host_24 = (int)$row[1];
  38. // данные за текущий час
  39. $result = mysql_query("SELECT count,host FROM count_24 WHERE hour=$hour AND date=$today AND uid=$uid");
  40. $row=mysql_fetch_row($result);
  41. // поверка наличия записи в базе
  42. if (empty($row[0]))
  43. {
  44. $hour_count = 0;
  45. $hour_host = 0;
  46. }else{
  47. $hour_count = (int)$row[0];
  48. $hour_host = (int)$row[1];
  49. }
  50. // ---------------------------- посещения за месяц --------------------
  51. $months = array("Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь");
  52. $today = date("Ym");
  53. $index_month = date("m")-1;
  54. // данные за текущий месяц
  55. $result = mysql_query("SELECT count,host FROM months WHERE date=$today AND uid=$uid");
  56. $row=mysql_fetch_row($result);
  57. // поверка наличия записи в базе
  58. if (empty($row[0]))
  59. {
  60. $this_month_count = 0;
  61. $this_month_host = 0;
  62. }else{
  63. $this_month_count = (int)$row[0];
  64. $this_month_host = (int)$row[1];
  65. }
  66. //-------------------------- недельная статистика----------------
  67. $week_day = date("w");
  68. $today = date("Ymd");
  69. // посещений за неделю
  70. $result = mysql_query("SELECT sum(count),sum(host) FROM weeks WHERE uid=$uid");
  71. $row=mysql_fetch_row($result);
  72. $total_week_count = (int)$row[0];
  73. $total_week_host = (int)$row[1];
  74.  
  75. // ------------------------ онлайн------------------------
  76. // подсчитываем онлайн посетителей
  77. $result = mysql_query("SELECT count(ip) FROM online_ip WHERE uid=$uid");
  78. $row=mysql_fetch_row($result);
  79. $online=(int)$row[0];
  80. // -----------------------Всего---------------------------
  81. $result = mysql_query("SELECT sum(count),sum(host) FROM months WHERE uid=$uid");
  82. $row=mysql_fetch_row($result);
  83. $all_hits = (int)$row[0];
  84. $all_hosts = (int)$row[1];
  85. //----------------------- Место в топе---------------------------
  86. $result=mysql_query("SELECT count(*) FROM weeks WHERE host >= $host_today and date=$today ORDER BY host DESC");
  87. $row=mysql_fetch_row($result);
  88. $top_place = (int)$row[0];
  89. /*
  90. -----------------------------------------------------------------
  91. $top_place - место в топе
  92. $count_today - хитов сегодня
  93. $host_today - хостов сегодня
  94. $count_24 - хитов за 24 часа
  95. $host_24 - хостов за 24 часа
  96. $hour_count - хитов за этот час
  97. $hour_host - хостов за этот час
  98. $this_month_count - хитов за этот месяц
  99. $this_month_host - хостов за этот месяц
  100. $total_week_count - хитов за эту неделю
  101. $total_week_host - хостов за эту неделю
  102. $online - онлайн посетителей
  103. $all_hits - всего хитов
  104. $all_hosts - всего хостов
  105. -----------------------------------------------------------------
  106. */
  107. $page=ceil($top_place/$count_top);
  108. echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
  109. echo "<!DOCTYPE wml PUBLIC \"-//WAPFORUM//DTD WML 1.1//EN\" \"http://www.wapforum.org/DTD/wml_1.1.xml\">";
  110. echo "<wml><card title=\"Статистика\"><p><small>";
  111.  
  112.  
  113. echo "Адрес сайта:<br/>&#187; <a href=\"$link\">$site</a><br/>";
  114.  
  115.  
  116. echo "<b>On - Line:</b> $online
  117. <br/><b>Сегодня:</b><br/>Хостов: $host_today <br/>Хитов: $count_today.\n
  118. <br/><b>За час:</b><br/>Хостов: $hour_host <br/>Хитов: $hour_count.\n
  119. <br/><b>За 24 часа:</b><br/>Хостов: $host_24 <br/>Хитов: $count_24.\n
  120. <br/><b>За неделю:</b><br/>Хостов: $total_week_host <br/>Хитов: $total_week_count.\n
  121. <br/><b>За ".$months[$index_month].":</b><br/>Хостов: $this_month_host <br/>Хитов: $this_month_count.\n
  122. <br/><b>Всего посещений:</b><br/>Хостов: $all_hosts <br/>Хитов: $all_hits.\n
  123. <br/><b>Место в Топе:</b> $top_place ";
  124.  
  125. echo "\n";
  126.  
  127.  
  128. echo "<br/>&#187; <a href=\"top.php\">В топ</a><br/>";
  129. echo "&#187; <a href=\"/help/help.wml\">Помощь</a>[FAQ]<br/>\n";
  130. echo "&#187; <a href=\"registration.php\">Регистрация</a><br/>\n";
  131. echo "&#187; <a href=\"http://best.ruwap.org\">Главная</a><br/>\n";
  132. echo "<img src=\"/count.php?uid=1\" alt=\"top\"/><br/>\n";
  133. echo "</small></p></card></wml>\n";
  134.  
  135. break;
  136. default:
  137. echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
  138. echo "<!DOCTYPE wml PUBLIC \"-//WAPFORUM//DTD WML 1.1//EN\" \"http://www.wapforum.org/DTD/wml_1.1.xml\">";
  139. echo "<wml><card title=\"Рейтинг\"><p><small>";
  140.  
  141.  
  142. // ------------------------------ ТОП всех участников -------------------------------
  143. $today = date("Ymd");
  144. $start=$count_top*($page-1);
  145. $end=$count_top;
  146. // получаем кол во участников
  147. $result=mysql_query("SELECT count(uid) FROM weeks WHERE host > 0 and date=$today");
  148. $cntData=mysql_fetch_row($result);
  149. $count_users=$cntData[0];
  150. // получаем uid участников
  151. $result=mysql_query("SELECT DISTINCT uid,count,host FROM weeks WHERE host > 0 and date=$today ORDER BY host DESC LIMIT $start,$end");
  152. $count_users_on_page = mysql_num_rows($result);
  153.  
  154. for($i = 0;$i < $count_users_on_page;$i++)
  155. {
  156. $row = mysql_fetch_array($result);
  157. $uid = $row['uid'];
  158. $hits = $row['count'];
  159. $hosts = $row['host'];
  160. // данные участника
  161. $user_data = mysql_query("SELECT site_name,link,admin,info,date FROM users WHERE uid=$uid");
  162. $user_data_row = mysql_fetch_array($user_data);
  163. $site_name = $user_data_row['site_name'];
  164. $link = $user_data_row['link'];
  165. $admin = $user_data_row['admin'];
  166. $info = $user_data_row['info'];
  167. $date_reg = date("d.m.Y",$user_data_row['date']);
  168. // -----------------------Всего---------------------------
  169. $res_count = mysql_query("SELECT sum(count),sum(host) FROM months WHERE uid=$uid");
  170. $count_row=mysql_fetch_row($res_count);
  171. $all_hits = (int)$count_row[0];
  172. $all_hosts = (int)$count_row[1];
  173.  
  174. echo "<b>".(($i+1)+($count_top*($page-1))).". </b><a href=\"$link\">$site_name</a>[<a href=\"top.php?uid=$uid\">инфо</a>]<br/>\n";
  175. echo " - ".$info."<br/>\n";
  176. echo "<b>Сегодня:</b><br/>Хостов: $hosts<br/>Хитов: $hits<br/>\n";
  177. echo "Всего хостов: $all_hosts<br/>\n";
  178. echo "Всего хитов: $all_hits<br/>\n";
  179.  
  180. }
  181. //Page control
  182.  
  183. if ($page>1){
  184. $prev=$page-1;
  185. echo "&#187; <a href='top.php?p=$prev'>Назад</a> ";
  186. }
  187. else echo "";
  188. echo " ";
  189. if (!($end*$page>=$count_users)){
  190. $next=$page+1;
  191. echo "&#187; <a href='top.php?p=$next'>Вперёд</a>";
  192. }
  193. else echo "";
  194. echo "<br/>Участников: [$count_users] <br/>\n";
  195.  
  196. echo "&#187; <a href=\"/help/rules.wml\">Регистрация</a><br/>\n";
  197. echo "&#187; <a href=\"/help/help.wml\">Помощь</a>[FAQ]<br/>\n";
  198. echo "&#187; <a href=\"http://best.ruwap.org\">Главная</a></small><br/>\n";
  199. echo "<img src=\"/count.php?uid=1\" alt=\"top\"/><br/>\n";
  200.  
  201. echo "</p></card></wml>";
  202.  
  203. }
  204. ?>