"; if (isset($wrfname)) {print "Ваш профиль  Выход [$wrfname]";} else {print " Регистрация   Вход";} if (is_file("$fskin/tiptop.html")) {include("$fskin/tiptop.html");} // подключаем дополнение к ВЕРХУШКе print"Сегодня: $date - $time"; return true;} function prcmp ($a, $b) {if ($a==$b) return 0; if ($a<$b) return -1; return 1;} // Функция сортировки function replacer ($text) { // ФУНКЦИЯ очистки кода $text=str_replace(" ",' ',$text); $text=str_replace("&",'&',$text); // закоментируйте эту строку если вы используете языки: Украинский, Татарский, Башкирский и т.д. $text=str_replace(">",'>',$text); $text=str_replace("<",'<',$text); $text=str_replace("\"",'"',$text); $text=preg_replace("/\n\n/",'

',$text); $text=preg_replace("/\n/",'
',$text); $text=preg_replace("/\\\$/",'$',$text); $text=preg_replace("/\r/",'',$text); $text=preg_replace("/\\\/",'\',$text); $text=str_replace("\r\n","
",$text); $text=str_replace("\n\n",'

',$text); $text=str_replace("\n",'
',$text); $text=str_replace("\t",'',$text); $text=str_replace("\r",'',$text); $text=str_replace(' ',' ',$text); return $text; } //--А-Н-Т-И-С-П-А-М-- if (isset($_GET['image'])) { // Функция с цифрами защиты $st="R0lGODlhCgAMAIABAFNTU////yH5BAEAAAEALAAAAAAKAAwAAAI"; // общая часть для всех рисунков function imgwr($st,$num){ if ($num=="0") {$len="63"; $number=$st."WjIFgi6e+QpMP0jin1bfv2nFaBlJaAQA7";} if ($num=="1") {$len="61"; $number=$st."UjA1wG8noXlJsUnlrXhE/+DXb0RUAOw==";} if ($num=="2") {$len="64"; $number=$st."XjIFgi6e+QpMPRlbjvFtnfFnchyVJUAAAOw==";} if ($num=="3") {$len="64"; $number=$st."XjIFgi6e+Qovs0RkTzXbj+3yTJnUlVgAAOw==";} if ($num=="4") {$len="64"; $number=$st."XjA9wG8mWFIty0amczbVJDVHg9oSlZxQAOw==";} if ($num=="5") {$len="63"; $number=$st."WTIAJdsuPHovSKGoprhs67mzaJypMAQA7";} if ($num=="6") {$len="63"; $number=$st."WjIFoB6vxmFw0pfpihI3jOW1at3FRAQA7";} if ($num=="7") {$len="61"; $number=$st."UDI4Xy6vtAIzTyPpg1ndu9oEdNxUAOw==";} if ($num=="8") {$len="63"; $number=$st."WjIFgi6e+QpMP2slSpJbn7mFeWDlYAQA7";} if ($num=="9") {$len="64"; $number=$st."XjIFgi6e+QpMP0jinvbT2FGGPxmlkohUAOw==";} header("Content-type: image/gif"); header("Content-length: $len"); echo base64_decode($number); } // Вывод изображений на экран (все кодированы) if (array_key_exists("image", $_REQUEST)) { $num=$_REQUEST["image"]; for ($i=0; $i<10; $i++) {if (md5($i+$absrand)==$num) {imgwr($st,$i); die();}} } exit;} // Выбран ВЫХОД из форума - очищаем куки if(isset($_GET['event'])) {if ($_GET['event']=="clearcooke") {setcookie("wrfcookies","",time()); Header("Location: index.php"); exit;}} // ДОБАВЛЕНИЕ ТЕМЫ или ОТВЕТА - ШАГ 1 if(isset($_GET['event'])) { if (($_GET['event']=="addtopic") or ($_GET['event']=="addanswer")) { if (isset($_POST['name'])) {$name=$_POST['name'];} $name=trim($name); // Вырезает ПРОБЕЛьные символы $zag=$_POST['zag']; $msg=$_POST['msg']; $fid=$_GET['fid']; if (isset($_POST['who'])) {$who=$_POST['who'];} else {$who="";} if (isset($_POST['email'])) {$email=$_POST['email'];} else {$email="";} if (isset($_POST['page'])) {$page=$_POST['page'];} if ($_GET['event']=="addanswer") {$id=$_POST['id'];} if (isset($_POST['maxzd'])) {$maxzd=$_POST['maxzd'];} else {$maxzd="0";} if ($maxzd==null) {$maxzd="0";} if ((!ctype_digit($maxzd)) or (strlen($maxzd)>2)) {exit("$back. Попытка взлома по звёздам или ошибка в файле статистики");} // защита по топику fid if (!ctype_digit($fid) or strlen($fid)>3) {exit("$back. Попытка взлома через номер рубрики. Номер должен содержать только цифры и быть менее 4 символов");} //--А-Н-Т-И-С-П-А-М--проверка кода-- if ($antispam!="0" and !isset($_COOKIE['wrfcookies'])) { $bada="$back Введённый вами код НЕ верен!"; if (isset($_POST['usernum'])) {$usernum=$_POST['usernum'];} else {exit("$bada");} if (isset($_POST['xkey'])) {$xkey=$_POST['xkey'];} else {exit("$bada");} $userkey=md5("$usernum+$absrand"); if ($userkey!=$xkey) {exit("$bada");}} //--А-Н-Т-И-С-П-А-М--проверка кода-- // проходим по всем разделам и топикам - ищем запращиваемый // на тот случай, если mainforum.dat - пуст, подключаем резервную копию $realbase="1"; if (is_file("$datadir/mainforum.dat")) {$mainlines=file("$datadir/mainforum.dat");} if (!isset($mainlines)) {$datasize=0;} else {$datasize=sizeof($mainlines);} if ($datasize<=0) {if (is_file("$datadir/copy.dat")) {$realbase="0"; $mainlines=file("$datadir/copy.dat"); $datasize=sizeof($mainlines);}} if ($datasize<=0) {exit("$back. Проблемы с Базой данных, файл данных пуст - обратитесь к администратору");} $i=count($mainlines); $realfid=null; do {$i--; $dt=explode("|", $mainlines[$i]); if ($dt[0]==$fid) {$realfid=$i; if ($dt[1]=="razdel") {exit("$back. Данной ветки форума не существует");}} // присваиваем $realfid - № п/п строки } while($i>0); if (!isset($realfid)) {exit("$back. Ошибка с номером рубрики. Она не существует в базе");} $dt=explode("|",$mainlines[$realfid]); if (is_file("$datadir/topic$fid.dat")) {$tlines=file("$datadir/topic$fid.dat"); $tc=count($tlines)-2; $i=$tc+2; $ok=null; // нужно пробежаться по топику, найти тему. Если есть - нормуль, нету - значит добавление сообщений ЗАПРЕЩЕНО! if ($_GET['event']=="addanswer") { do {$i--; $tdt=explode("|", $tlines[$i]); if ($tdt[7]==$id) {$ok=1; if ($tdt[8]=="closed") {exit("$back тема закрыта и добавление сообщений запрещено!");} } } while($i>0); if ($ok!=1) {exit("$back тема закрыта и добавление сообщений запрещено!");} } } else {$tc="2";} if ($dt[11]>0) {if ($tc>=$dt[11]) {exit("$back. Превышено ограничение на кол-во допустимых тем в данной рубрике! Не более $dt[11] тем!");}} // проверка Логина/Пароля юзера. Может он хакер, тогда облом ему // Этап 1 if (isset($_COOKIE['wrfcookies'])) { $wrfc=$_COOKIE['wrfcookies']; $wrfc=htmlspecialchars($wrfc); $wrfc=stripslashes($wrfc); $wrfc=explode("|", $wrfc); $wrfname=$wrfc[0]; $wrfpass=$wrfc[1]; } else {$who=null; $wrfname=null; $wrfpass=null;} // Этап 2 if ($who!=null) { if ($wrfname!=null & $wrfpass!=null) { $lines=file("$datadir/usersdat.php"); $i=count($lines); do {$i--; $rdt=explode("|", $lines[$i]); if (isset($rdt[1])) { $realname=strtolower($rdt[0]); if (strtolower($wrfname)===$realname & $wrfpass===$rdt[1]) {$ok="$i";}} } while($i > "1"); if (!isset($ok)) {setcookie("wrfcookies","",time()); exit("Ошибка при работе с КУКИ! Вы не сможете оставить сообщение, попробуйте подать его как гость. Ваш логин и пароль не найдены в базе данных, попробуйте зайти на форум вновь. Если ошибка повторяется - обратитесь к администратору форума.");} }} print""; if ($_GET['event']=="addtopic" and $cangutema=="0" and !isset($wrfname)) {exit("

Администратор запретил гостям создавать темы!


");} if ($_GET['event']=="addanswer" and $cangumsg=="0" and !isset($wrfname)) {exit("
Администратор запретил гостям отвечать в темах!


");} $tektime=time(); $name=wordwrap($name,30,' ',1); // разрываем длинные строки $zag=wordwrap($zag,30,' ',1); $msg=wordwrap($msg,110,' ',1); $name=str_replace("|","I",$name); $who=str_replace("|","|",$who); $email=str_replace("|","|",$email); $zag=str_replace("|","|",$zag); $msg=str_replace("|","|",$msg); $smname=$name; if (strlen($name)>18) {$smname=substr($name,0,18); $smname.="..";} $smzag=$zag; if (strlen($zag)>24) {$smzag=substr($zag,0,24); $smzag.="..";} // генерируем имя файлу с темой if ($_GET['event'] =="addtopic") {$add=null; $z=null; do {$id=mt_rand(1000,9999); if ($fid<10) {$add="0";} if (!is_file("$datadir/$add$fid$id.dat") and strlen($id)==4) {$z++;} } while ($z<1); $id="$add$fid$id";} if ((!ctype_digit($id)) or (strlen($id)>15)) {exit("$back. Номер темы должен быть числом. Критическая ошибка скрипта или попытка взлома");} if (strlen(ltrim($zag))<3) {exit("$back ! Ошибка в вводе данных заголовка!");} $text="$name|$who|$email|$zag|$msg|$date|$time|$id||$tektime|$smname|$smzag|||"; $text=replacer($text); $exd=explode("|",$text); $name=$exd[0]; $zag=$exd[3]; $smname=$exd[10]; $smzag=$exd[11]; $smmsg=$exd[4]; if (!isset($name) || strlen($name) > $maxname || strlen($name) <1) {exit("$back Ваше Имя пустое, или превышает $maxname символов!");} if (preg_match("/[^(\\w)|(\\x7F-\\xFF)|(\\-)]/",$name)) {exit("$back Ваше имя содержит запрещённые символы. Разрешены русские и английские буквы, цифры, подчёркивание и тире.");} if (strlen(ltrim($zag))<3 || strlen($zag) > $maxzag) {exit("$back Слишком короткое название темы или название превышает $maxzag символов!");} if (strlen(ltrim($msg))<2 || strlen($msg) > $maxmsg) {exit("$back Ваше сообщение короткое или превышает $maxmsg символов.");} if (!eregi("^([0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-wyz][a-z](fo|g|l|m|mes|o|op|pa|ro|seum|t|u|v|z)?)$", $email) and strlen($email) > 30 and $email != "") {exit("$back и введите корректный E-mail адрес!");} // функция АНТИФЛУД здесь - повторное добавление сообщения/темы запрещено! if (isset($tlines)) { if ($tc<"-1") {$sdt[0]=null; $sdt[3]=null;} else {$last=$tlines[$tc+1]; $sdt=explode("|",$last);} if ($_GET['event'] =="addtopic") { // ЕСЛИ добавление ТЕМЫ: имя = имя в файле, тема = последняя тема в файле if ($name==$sdt[0] and $exd[3]==$sdt[3]) {exit("$back. Такая тема уже создана. Спамить на форуме запрещено!");} } else { // ЕСЛИ добавление сообщения: имя = имя в файле, сообщение = последнему сообщению в файле if (is_file("$datadir/$id.dat")) {$linesn=file("$datadir/$id.dat"); $in=count($linesn)-1; if ($in > 0) { $dtf=explode("|",$linesn[$in]); if ($name==$dtf[0] and $exd[4]==$dtf[4]) {exit("$back. Такое сообщение уже размещено в данной теме. Спамить на форуме запрещено!");}} } }} // if $event=="addtopic" // ЕСЛИ введена команда АП, то меняем дату создания файла и тема самая первая будет if ($_GET['event'] =="addanswer") { //при ОТВЕТе В ТЕМЕ // Проверяем, давно ли реактивировали тему $timetek=time(); $timefile=filemtime("$datadir/$id.dat"); $timer=$timetek-$timefile; // узнаем сколько прошло времени (в секундах) // $timer<10 - 10 секунд защита от антифлуда if ($smmsg=="ап!") { if ($timer<10 and $timer>0) {exit("$back тема была активна менее $timer секунд назад. Подождите чуть-чуть.");} touch("$datadir/$id.dat"); print "
Спасибо, $name, тема реактивирована.

Через несколько секунд Вы будете автоматически перемещены в текущую тему
$zag.

Нажмите здесь, если не хотите больше ждать
"; exit; } if ($timer<10 and $timer>0) {exit("$back тема была активна менее $timer секунд назад.");} } $razdelname=""; if ($realbase=="1" and $maxzd<1) { // Если подключена рабочая база, а не копия $lines=file("$datadir/mainforum.dat"); $max=sizeof($lines)-1; $dt=explode("|", $lines[$realfid]); $dt[5]++; if ($_GET['event']=="addtopic") {$dt[4]++;} // НЕ менять 4-е строки до 2009 года. пусть как написано так и будет! if (!isset($dt[11])) {$dt[11]="100";} $dt[11]=str_replace(" ", "
", $dt[11]); if (!isset($dt[12])) {$dt[12]="";} $dt[12]=str_replace(" ", "
", $dt[12]); $txtdat="$dt[0]|$dt[1]|$dt[2]|$id|$dt[4]|$dt[5]|$smname|$date|$time|$tektime|$smzag|$dt[11]|$dt[12]||"; $razdelname=$dt[1]; // запись данных на главную страницу $fp=fopen("$datadir/mainforum.dat","a+"); flock ($fp,LOCK_EX); ftruncate ($fp,0);//УДАЛЯЕМ СОДЕРЖИМОЕ ФАЙЛА for ($i=0;$i<=$max;$i++) {if ($i==$realfid) {fputs($fp,"$txtdat\r\n");} else {fputs($fp,$lines[$i]);}} fflush ($fp); flock ($fp,LOCK_UN); fclose($fp); } // if ($realbase=="1") if ($newmess=="1" and $maxzd<1) { // запись в отдельный файл нового сообщения if (is_file("$datadir/topic$fid.dat")) {$nlines=count(file("$datadir/topic$fid.dat"));} else {$nlines=1;} if (is_file("$datadir/$id.dat")) {$nlines2=count(file("$datadir/$id.dat"))+1;} else {$nlines2=1;} $newmessfile="$datadir/news.dat"; $newlines=file("$newmessfile"); $ni=count($newlines)-1; $i2=0; $newlineexit=""; $nmsg=substr($msg,0,150); // образаем сообщение до 150 символов $ntext="$fid|$id|$date|$time|$smname|$zag|$nmsg...|$nlines|$nlines2|$razdelname|$who||||"; $ntext=str_replace(" ", "
", $ntext); // Блок проверяет, есть ли уже новое сообщение в этой теме. Если есть - отсеивает. На выходе - массив без этой строки. for ($i=0;$i<=$ni;$i++) { $ndt=explode("|",$newlines[$i]); if (isset($ndt[1])) {if ($id!=$ndt[1]) {$newlineexit.="$newlines[$i]"; $i2++;}} } // Записываем свежее сообщение в массив и далее сохраняем его в файл if ($maxzd<1) { // Если тема доступна для всех - нет ограничений по звёздам if ($i2>0) { // Если есть такая тема, то пишем весь массив, иначе тока строку $newlineexit.=$ntext; $fp=fopen("$newmessfile","w"); flock ($fp,LOCK_EX); fputs($fp,"$newlineexit\r\n"); fflush ($fp); flock ($fp,LOCK_UN); fclose($fp); } else { $fp=fopen("$newmessfile","a+"); flock ($fp,LOCK_EX); fputs($fp,"$ntext\r\n"); fflush ($fp); flock ($fp,LOCK_UN); fclose($fp);} $file=file($newmessfile);$i=count($file); if ($i>="15") { $fp=fopen($newmessfile,"w"); flock ($fp,LOCK_EX); unset($file[0]); fputs($fp, implode("",$file)); fflush ($fp); flock ($fp,LOCK_UN); fclose($fp);} } } } // if ($newmess=="1") // БЛОК добавляет +1 к репе и +1 к сообщению или +1 к кол-ву тем, созданных юзером if (isset($_COOKIE['wrfcookies']) and (isset($ok))) { $ufile="$datadir/userstat.dat"; $ulines=file("$ufile"); $ui=count($ulines)-1; $ulinenew=""; // Ищем юзера по имени в файле userstat.dat for ($i=0;$i<=$ui;$i++) {$udt=explode("|",$ulines[$i]); if ($udt[0]==$wrfname) { $udt[3]++; $udt[2]++; if ($_GET['event']=="addtopic") {$udt[1]++;} $ulines[$i]="$udt[0]|$udt[1]|$udt[2]|$udt[3]|$udt[4]|$udt[5]||||\r\n";} $ulinenew.="$ulines[$i]";} // Пишем данные в файл $fp=fopen("$ufile","w"); flock ($fp,LOCK_EX); fputs($fp,"$ulinenew"); fflush ($fp); flock ($fp,LOCK_UN); fclose($fp); } // if isset($ok) if ($_GET['event'] =="addtopic") { // Добавление ТЕМЫ - запись данных // Пишем В ТОПИК $fp=fopen("$datadir/topic$fid.dat","a+"); flock ($fp,LOCK_EX); fputs($fp,"$text\r\n"); fflush ($fp); flock ($fp,LOCK_UN); fclose($fp); // Пишем В ТЕМУ $fp=fopen("$datadir/$id.dat","a+"); flock ($fp,LOCK_EX); fputs($fp,"$text\r\n"); fflush ($fp); flock ($fp,LOCK_UN); fclose($fp); print "
Спасибо, $name, за добавление темы!

Через несколько секунд Вы будете автоматически перемещены в созданную тему.

Нажмите здесь, если не хотите больше ждать
"; exit; } if ($_GET['event'] =="addanswer") { //ОТВЕТ В ТЕМЕ - запись данных $timetek=time(); $timefile=filemtime("$datadir/$id.dat"); $timer=$timetek-$timefile; // узнаем сколько прошло времени (в секундах) $fp=fopen("$datadir/$id.dat","a+"); flock ($fp,LOCK_EX); fputs($fp,"$text\r\n"); fflush ($fp); flock ($fp,LOCK_UN); fclose($fp); if ($timer<0) {$viptime=strtotime("+2 year"); touch("$datadir/$id.dat",$viptime);} $in=$in+2; $page=ceil($in/$qq); // расчитываем верную страницу и номер сообщения print "
Спасибо, $name, Ваш ответ успешно добавлен.

Через несколько секунд Вы будете автоматически перемещены в текущую тему
$zag.

Нажмите здесь, если не хотите больше ждать
"; exit; } if (isset($_GET['event'])) { if ($_GET['event']=="login") { $frname="Вход на форум .:. "; $frtname=""; include("$fskin/top.html"); addtop(); // подключаем ШАПКУ форума print"



Вход на форум
Имя:
Пароль:
"; print "


Забыли пароль?
Введите Ваш Емайл
* имя и пароль будут высланы Вам на электронный адрес.





"; }} } ////////////////// // шапка для всех страниц форума // определяем дату последнего визита. +5 минут погрешности if (isset($_COOKIE['wrfcookies'])) { $wrfc=$_COOKIE['wrfcookies']; $wrfc=htmlspecialchars($wrfc); $wrfc=stripslashes($wrfc); $wrfc=explode("|", $wrfc); $wrfname=$wrfc[0];$wrfpass=$wrfc[1];$wrftime1=$wrfc[2];$wrftime2=$wrfc[3]; if (time()>($wrftime1+240)) { $tektime=time(); $wrfcookies="$wrfc[0]|$wrfc[1]|$tektime|$wrftime1|"; setcookie("wrfcookies", $wrfcookies, time()+1728000); $wrfc=$_COOKIE['wrfcookies']; $wrfc=explode("|", $wrfc); $wrfname=$wrfc[0];$wrfpass=$wrfc[1];$wrftime1=$wrfc[2];$wrftime2=$wrfc[3]; } } ////////////////// if (!isset($_GET['event'])) { if (is_file("$datadir/mainforum.dat")) {$mainlines=file("$datadir/mainforum.dat");} if (!isset($mainlines)) {$datasize=0;} else {$datasize=sizeof($mainlines);} if ($datasize<=0) {if (is_file("$datadir/copy.dat")) {$mainlines=file("$datadir/copy.dat"); $datasize=sizeof($mainlines);}} if ($datasize<=0) {exit("
Файл РУБРИК несуществует! Зайдите в админку и создайте рубрики!");} // Блок выводит в статусной строке: ТЕМА -> РАЗДЕЛ -> ФОРУМ if (isset($_GET['fid'])) { $fid=$_GET['fid']; if (!ctype_digit($fid) or strlen($fid)>3) {exit("$back. Индекс темы должен содержать цифры, их кол-во менее 4 символов");} $imax=count($mainlines); if (($fid>999) or (strlen($fid)==0)) {exit(" Максимальное кол-во разделов - 999. Данный раздел удалён или не существует.");} $i=count($mainlines); // проходим по всем разделам и топикам - ищем запращиваемый $raz=""; $rfid=""; $frname=""; do {$i--; $dt=explode("|", $mainlines[$i]); if ($dt[0]==$fid) {$rfid=$i; $raz="$dt[1]"; $frname="$dt[1]"; if (isset($dt[11])) { if($dt[11]>0) {$maxtem=$dt[11];} else {$maxtem="100";}}} } while($i >0); if (isset($_GET['id'])) { $id=$_GET['id']; if (!ctype_digit($id) or strlen($id)>15) {exit("$back. Ключ темы должен содержать менее 15 цифр!");} if (is_file("$datadir/$id.dat")) { $lines=file("$datadir/$id.dat"); if (count($lines)>4) {$dtt=explode("|",$lines[0]); $frtname=$dtt[3];} else {$frtname="";} $ft=$frname; $frname="-> $ft ->";} else {$frtname=""; $frname="";}} else {$frtname=""; $frname.="->";} } else {$frname=""; $frtname="";} include("$fskin/top.html"); addtop(); // подключаем ШАПКУ форума // выводим ГЛАВНУЮ СТРАНИЦУ ФОРУМА if (is_file("$datadir/usersdat.php")) { // считываем имя последнего зарегистрировавшегося $userlines=file("$datadir/usersdat.php"); $dayx=""; $usercount=count($userlines); $ui=$usercount-1; $uu=$ui; $tdt=explode("|", $userlines[$ui]);} else { $fp=fopen("$datadir/usersdat.php","a+"); fputs($fp,"\r\n"); fflush ($fp); fclose($fp); $ui=""; $tdt[0]="";} $today=mktime(); if (!isset($_GET['fid'])) { echo ('
   '.$fname.' ->
'); // Выводим все РУБРИКИ НА ГЛАВНОЙ $adminmsg=""; if (is_file("$datadir/mainforum.dat")) {$lines=file("$datadir/mainforum.dat");} if (!isset($lines)) {$datasize=0;} else {$datasize=sizeof($lines);} if ($datasize<=0) {if (is_file("$datadir/copy.dat")) {$lines=file("$datadir/copy.dat"); $datasize=sizeof($lines);} $adminmsg="Администратор, внимание!!! Файл БД с рубриками повреждён. Восстановите его из резервной копии в админке!
";} if ($datasize<=0) {exit("Проблемы с Базой данных - обратитесь к администратору");} $i=count($lines); $n="0"; $a1="-1"; $u=$i-1; $fid="0"; $itogotem="0"; $itogomsg="0"; $alt=""; do {$a1++; $dt=explode("|", $lines[$a1]); if (isset($dt[1])) { // Если строчка потерялась в скрипте (пустая строка) - то просто её НЕ выводим // определяем тип: топик или заголовок if ($dt[1]=="razdel") {print "";} else { //$dt[9] - дата размещения сообщения; $wrftime2 - последнее посещение // Если $dt[9] раньше (т.е. больше) $wrftime2 значит раздел форума - новый $foldicon="folder.gif"; if (isset($wrfname)) {if (isset($dt[9])) {if ($dt[9]>$wrftime2) {$foldicon="foldernew.gif";}}} if (is_file("$datadir/$dt[3].dat")) { $msgsize=sizeof(file("$datadir/$dt[3].dat")); // считаем кол-во страниц в файле if ($msgsize>$qq) {$page=ceil($msgsize/$qq);} else {$page=1;}} else {$page=1;} if ($dt[7]==$date) {$dt[7]="сегодня";} $maxzvezd=null; if (isset($dt[12])) { if ($dt[12]>=1) {$maxzvezd="*Доступна участникам, имеющим $dt[12] звезд"; $dt[4]=""; $dt[5]=""; if ($dt[12]==1) {$maxzvezd.="у";} if ($dt[12]==2 or $dt[12]==3 or $dt[12]==4) {$maxzvezd.="ы";} $maxzvezd.=" минимум";}} $fid="$dt[0]"; // НОВАЯ система: если есть файлы типа main-XX.gif, где ХХ - число, то вместо обычных фолдерозаглушек, ставим этот файл, по соответствию с переменной FID if (is_file("$fskin/main-$fid.gif")) {$foldicon="main-$fid.gif"; $alt="$dt[1]";} else {$alt="";} $dt[8]=substr($dt[8],0,-3); print ""; $itogotem=$itogotem+$dt[4];$itogomsg=$itogomsg+$dt[5];} } // if isset $dt[1] } while($a1 < $u); echo('
Форумы Тем Ответов Обновление
$dt[2]
 
$alt $dt[1] $maxzvezd
$dt[2]
$dt[4] $dt[5] тема: "; if (strlen($dt[10])>0) {print "$dt[10]";} print"
автор: $dt[6]
дата: $dt[7] - $dt[8]

'); if (!ctype_digit($statistika)) {$statistika='1';} if ($statistika>0) { if ($cangutema=="1") {$c1="разрешено";} else {$c1="запрещено";} if ($cangumsg =="1") {$c2="разрешено";} else {$c2="запрещено";} $codename=urlencode($tdt[0]); print"
Статистика
Сообщений: $itogomsg
Тем: $itogotem
Всего зарегистрировано участников: $ui
Последним зарегистрировался: $tdt[0]
Гостям $c1 создавать темы и $c2 отвечать в темах
$adminmsg
"; // БЫСТРЫЙ ПЕРЕХОД к теме echo '
Навигация
Быстрый переход по темам  
'; // СТАТИСТИКА -=ДНИ РОЖДЕНИЯ=- if (is_file("$datadir/usersdat.php")) { // считываем всех юзеров, ищем дни варения $userlines=file("$datadir/usersdat.php"); $usercount=count($userlines); $ui=$usercount-1; $t_people=""; $z_people=""; $s_p="0"; $s_people=""; $p_people=""; do {$udt=explode("|", $userlines[$ui]); if (isset($udt[1])) { $udt[5]=substr("$udt[5]",0, 10); // обрезаем дату рождения по формату if (preg_match("(\d{2}\.\d{2}\.\d{4})",$udt[5])) { // соответствует шаблону ДД.ММ.ГГГГ $bday=substr("$udt[5]",0, -5); $dmtoday=date("d.m"); $todaydt=explode(".",$dmtoday); $codename=urlencode($udt[0]); if ($bday==$dmtoday) {$t_people.="$udt[0],   ";} $dt=explode(".",$udt[5]); if ($dt[1]==12) {$year=1972;} else {$year=1973;} // для того, чтобы верно считать с декабря по январь $newdate=mktime(0,0,0,$dt[1],$dt[0],$year); // для дня рождения $tekdt=mktime(0,0,0,$todaydt[1],$todaydt[0],$year); // текущую дату переводим в этот формат $deystodate=round(($newdate-$tekdt)/86400); // через сколько дней наступит событие // собираем для ЗАВТРАШНИХ if ($deystodate==1) {$z_people.="$udt[0],  ";} // собираем ПРИБЛИЖАЮЩИХСЯ в массив (БОЛЬШЕ 1 и МЕНЬШЕ 7 дней) if ($deystodate>1 and $deystodate<7) {if ($deystodate<10) $deystodate="0$deystodate"; $s_peo[$s_p]="$deystodate|$udt[0]|"; $s_p++;} } // if указан день варения в переменной $udt[5] } // if iiset($udt[1]) $ui--; } while ($ui>0); $today=mktime(); } if (isset($s_peo)) { usort($s_peo,"prcmp"); // сортируем дни по возрастанию $i=0; do {$sdt=explode("|",$s_peo[$i]); $sdt[0]=intval($sdt[0]); // преобразуем строку в число, чтобы отбросить 0 в начале $codename=urlencode($sdt[1]); $s_people.="$sdt[1] ($sdt[0] дн.), "; $i++; } while ($i<$s_p); } // ЕСЛИ есть у кого-нибудь дни варения // На тот случай, если дней рождения нет, делаем заглушки if (strlen($t_people)>1) {$t_people="$t_peopleискренне поздравляю!";} else {$t_people="нет.";} if (strlen($z_people)>1) {$z_people="$z_people будем поздравлять с днём варения!";} else {$z_people="нет.";} if (strlen($s_people)>1) {$s_people="$s_people совсем скоро день варения!";} else {$s_people="Не придвидится.";} print"
Дни рождения

Сегодня: $t_people

Завтра: $z_people

Скоро: $s_people

"; // СТАТИСТИКА -= Последние сообщения с форума =- if (is_file("$datadir/news.dat")) { $newmessfile="$datadir/news.dat"; $lines=file($newmessfile); $i=count($lines); //if ($i>10) $i=10; (РАСКОМЕНТИРУЙ - ВОТ ГДЕ СИЛА!!! ;-)) if ($i>1) { echo('
Последние сообщения
'); $a1=$i-1;$u="-1"; // выводим данные по возрастанию или убыванию do {$dt=explode("|", $lines[$a1]); $a1--; if (isset($dt[1])) { // Если строчка потерялась в скрипте (пустая строка) - то просто её НЕ выводим $dt[6]=htmlspecialchars($dt[6]); $dt[6]=str_replace("[b] "," ",$dt[6]); $dt[6]=str_replace("[/b]"," ",$dt[6]); $dt[6]=str_replace("[RB] "," ",$dt[6]); $dt[6]=str_replace("[/RB]"," ",$dt[6]); $dt[6]=str_replace("[Code] "," ",$dt[6]); $dt[6]=str_replace("[/Code]"," ",$dt[6]); $dt[6]=str_replace("[Quote] "," ",$dt[6]); $dt[6]=str_replace("[/Quote]"," ",$dt[6]); $dt[6]=str_replace("
","\r\n", $dt[6]); $dt[2]=str_replace(".200",".0", $dt[2]); $dt[2]=substr($dt[2],0,8); $dt[3]=substr($dt[3],0,5); if ($dt[8]>$qq) {$page=ceil($dt[8]/$qq);} else {$page=1;} // Считаем страницу if ($dt[10]=="да") {$codename=urlencode($dt[4]); $name="$dt[4]";} else {$name="гость $dt[4]";} print"$dt[2] - $dt[3]: $dt[9] -> $dt[5] - $name.
"; } // если строчка потерялась $a11=$u; $u11=$a1; } while($a11 < $u11); echo'
';} } // Конец блока последних сообщений } // конец if (statistika==1) if (is_file("$fskin/bottom.html")) {include("$fskin/bottom.html");} // подключаем НИЖНИЙ БЛОК форума } // конец главной страницы // страница С ТЕМАМИ выбранной РУБРИКИ if (isset($_GET['fid']) and !isset($_GET['id'])) { $fid=$_GET['fid']; // Защиты if (!ctype_digit($fid) or strlen($fid)>3) {exit("$back. Номер рубрики должен быть цифровым и содержать менее 4 символов");} $imax=count($mainlines); if (($fid>99) or (strlen($fid)==0)) {exit(" Данный раздел удалён или не существует.");} if ($raz=="razdel") { echo'
   '.$fname.' ->
'; // Выводим все РУБРИКИ раздела $adminmsg=""; if (is_file("$datadir/mainforum.dat")) {$lines=file("$datadir/mainforum.dat");} if (!isset($lines)) {$datasize=0;} else {$datasize=sizeof($lines);} if ($datasize<=0) {if (is_file("$datadir/copy.dat")) {$lines=file("$datadir/copy.dat"); $datasize=sizeof($lines);} $adminmsg="Администратор, внимание!!! Файл БД с рубриками повреждён. Восстановите его из резервной копии в админке!
";} if ($datasize<=0) {exit("Проблемы с Базой данных - обратитесь к администратору");} $i=count($lines); $n="0"; $a1=$rfid-1; $u=$i-1; $fid="0"; $itogotem="0"; $itogomsg="0"; $alt=""; $countik=0; do {$a1++; $dt=explode("|", $lines[$a1]); if ($dt[1]=="razdel" and $countik!=1) {print "";} if (isset($dt[1])) { // Если строчка потерялась в скрипте (пустая строка) - то просто её НЕ выводим // определяем тип: топик или заголовок if ($dt[1]!="razdel") { //$dt[9] - дата размещения сообщения; $wrftime2 - последнее посещение // Если $dt[9] раньше (т.е. больше) $wrftime2 значит раздел форума - новый $foldicon="folder.gif"; if (isset($wrfname)) {if (isset($dt[9])) {if ($dt[9]>$wrftime2) {$foldicon="foldernew.gif";}}} if (is_file("$datadir/$dt[3].dat")) { $msgsize=sizeof(file("$datadir/$dt[3].dat")); // выводим список доступных страниц if ($msgsize>$qq) {$page=ceil($msgsize/$qq);} else {$page=1;}} else {$page=1;} if ($dt[7]==$date) {$dt[7]="сегодня";} $fid="$dt[0]"; // НОВАЯ система: если есть файлы типа main-XX.gif, где ХХ - число, то вместо обычных фолдерозаглушек, ставим этот файл, по соответствию с переменной FID if (is_file("$fskin/main-$fid.gif")) {$foldicon="main-$fid.gif"; $alt="$dt[1]";} else {$alt="";} print ""; $itogotem=$itogotem+$dt[4];$itogomsg=$itogomsg+$dt[5];} else {$countik++; if ($countik<1) { print "
$dt[2]";}} // if isset($dt[1] } if ($countik==2) {$a1=$u;} } while($a1 < $u); echo'
Форумы Тем Ответов Обновление
$dt[2]
 
$alt $dt[1]
$dt[2]
$dt[4] $dt[5] тема: "; if (strlen($dt[10])>0) {print "$dt[10]";} print"
автор: $dt[6]
дата: $dt[7] - $dt[8]

'; // БЫСТРЫЙ ПЕРЕХОД к теме echo '
Навигация
Быстрый переход по темам  
'; } // if ($dt[1]=="razdel") if ($raz!="razdel") { // Уточняем статус по кол-ву ЗВЁЗД юзера. Если меньше допустимых N в этой рубрике - то досвиданья! $maxzd=null; do {$imax--; $ddt=explode("|", $mainlines[$imax]); if ($ddt[0]==$fid) {$maxzd=$ddt[12];} } while($imax>"0"); if ($maxzd>=1) { if (!ctype_digit($maxzd)) {exit("$back звёзды исчисляются в цифрах. а в файле данных - ерунда!");} $noacsess="



Доступ в раздел ограничен


Для просмотра данного раздела необходимо быть зарегистрированным и иметь рейтинг не менее $maxzd звёзд."; // БЛОК проверяет логин и пароль юзера, считывает кол-во его звёзд и сравнивает с заданным в рубрике if (isset($_COOKIE['wrfcookies'])) { // весь блок работает при наличии КУКИ $text=$_COOKIE['wrfcookies']; $text=replacer($text); $wrfc=explode("|",$text); $wrfname=$wrfc[0]; if (isset($wrfc[1])) {$wrfpass=$wrfc[1];} else {exit("$back попытка взлома - в куки нет пароля. Куда он делся ;-) ?");} // пробегаем файл с юзерами $iu=$usercount; $ok=null; do {$iu--; $du=explode("|",$userlines[$iu]); if (isset($du[1])) { $realname=strtolower($du[0]); if (strtolower($wrfname)===$realname & $wrfpass===$du[1]) {$ok="$i"; if ($du[2]<$maxzd) {exit("$noacsess У Вас всего $du[2] звёзд.


