View file index.php

File size: 3.83Kb
<?php
require 'root.part';
require 'dat.part';

$sr = '/ Главная';
$description = 'Гостевая';
$content = '';
session_start();


# добавляем забаненый ip
#
if(isset($_SESSION['ip']) and isset($_SESSION['user']) and $_SERVER['HTTP_USER_AGENT']){
      if(($_SESSION['ip'] != $_SERVER['REMOTE_ADDR']) || ($_SESSION['user'] != $_SERVER['HTTP_USER_AGENT'])){
header('Location: admin.php');
exit;
}
ini_set('use_trans_sid', 1);
$sr .= '|admin.php Админка';
define('ADMIN', 1);
      } else{
define('ADMIN', 0);
}


if(isset($_GET['ban']) && ADMIN){
$form = '<form action="index.php">
IP:<br/>
<input type="text" name="ban" value="' . $_GET['ban'] . '"/><br/>
<b>На:</b><br/>
Часов:<br/>
<input type="text" name="ts"/><br/>
Дней:<br/>
<input type="text" name="dn"/><br/>
Месяцев:<br/>
<input type="text" name="msc"/><br/>
<input type="hidden" name="v" value="ipban"/><br/>
<input type="submit" value="Забанить"/></form><br/>';
      if(isset($_GET['form'])) $content .= $form; 

      if(isset($_GET['ts']) and isset($_GET['dn']) and isset($_GET['msc'])){
$adr = $_GET['ban'];
$ts = intval($_GET['ts']);
$dn = intval($_GET['dn']);
$msc = intval($_GET['msc']);
   if(ctype_digit(str_replace('.', '', $adr))){
$banfile = file_get_contents('ban.dat');
   if(!strpos($banfile, $adr . '¤')){
       if(($msc + $dn + $ts) > 0){
$do = time() + (60 * 60 * $ts) + (60 * 60 * 24 * $dn) + (60 * 60 * 24 * 31 * $msc);

if(!strpos($banfile, '¤')) file_put_contents('ban.dat', $adr . '¤' . $do);
else file_put_contents('ban.dat', $banfile . '§' . $adr . '¤' . $do);

$content .= 'IP '. $adr . ' забанен до ' . dat($do) . '<br/>';
} else{
$content .= 'Бан минимум на 1 час!<br/>' . $form;
} } else{
$content .= 'Этот IP уже забанен!<br/>' . $form;
} } else{
$content .= 'Неверные данные!<br/>' . $form;
} }
}



if(filesize('post.dat') > 5){
$post = @file_get_contents('post.dat');
if($post){

#Удаляем сообщение
#
if(isset($_GET['del'])){
$post = preg_replace('~\§$~', '', preg_replace('~(^|§).*?' . $_GET['del'] . '.*?\§~', '$1', $post . '§', 1), 1);
file_put_contents('post.dat', $post);
$content .= 'Сообщение удалено!<br/>';
}


#Выводим
#
include $root . 'lst.class.part';

class Lst2 extends Lst{
public $nastrip, $nastrsajt, $nastrmail, $nastricq;
      public function nastr(){
      if(!ADMIN){
$ar = explode('¤', file_get_contents('gost.conf'));
$this->nastrip = $ar['0'];
$this->nastrsajt = $ar['1'];
$this->nastrmail = $ar['2'];
$this->nastricq = $ar['3'];
      } else{
$this->nastrip = '1';
$this->nastrsajt = '1';
$this->nastrmail = '1';
$this->nastricq = '1';
} }

      protected function vidwywod($soob){
$s = '<span class="k"><u>' . $soob[0] . '</u></span> ' . '(<b>' . dat($soob['1']) . '</b>)';

if($this->nastrip) $s .= ' [<span class="w">' . $soob['2'] . '</span>]';

if(ADMIN) $s .= ' <b><small><a href="?del=' . $soob['1'] . '">Удал.</a>|<a href="?ban=' . $soob['2'] . '&amp;form=">Бан</a></small></b>';

$s .= '<br/>' . $soob['3'] . '<br/>';

if(($soob['4'] !== '') && $this->nastrsajt) $s .= '<b>Сайт:</b> <a href="/perehod.php?p=' . $soob['4'] . '">' . $soob['4'] . '</a><br/>';

if(($soob['5'] !== '') && $this->nastrmail) $s .= '<b>E-mail:</b> ' . $soob['5'] . '<br/>';

if(($soob['6'] !== '') && $this->nastricq) $s .= '<b>ICQ:</b> ' . $soob['6'] . '<br/>';
return $s;
} }
$ob = new Lst2($post);

$ar = explode('¤', file_get_contentr('gost.conf');
$ob->nastr();
$ob->soob4 = $ar['4'];
$content .= $ob->wywodsoob();


} else{
$content .= 'Ошибка!<br/>';
} } else {
$content .= 'Сообщений пока нет.<br/>'; }
$content .= '<a href="dobav.php">Добавить сообщение</a><br/>';


if(ADMIN) $content .= '<a href="admin.php?vhd="><b>Выход</b></a><br/>';

//Низ файла

require 'wablon.part';
?>