Просмотр файла sys/kernel.php

Размер файла: 2.71Kb
  1. <?php
  2. // coding by Felis
  3. error_reporting(7);
  4. session_start();
  5.  
  6. include('connect.php');
  7.  
  8. $db = new mysqli(HOSTNAME, USERNAME, PASSWORD, DATABASE) or exit;
  9. $db->query("SET NAMES `utf8`");
  10.  
  11. $mode = isset($_GET['mode']) ? trim($_GET['mode']) : NULL;
  12. $id = isset($_GET['id']) ? abs((int)$_GET['id']) : FALSE;
  13. $u = isset($_GET['u']) ? abs((int)$_GET['u']) : FALSE;
  14. $p = abs((int)$_GET['p']);
  15. if(!isset($p) || $p <= 0) $p = 1;
  16.  
  17. $settings = $db->query("SELECT * FROM `settings`"); $conf = FALSE;
  18. while($item_c = $settings->fetch_row())
  19. {
  20. $conf[$item_c[0]] = $item_c[1];
  21. }
  22.  
  23. define('CFILE', getenv('SCRIPT_NAME'));
  24. define('_AUTH_ERROR', 'Неавторизованне? Жепь ебрило!111');
  25. define('_ERROR', 'Unhandled error');
  26. define('AN_USER', 'Anonymous');
  27.  
  28. include('functions.php');
  29.  
  30. $sec = array('minute' => 60, 'hour' => 3600, 'day' => 86400, 'week' => 604800, 'month' => 2592000, 'year' => 31536000);
  31. $time = time();
  32.  
  33. if(isset($_SESSION['id']) and isset($_SESSION['passwd']))
  34. {
  35. $uid = $_SESSION['id'];
  36. $pwd = $_SESSION['passwd'];
  37. $op = true;
  38. }
  39. elseif(isset($_COOKIE['id']) and isset($_COOKIE['passwd']))
  40. {
  41. $_SESSION['id'] = (int)base64_decode($_COOKIE['id']);
  42. $uid = $_SESSION['id'];
  43. $_SESSION['passwd'] = $fnc->encode(base64_decode($_COOKIE['passwd']));
  44. $pwd = $_SESSION['passwd'];
  45. $op = true;
  46. }
  47.  
  48. function unses()
  49. {
  50. session_unset();
  51. session_destroy();
  52. setcookie('id', NULL);
  53. setcookie('passwd', NULL);
  54. }
  55.  
  56. if($op == true)
  57. {
  58. $opt = $db->query("SELECT * FROM `users` WHERE `id`=".$uid);
  59. if($opt->num_rows > 0)
  60. {
  61. $usr = $opt->fetch_assoc();
  62. if($usr['banned'] == 'n')
  63. {
  64. if($usr['ontime'] < $time - $conf['online'])
  65. {
  66. $db->query("UPDATE `users` SET `ontime`=$time WHERE `id`=".$uid);
  67. }
  68. if($usr['access'] == 'a')
  69. $adm = true;
  70. if($usr['access'] == 'a' or $usr['access'] == 'm')
  71. $mod = true;
  72. }
  73. elseif($usr['banned'] == 'y' and $time - $usr['ban_point'] < $usr['ban_term'] and $usr['access'] != 'a')
  74. {
  75. unses();
  76. }
  77. else
  78. {
  79. $db->query("UPDATE `users` SET `banned`='n', `ban_point`=NULL, `ban_term`=NULL WHERE `id`=".$uid);
  80. }
  81. }
  82. else
  83. {
  84. unses();
  85. }
  86. }
  87.  
  88. $uo = $db->query("SELECT COUNT(`id`) AS `count` FROM `users` WHERE `ontime`>=".($time - $conf['online']))->fetch_assoc(); $uo = $uo['count'];
  89. $all_p = $db->query("SELECT `id` FROM `posts`")->num_rows;
  90. $all_u = $db->query("SELECT `id` FROM `users`")->num_rows;
  91. if($all_p > $conf['all_post'])
  92. {
  93. $db->query("DELETE FROM `posts` ORDER BY `id` ASC LIMIT 1");
  94. $db->query("OPTIMIZE `posts`");
  95. }
  96.  
  97. $onpage = ($op == true) ? $usr['onpage'] : $conf['onpage'];
  98. $begin = $p * $onpage - $onpage;
  99.  
  100. ob_start();
  101.  
  102. // конец файла ./sys/kernel.php