$back


");} }} } while($iu > "0"); } else { exit("$noacsess


$back


"); } // если юзер тот, за кого себя выдаёт то его пускаем, иначе - обломаем if (!isset($ok)) {exit("$noacsess


$back


");} } print"
   $fname -> $frname
"; $addbutton="
Тема Cообщений Автор Обновления
"; // определяем есть ли информация в файле с данными if (is_file("$datadir/topic$fid.dat")) { $msglines=file("$datadir/topic$fid.dat"); if (count($msglines)>0) { if (count($msglines)>$maxtem-1) {$addbutton="
 
"; } //if (is_file) } while($lm < $fm); // выводим СПИСОК СТРАНИЦ $lines=file("$datadir/topic$fid.dat"); $maxi=count($lines)-1; $maxpage=ceil(($maxi+1)/$qq); if ($page>$maxpage) {$page=$maxpage;} print "$addbutton
Количество допустимых тем в рубрике исчерпано.";} // Выводим qqmain сообщений на текущей странице $linesdo=file("$datadir/topic$fid.dat"); $i=count($linesdo); $maxi=count($linesdo)-1; $n="0"; // Исключаем ошибку вызова несуществующей страницы if (!isset($_GET['page'])) {$page=1;} else {$page=$_GET['page']; if (!ctype_digit($page)) {$page=1;} if ($page<1) $page=1;} // БЛОК СОРТИРОВКИ: последние ответы ВВЕРХУ! $p=$i; do {$p--; $dt=explode("|", $linesdo[$p]); $filename="$dt[7].dat"; if (is_file("$datadir/$filename")) {$ftime=filemtime("$datadir/$filename");} else {$ftime="";} $newlines[$p]="$ftime|$dt[7]|$p|"; } while($p > 0); usort($newlines,"prcmp"); // $newlines - массив с данными: ДАТА | ИМЯ_ФАЙЛА_С_ТЕМОЙ | № п/п | // $linesdo - массив со всеми темами выбранной рубрики $p=$i; do {$p--; $dtn=explode("|", $newlines[$p]); $numtp="$dtn[2]"; $lines[$p]="$linesdo[$numtp]"; } while($p > 0); // КОНЕЦ блока сортировки // Показываем QQ ТЕМ $fm=$maxi-$qq*($page-1); if ($fm<"0") {$fm=$qq;} $lm=$fm-$qq; if ($lm<"0") {$lm="-1";} $timetek=time(); do {$dt=explode("|", $lines[$fm]); // нужно для определения темы на VIP-статус $dtn=explode("|", $newlines[$fm]); $timer=$timetek-$dtn[0]; // узнаем сколько прошло времени (в секундах) $fm--; $num=$fm+2; $filename=$dt[7]; if (is_file("$datadir/$filename.dat")) { // если файл с темой существует - то показать тему $msgsize=sizeof(file("$datadir/$filename.dat")); // --------- Выделяем новые сообщения $linetmp=file("$datadir/$filename.dat"); if (sizeof($linetmp)!=0) { $pos=$msgsize-1; $dtt=explode("|", $linetmp[$pos]); $foldicon="folder.gif"; // Если последнее сообщение в форуме произошло раньше посещения - значит раздел форума - новый if (isset($wrfname)) {if (isset($dtt[9])) {if ($dtt[9]>$wrftime2) {$foldicon="foldernew.gif";}}} if (strlen($dt[8])>1 and $dt[8]=="closed") {if ($msgsize<"20") {$foldicon="close.gif";} else {$foldicon="closed.gif";}}} else {$foldicon="foldernew.gif";} // --------- Конец print "
"; if ($timer<0) {echo'VIP ';} print"$dt[3]"; if ($msgsize>$qq) { // выводим список доступных страниц echo'
     Страницы: '; // Считаем и отображаем страницы в темах $maxit=count($linetmp)-1; $maxpaget=ceil(($maxit+1)/$qq); if ($maxpaget<=5) {$f1=$maxpaget;} else {$f1=5;} for($i=1; $i<=$f1; $i++) {print "$i  ";} if ($maxpaget>5) print "... $maxpaget"; echo''; } print"
