<?php
session_start();
$data='data.txt';
//Если data.txt не существует, создаём новый
if (!file_exists($data)) file_put_contents($data, NULL);
$arr=file($data);
$all=sizeof($arr);
//Колл-во сообщений на странице
$mess_page=10;
//Определяем № текущей страницы
$page=(isset($_GET['page']))?(int)$_GET['page']:1;
//Определяем число страниц
$p_numb=ceil($all/$mess_page);
//Определяем начальную позицию
$start=$page*$mess_page-$mess_page;
//Проверяем номер страницы
if ($page>$p_numb||$page<1): $page=1; $start=0;
endif;
if (isset($_SESSION['log'])){ //Формируем переменные для автозаполнения полей
list($log_name,$log_mail)=$_SESSION['log'];
} else {
$log_name='';
$log_mail='';
}
if (isset($_SESSION['err'])){ //Формируем переменные с ошибками
list($err_name,$err_mail,$err_txt)=$_SESSION['err'];
} else {
$err_name='';
$err_mail='';
$err_txt='';
}
unset($_SESSION['err']);
if (!empty($arr)){ //Заносим в массив посты в обратном порядке
for ($i=$all-$start-1; $i>=$all-$start-$mess_page; $i--){
if($arr[$i]==NULL) continue;
$array[]=$arr[$i];
}
foreach ($array as $value){ //Форматируем данные для передачи в шаблон
$val=explode('|',$value);
$view.='<div class="post">';
if (!empty($val[0])): $view.='<a href="mailto:'.$val[0].'"><b>'.$val[1].'</b></a><br />';
else: $view.='<b>'.$val[1].'</b><br />';
endif;
$view.='<span class="small">'.$val[2].'</span><br />';
$view.=$val[3].'<br />';
$view.='<span class="small">'.$val[4].'</span></div>';
}
//Постраничная навигация
$view_page.='<p>';
$pr='';
for ($i=1; $i<=$p_numb; $i++){
$view_page.=$pr=(($i==1||$i==$p_numb||abs($i-$page)<2)?($i==$page?'['.$i.']':' <a href="'
.$_SERVER['SCRIPT_NAME'].'?page='.$i.'">'.$i.'</a> ')($pr==' ... '||$pr=='')?'':' ... '));
}
$view_page.='</p>';
} else {
$view='<div class="post"><p>Записей нет!</p></div>';
}
$uri='?';
if ($_SERVER['QUERY_STRING']){ //Фильтруем адресную строку
foreach($_GET as $key => $value):
if($key !='act') $uri.=$key.'='.$value.'&';
endforeach;
}
if ($_GET['act']=='smiles'): //Блок смайлов
$smile='<img src="img/1.gif" align="absmiddle" /> :-) ';
$smile.='<img src="img/2.gif" align="absmiddle" /> :-( ';
$smile.='<img src="img/3.gif" align="absmiddle" /> :-/ ';
$smile.='<img src="img/4.gif" align="absmiddle" /> :-O ';
$smile.='<img src="img/5.gif" align="absmiddle" /> ;-) ';
$smile.='<img src="img/6.gif" align="absmiddle" /> 8-) ';
$smile.='<img src="img/7.gif" align="absmiddle" /> :-D <br />';
$smile.='<a href="'.$_SERVER['HTTP_REFERER'].'">«««</a><br />';
else: $smile='<a href="'.$uri.'act=smiles"><img src="img/smiles.gif" alt="Смайлы" /></a><br />';
endif;
/////////////////////////////////////////////////////////////////////////////////////////////////////////
function replace($msg){
//Замена служебных символов
$arg1 = array("\n",'|','^');
$arg2 = array('<br />',' ',' ');
$msg = str_replace($arg1,$arg2,$msg);
//Блок смайлов
$arg3 = array(':-)',':-(',':-/',':-O',';-)','8-)',':-D');
$arg4 = array('<img src="img/1.gif" align="absmiddle" />',
'<img src="img/2.gif" align="absmiddle" />',
'<img src="img/3.gif" align="absmiddle" />',
'<img src="img/4.gif" align="absmiddle" />',
'<img src="img/5.gif" align="absmiddle" />',
'<img src="img/6.gif" align="absmiddle" />',
'<img src="img/7.gif" align="absmiddle" />');
$msg = str_replace($arg3,$arg4,$msg);
//Антимат
$arg5 = array('хуй','пизда','пидор','пидар','пидр','вафел','гандон','сука','блядь','выебу',
'похер','блять','шмара','ебал','отсоси','ебу','ебись','отъеб','гнида','долбоеб',
'долбоёб','хуесос','охуел','х у й','п и з д а','п и д о р','п и д а р','п и д р',
'в а ф е л','г а н д о н','с у к а','б л я д ь','в ы е б у','п о х е р','б л я т ь',
'ш м а р а','е б а л','о т с о с и','е б у','е б и с ь','о т ъ е б','г н и д а',
'д о л б о е б','д о л б о ё б','х у е с о с','о х у е л');
$arg6 = '<img src="img/cenzura.gif" align="absmiddle" alt="***" />';
$msg = str_ireplace($arg5,$arg6,$msg);
//ВВ-код
$arg7 = array('','','','','','','','');
$arg8 = array('<b>','</b>','<i>','</i>','<u>','</u>','<s>','</s>');
$msg = str_replace($arg7,$arg8,$msg);
return $msg;
}
?>