View file dobav.php

File size: 5.49Kb
<?php
require 'root.part';
$sr = '/ Главная|index.php Гостевая';
$title = 'Гостевая';
$description = 'Гостевая';
$file = file_get_contents('ban.dat');
$c = '1';


if(strpos($file, $_SERVER['REMOTE_ADDR']) !== false){
$vip = preg_replace('~^.*(' . $_SERVER['REMOTE_ADDR'] . '¤[0-9]+).*$~s', '$1', $file, 1);
$d = explode('¤', $vip);
      if($d['1'] <= time()){
file_put_contents('ban.dat', preg_replace('~^\§~', '', str_replace('§' . $vip, '', '§' . $file), 1));
      } else{
include 'dat.part';
--$c;
} }



if($c){


session_start();
      if(isset($_SESSION['ip']) and isset($_SESSION['user']) and $_SERVER['HTTP_USER_AGENT']){
ini_set('use_trans_sid', 1);
$sr .= '|admin.php Админка';
}

$prover = $prover2 = 0;
$content = '';

   if(isset($_SESSION['kods'])){
$kodSES = $_SESSION['kods'];
++$prover2;
}
$_SESSION['kods'] = rand(rand(126, 4659), rand(4894, 92659));


$xhtml = '<form method="post" action="dobav.php">
Логин [2-20]:<br/>
<input type="text" name="login" maxlength="20"';
   if(isset($_POST['login'])){
$xhtml .= ' value="' . $_POST['login'] . '"';
++$prover2;
}
$xhtml .= '/><br/>
Сообщение [1-1000]:<br/>
<input type="text" name="soob" maxlength="1000"';
   if(isset($_POST['soob'])){
$xhtml .= ' value="' . $_POST['soob'] . '"';
++$prover2;
}
$xhtml .= '/><br/>
<input type="checkbox" name="transl" value="1"/>Транслит<br/>
<input type="checkbox" name="bb" value="1"/>ББ-коды<br/>
E-mаil (если есть) [0-30]:<br/>
<input type="text" name="mail" maxlength="30"';
   if(isset($_POST['mail'])){
$xhtml .= ' value="' . $_POST['mail'] . '"';
++$prover2;
}
$xhtml .= '/><br/>
ICQ (если есть) [0-9]:<br/>
<input type="text" name="icq" maxlength="9"';
   if(isset($_POST['icq'])){
$xhtml .=  ' value="' . $_POST['icq'] . '"';
++$prover2;
}
$xhtml .= '/><br/>
Сайт (если есть) [0-30]:<br/>
<input type="text" name="sajt" maxlength="30"';
   if(isset($_POST['sajt'])){
$xhtml .= ' value="' . $_POST['sajt'] . '"';
++$prover2;
}
$xhtml .= '/><br/>
<img src="img.php?' . rand(1001, 9999) . '=&amp;' . SID . '"/><br/>
Код с картинки:<br/>
<input type="text" name="kod"/><br/>
<input type="hidden" name="' . str_replace('=', '" value="', SID) . '"/>
<input type="submit" value="Добавить"/><br/>
</form>';



if(($prover2 == '6') && isset($_POST['kod'])){

$login = $_POST['login'];
$soob = $_POST['soob'];
$sajt = $_POST['sajt'];
$icq = $_POST['icq'];
$kod = $_POST['kod'];
$mail = $_POST['mail'];


if((strlen($login) > 20) or (strlen($login) < 2)){ $content .= 'Длина логина должна быть не менее 2 и не более 20 символов!<br/>';
} else{$prover++;}

if(($soob === '') or (strlen($soob) > 1000)){ $content .= 'Сообщение не может быть пустым или быть больше 1000 символов!<br/>';
} else{$prover++;}

if($sajt !== ''){
if((strpos($sajt, '.') === false) || (strlen($sajt) > 30)){ $content .= 'Неправильно введён адрес сайта или длина названия этого сайта больше 30 символов!<br/>';
} else{$prover++;} } else{$prover++;}

if($icq !== ''){
   if(!ctype_digit($icq)) $content .= 'Неверный ICQ! ';
   else ++$prover;
if(strlen($icq) > 9){ $content .= 'Размер ICQ-номера не может быть больше 9 символов!<br/>';
} else{$prover++;} } else{$prover += 2;}

if($mail !== ''){
if((strlen($mail) > 30) || !substr('@' ,$mail)){ $content .= 'Неверный e-mail или его длина больше 30 символов!<br/>';
} else{++$prover;} } else{++$prover;}

   if($kodSES != $kod) $content .= $kodSES . ' = ' . $kod . 'Введите правильно код с картинки!<br/>';
   else ++$prover;

      if(isset($_POST['transl'])) $transl = intval($_POST['transl']);
   else $transl = '0';

if(isset($_POST['bb'])) $bb = intval($_POST['bb']);
   else $bb = '0';

   include 'bbt.part';
$soob = nl2br(str_replace(array('§', '¤'), array('&#167;', '&#164;'), bbt(htmlspecialchars(trim($soob), ENT_QUOTES, 'UTF-8'), $transl, $bb)));
   if($soob == 'a*b=c<d>e#f@g`h') $content .= $soob . '*Ваше сообщение не соответствует XML-стандартам!<br/>';
   else ++$prover;


if($prover == 8){

####### @@@@@@@@

$sajt = str_replace('http://', '', $sajt);

$posts = array($login, $sajt, $mail, $icq);
for($x = 0; $x < 4; $x++) $posts[$x] = nl2br(str_replace(array('§', '¤'), array('&#167;', '&#164;'), htmlspecialchars(trim($posts[$x]), ENT_QUOTES, 'UTF-8')));


$post = file_get_contents('post.dat');
if($post){

if(strpos($post, '§') !== false){
$post = '§' . $post;
} else{
if(strpos($post, '¤') !== false) $post = '§' . $post;
else $post = '';}


$post = $posts['0'] . '¤' . time() . '¤' . $_SERVER['REMOTE_ADDR'] . '¤' . $soob . '¤' . $posts['1'] . '¤' . $posts['2'] . '¤' . $posts['3'] . $post;
$post = file_put_contents('post.dat', $post);

if($post) $content .= 'Сообщение добавлено!<br/>';
else $content .= 'Добавить сообщение не удалось!<br/>' . $xhtml;



} else{
$content .= 'Добавить сообщение не удалось!<br/>' . $xhtml;}


} else {
$content .= $xhtml;
} } else {
$content .= $xhtml;
}



} else{
$content = 'Вы забанены до ' . dat($d['1']) . '!<br/>';
}

//$content .= $SKniz . '<a href="info.php?n=dobav.php&v=transl">Правила транслита</a><br/><a href="info.php?n=dobav.php&v=bb">ББ-коды</a>';

require $root . 'wablon.part';
?>