$msgsize "; $codename=urlencode($dt[0]); if ($dt[1]=="да") {print "$dt[0]
$users";} else {print"$dt[0]
$guest";} if ($msgsize>=2) {$linesdat=file("$datadir/$filename.dat"); $dtdat=explode("|", $linesdat[$msgsize-1]); if (strlen($linesdat[$msgsize-1])>10) {$dt[0]=$dtdat[0]; $dt[1]=$dtdat[1]; $dt[2]=$dtdat[2]; $dt[5]=$dtdat[5]; $dt[6]=$dtdat[6];}} // защита if (strlen...) только если файл есть и имеет верный формат - выводим $dt[6]=substr($dt[6],0,-3); if ($dt[5]===$date) {$dt[5]="сегодня";} print "
  автор: $dt[0]
  дата: $dt[5]
  время: $dt[6]
Страницы:  "; if ($page>=4 and $maxpage>5) print "1 ... "; $f1=$page+2; $f2=$page-2; if ($page<=2) {$f1=5; $f2=1;} if ($page>=$maxpage-1) {$f1=$maxpage; $f2=$page-3;} if ($maxpage<=5) {$f1=$maxpage; $f2=1;} for($i=$f2; $i<=$f1; $i++) {if ($page==$i) {print "$i  ";} else {print "$i  ";}} if ($page<=$maxpage-3 and $maxpage>5) print "... $maxpage"; echo'
'; } else {print"$addbutton";} } else {print"$addbutton";} echo'

'; if (isset($_GET['newtema'])) { if ($cangutema=="0" and !isset($wrfname)) {print"
Администратор запретил создавать гостям темы! Для регистрации пройдите по ссылке: зарегистрироваться


"; } else { echo'
Добавление темы
'; if (!isset($wrfname)) {echo'Имя

';} print "Заголовок темы

Сообщение
"; if (isset($wrfname)) {print "";} else {print " E-mail
";} print "
"; //--А-Н-Т-И-С-П-А-М-- if ($antispam!="0") { // Вывод изображений на экран (все кодированы - робот не пройдёт) if (array_key_exists("image", $_REQUEST)) { $num=$_REQUEST["image"]; for ($i=0; $i<10; $i++) {if (md5($i+$absrand)==$num) {imgwr($st,$i); die();}} } $xkey=""; mt_srand(time()+(double)microtime()*1000000); echo'
Защитный код: '; for ($i=0; $i<$maxkey; $i++) { $snum[$i]=mt_rand(0,9); $psnum=md5($snum[$i]+$absrand); $phpself=$_SERVER["PHP_SELF"]; echo "\n"; $xkey=$xkey.$snum[$i]; } $xkey=md5("$xkey+$absrand"); print" (введите число, указанное на картинке) "; } //-К-О-Н-Е-Ц--А-Н-Т-И-С-П-А-М-А- echo'

'; }} // БЫСТРЫЙ ПЕРЕХОД к теме echo '
Навигация
Быстрый переход по темам  
'; } } //if ($raz!="razdel") } // Если есть Fid, но нету id if (isset($_GET['fid']) and isset($_GET['id'])) {$id=$_GET['id']; $fid=$_GET['fid']; // определяем есть ли информация в файле с данными if (!is_file("$datadir/$id.dat")) {exit("

$back. Извините, но такой темы на форуме не существует.
Скорее всего её удалил администратор.");} $lines=file("$datadir/$id.dat"); $mitogo=count($lines); $i=$mitogo; $maxi=$i-1; if ($mitogo>0) { $tblstyle="row1"; // Считываем СТАТИСТИКУ ВСЕХ УЧАСТНИКОВ if (is_file("$datadir/userstat.dat")) {$ufile="$datadir/userstat.dat"; $ulines=file("$ufile"); $ui=count($ulines)-1;} // Ищем тему в topicХХ.dat - проверяем не закрыта ли тема? и сразу же ищем есть ли в топике $ok=null; $closed="no"; if (is_file("$datadir/topic$fid.dat")) { $msglines=file("$datadir/topic$fid.dat"); $mg=count($msglines); //$closed="no"; do {$mg--; $mt=explode("|",$msglines[$mg]); if ($mt[7]==$id and $mt[8]=="closed") {$closed="yes";} if ($mt[7]==$id) {$ok=1;} // тема есть в указанном разделе? } while($mg > "0");} $realbase="1"; if (is_file("$datadir/mainforum.dat")) {$mainlines=file("$datadir/mainforum.dat");} if (!isset($mainlines)) {$datasize=0;} else {$datasize=sizeof($mainlines);} if ($datasize<=0) {if (is_file("$datadir/copy.dat")) {$realbase="0"; $mainlines=file("$datadir/copy.dat"); $datasize=sizeof($mainlines);}} if ($datasize<=0) {exit("$back. Проблемы с Базой данных - обратитесь к администратору");} $i=count($mainlines); // Уточняем статус по кол-ву ЗВЁЗД юзера. Если меньше допустимых N в этой рубрике - то досвиданья! $maxzd=null; do {$imax--; $ddt=explode("|", $mainlines[$imax]); if ($ddt[0]==$fid) {$maxzd=$ddt[12];} } while($imax>"0"); if ($maxzd>=1) { if (!ctype_digit($maxzd)) {exit("$back звёзды исчисляются в цифрах. а в файле данных - ерунда!");} $noacsess="



Доступ в раздел ограничен


Для просмотра данного раздела необходимо быть зарегитстрированным и иметь рейтинг не менее $maxzd звёзд."; if ($ok!=1) {exit("

$back. Номер раздела указан ошибочно!
В указаном разделе нет такой темы!");} // БЛОК проверяет логин и пароль юзера, считывает кол-во его звёзд и сравнивает с заданным в рубрике if (isset($_COOKIE['wrfcookies'])) { // весь блок работает при наличии КУКИ $text=$_COOKIE['wrfcookies']; $text=replacer($text); $wrfc=explode("|",$text); $wrfname=$wrfc[0]; if (isset($wrfc[1])) {$wrfpass=$wrfc[1];} else {exit("$back попытка взлома - в куки нет пароля. Куда он делся ;-) ?");} // пробегаем файл с юзерами и считываем его в память $iu=$usercount; $ok=null; do {$iu--; $du=explode("|",$userlines[$iu]); if (isset($du[1])) { $realname=strtolower($du[0]); if (strtolower($wrfname)===$realname & $wrfpass===$du[1]) {$ok="$i"; if ($du[2]<$maxzd) {exit("$noacsess У Вас всего $du[2] звёзд.


$back


");} }} } while($iu > "0"); } else { exit("$noacsess

$back


"); } // если юзер тот, за кого себя выдаёт то его пускаем, иначе - обломаем if (!isset($ok)) {exit("$noacsess

$back


");} } // Исключаем ошибку вызова несуществующей страницы if (!isset($_GET['page'])) {$page=1;} else {$page=$_GET['page']; if (!ctype_digit($page)) {$page=1;} if ($page<1) $page=1;} $fm=$qq*($page-1); if ($fm>$maxi) {$fm=$maxi-$qq;} $lm=$fm+$qq; if ($lm>$maxi) {$lm=$maxi+1;} do {$dt=explode("|", $lines[$fm]); $youwr=null; $fm++; $num=$maxi-$fm+2; $status=""; unset($youwr); if (strlen($lines[$fm-1])>5) { // Если строчка потерялась в скрипте (пустая строка) - то просто её НЕ выводим $dt[4]=str_replace("[b]","", $dt[4]); $dt[4]=str_replace("[/b]","", $dt[4]); $dt[4]=str_replace("[RB]","", $dt[4]); $dt[4]=str_replace("[/RB]","", $dt[4]); $dt[4]=str_replace("[Quote]","
Цитата:", $dt[4]); $dt[4]=str_replace("[/Quote]","

", $dt[4]); $dt[4]=str_replace("[Code]","
Код:", $dt[4]); $dt[4]=str_replace("[/Code]","

", $dt[4]); $dt[4]=str_replace(":-))",$s2,$dt[4]); $dt[4]=str_replace(":-)",$s1,$dt[4]); $dt[4]=str_replace(":-P",$s3,$dt[4]); $dt[4]=str_replace("8-)",$s4,$dt[4]); $dt[4]=str_replace(":-((",$s5,$dt[4]); $dt[4]=str_replace(":-(",$s12,$dt[4]); $dt[4]=str_replace(":-O",$s6,$dt[4]); $dt[4]=str_replace(";-)",$s7,$dt[4]); $dt[4]=str_replace(":roll:",$s8,$dt[4]); $dt[4]=str_replace(":rf:",$s9,$dt[4]); $dt[4]=str_replace("8-(",$s10,$dt[4]); $dt[4]=str_replace("`-(",$s11,$dt[4]); $dt[4]=str_replace("&#124;","|",$dt[4]); if ($liteurl==1) { // Если разрешена публикация УРЛов $dt[4]=eregi_replace("((https?|ftp)://[[:alnum:]_=/-]+(\\.[[:alnum:]_=/-]+)*(/[[:alnum:]+&._=/~%]*(\\?[[:alnum:]?+&;_=/%]*)?)?)", "\\1", $dt[4]); $dt[4]=eregi_replace("\\[img\\]\\((https?|ftp)://[[:alnum:]_=/-]+(\\.[[:alnum:]_=/-]+)*(/[[:alnum:]+&._=/%]*(\\?[[:alnum:]?+&_=/%]*)?)?)\\[/img\\]", "\\1", $dt[4]); } else {$dt[4]=eregi_replace("\\[img\\]((https?|ftp)://[[:alnum:]_=/-]+(\\.[[:alnum:]_=/-]+)*(/[[:alnum:]+&._=/~%]*(\\?[[:alnum:]?+&;_=/%]*)?)?)\\[/img\\]", "\\1", $dt[4]);} // считываем в память данные по пользователю if ($dt[1]=="да") { $iu=$usercount; $predup="0"; do {$iu--; $du=explode("|", $userlines[$iu]); if ($du[0]==$dt[0]) { if (isset($du[12])) {$status=$du[13]; $reiting=$du[2]; $youavatar=$du[12]; $email=$du[3]; $icq=$du[7]; $site=$du[8]; $userpn=$iu;} $youwr=eregi_replace("((https?|ftp)://[[:alnum:]_=/-]+(\\.[[:alnum:]_=/-]+)*(/[[:alnum:]+&._=/%]*(\\?[[:alnum:]?+&;_=/%]*)?)?)", "\\1", $du[11]);} } while($iu > "0"); } if ($tblstyle=="row1") {$tblstyle="row2";} else {$tblstyle="row1";} if (!isset($m1)) { print "
   $fname $frname $dt[3]
"; print""; $m1="1"; } print""; } // если строчка потерялась } while($fm < $lm); echo'
Автор Сообщение

"; // Проверяем: это гость? if (!isset($youwr)) {if (strlen($dt[2])>5) {print "$dt[0] ";} else {print"$dt[0] ";} $kuda=$fm-1; print" ".chr(149)."

ЛС

$guest";} else { $codename=urlencode($dt[0]); print "$dt[0] ".chr(149)."

"; if (strlen($status)>2 & $dt[1]=="да" & isset($youwr)) {print"$status";} else {print"$users";} if (isset($reiting)) {if ($reiting>0) {echo'
'; if (is_file("$fskin/star.gif")) {for ($ri=0;$ri<$reiting;$ri++) {print"";} } }} if (isset($youavatar)) { if (is_file("avatars/$youavatar")) {$avpr="$youavatar";} else {$avpr="noavatar.gif";} print "


";} } // isset($youwr) if (isset($youwr) and is_file("$datadir/userstat.dat")) { // ТОЛЬКО участники видят всю репутацию! ;-) if (isset($ulines[$userpn])) { if (strlen($ulines[$userpn])>5) { $ddu=explode("|",$ulines[$userpn]); print"

Статистика:
Тем создано: $ddu[1]
Сообщений: $ddu[2]
Репутация: $ddu[3] ±
Предупреждения: $ddu[4]
"; }}} print "
$dt[4]"; if (isset($youwr)) {if (strlen($youwr)>3) {print "
--------------------------------------------------
$youwr";}} // печатаем подпись участника print"
Сообщение # $fm. Отправлено: $dt[5] - $dt[6]
'; // выводим СПИСОК СТРАНИЦ $maxpage=ceil(($maxi+1)/$qq); if ($page>$maxpage) {$page=$maxpage;} echo'
Страницы:  '; if ($page>=4 and $maxpage>5) print "1 ... "; $f1=$page+2; $f2=$page-2; if ($page<=2) {$f1=5; $f2=1;} if ($page>=$maxpage-1) {$f1=$maxpage; $f2=$page-3;} if ($maxpage<=5) {$f1=$maxpage; $f2=1;} for($i=$f2; $i<=$f1; $i++) {if ($page==$i) {print "$i  ";} else {print "$i  ";}} if ($page<=$maxpage-3 and $maxpage>5) print "... $maxpage"; echo'
'; if ($cangumsg=="0" and !isset($wrfname)) {print"
Администратор запретил отвечать гостям на сообщения! Для регистрации пройдите по ссылке: зарегистрироваться


"; } else { if ($closed!="yes") { print "
Сообщение
Имя "; echo''; if (!isset($wrfname)) {print " E-mail ";} else {print "$wrfname ";} print "
Сообщение

Для вставки имени, кликните на точку рядом с ним.

Смайлики:
$s1 $s2 $s3 $s4 $s5 $s6 $s7 $s8 $s12 $s9 $s10 $s11
Ещё смайлы
"; //-А-Н-Т-И-С-П-А-М- if (!isset($wrfname)) { if ($antispam!="0") { // Вывод изображений на экран (все кодированы - робот не пройдёт) if (array_key_exists("image", $_REQUEST)) { $num=$_REQUEST["image"]; for ($i=0; $i<10; $i++) {if (md5($i+$absrand)==$num) {imgwr($st,$i); die();}} } $xkey=""; mt_srand(time()+(double)microtime()*1000000); echo'
         
Защитный код: '; for ($i=0; $i<$maxkey; $i++) { $snum[$i]=mt_rand(0,9); $psnum=md5($snum[$i]+$absrand); $phpself=$_SERVER["PHP_SELF"]; echo "\n"; $xkey=$xkey.$snum[$i]; } $xkey=md5("$xkey+$absrand"); print" (введите число, указанное на картинке) "; } // if $antispam!="0" } // if !isset($wrfname) //-К-О-Н-Е-Ц--А-Н-Т-И-С-П-А-М-А- echo'
   
'; } else {echo'

Тема закрыта для обсуждения!

';} }} } // else isset(event) ?>
Powered by WR-Forum © 1.8 eXclusive