Файл: public_html/system/function.php
Строк: 191
<?php
$microtime = microtime(1);
# Запускаем сессию
session_start();
# Буферезируем данные
ob_start();
include_once($_SERVER["DOCUMENT_ROOT"]."/system/db.php");
$conn=mysql_connect(DB_HOST, DB_USER, DB_PASS) or die ("Невозможно подключиться к серверу MySQL");
mysql_select_db(DB_NAME, $conn) or die("Невозможно найти базу данных!");
mysql_query('set character_set_results=utf8');
mysql_query('set character_set_client=utf8');
mysql_query('set character_set_connection=utf8');
mb_internal_encoding('UTF-8');
$sett=mysql_fetch_array(mysql_query("SELECT * FROM `setting` WHERE id = '1'"));
if($_COOKIE['adminka'] != NULL){
$_COOKIE['adminka']=mysql_real_escape_string($_COOKIE['adminka']);
if($sett['admin']==$_COOKIE['adminka']){
$admin='1';
}
}
/*Фильтрация*/
function creawap($msg){
$msg = trim($msg);
$msg = mysql_escape_string($msg);
return $msg;
}
/* Функция время и даты. */
function times($var)
{
/* Если время не было задано, берем текущее. */
if ($var == NULL) $var = time();
/* Время и Дата. */
$full_time = date('d.m.Y в H:i', $var);
/* Дата. */
$date = date('d.m.Y', $var);
/* Время. */
$time = date('H:i', $var);
/* Если текущая дата совпадает с заданой. */
if ($date == date('d.m.Y'))
$full_time = date('Сегодня в H:i', $var);
/* Вчерашняя дата. */
if ($date == date('d.m.Y', time()-60*60*24))
$full_time = date('Вчера в H:i', $var);
return $full_time;
}
function getRealIpAddr()
{
if (!empty($_SERVER['HTTP_CLIENT_IP']))
{
$ip=$_SERVER['HTTP_CLIENT_IP'];
}
elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
{
$ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
}
else
{
$ip=$_SERVER['REMOTE_ADDR'];
}
return $ip;
}
// ------------------ Функция подсветки кода -------------------------//
function highlight_code($code) {
if (is_array($code)) $code = $code[1];
$code = strtr($code, array('<'=>'<', '>'=>'>', '&'=>'&', '"'=>'"', '$'=>'$', '%'=>'%', '''=>"'", '\'=>'\', '^'=>'^', '`'=>'`', '|' => '|', '<br />'=>"rn"));
$code = highlight_string($code, true);
$code = strtr($code, array("rn"=>'<br />', '://'=>'://', '$'=>'$', "'"=>''', '%'=>'%', '\'=>'\', '`'=>'`', '^'=>'^', '|'=>'|'));
return '<div class="cod">'.$code.'</div>';
}
function bb($mes){
$mes = stripslashes($mes);
$mes = preg_replace_callback('#[php](.*?)[/php]#i', 'highlight_code', $mes);
$mes = preg_replace('#[cit](.*?)[/cit]#si', '<div id="cont">1</div>', $mes);
$mes = preg_replace('#[b](.*?)[/b]#si', '<span style="font-weight: bold;"> 1 </span>', $mes);
$mes = preg_replace('/[urls?=s?(['"]?)(?:http://)?(.*?)1](.*?)[/url]/', ' <a href="http://$2"> $3 </a> ', $mes);
$mes = preg_replace('#[youtube](.*?)[/youtube]#si', '<iframe width="280" height="210" src="//www.youtube.com/embed/1" frameborder="0"></iframe>', $mes);
$mes = preg_replace('#[br]#si', '<br/>', $mes);
$mes = preg_replace('#[black](.*?)[/black]#si', '<span style="color:#000000;">1</span>', $mes);
$mes = preg_replace('#[i](.*?)[/i]#si', '<i>1</i>', $mes);
$mes = preg_replace('#[u](.*?)[/u]#si', '<u>1</u>', $mes);
$mes = preg_replace('#[s](.*?)[/s]#si', '<s>1</s>', $mes);
$mes = preg_replace('#[red](.*?)[/red]#si', '<span style="color: red">1</span>', $mes);
$mes = preg_replace('#[green](.*?)[/green]#si', '<span style="color: green">1</span>', $mes);
$mes = preg_replace('#[blue](.*?)[/blue]#si', '<span style="color: blue">1</span>', $mes);
$mes = preg_replace("~(^|s|-|:| |()(http(s?)://|(www.))((S{25})(S{5,})(S{15})([^<s.,>)];'"!?]))~i", "\1<a href="http\3://\4\5">\4\6...\8\9</a>", $mes);
$mes = preg_replace("~(^|s|-|:|(| |xAB)(http(s?)://|(www.))((S+)([^<s.,>)];'"!?]))~i", "\1 <b><a href="http\3://\4\5">\4\5</a></b>", $mes);
return $mes;
}
function smile($msg) {
global $HOME;
$msg = trim($msg);
$s = mysql_query("SELECT * FROM `smile` ORDER BY `id` DESC");
while($smile = mysql_fetch_array($s)) {
$msg = str_replace($smile['name'],' <img src="'.$HOME.'/files/smile/'.$smile['icon'].'" alt="'.$smile['name'].'"/> ',$msg);
}
return $msg;
}
function page($k_page=1) {
$page = 1;
$page = $page;
$k_page = $k_page;
if(isset($_GET['selection'])) {
if ($_GET['selection']=='top')
$page = intval($k_page);
elseif(is_numeric($_GET['selection']))
$page = intval($_GET['selection']);
}
if ($page<1)$page=1;
if ($page>$k_page)$page=$k_page;
return $page;
}
// Определяем кол-во страниц
function k_page($k_post = 0,$k_p_str = 10) {
if ($k_post != 0) {
$v_pages = ceil($k_post/$k_p_str);
return $v_pages;
}
else return 1;
}
function str($link='?',$k_page=1,$page=1){
if ($page<1)$page=1;
$page = creawap($page);
$k_page = creawap($k_page);
echo '<div class="creawap">';
if ($page>1)echo '<a href="'.$link.'selection='.($page-1).'"><< Назад</a> ';
else echo "<< Назад ";
echo " | ";
if ($page<$k_page)echo ' <a href="'.$link.'selection='.($page+1).'" >Вперед >></a>';
else echo " Вперед >>";
echo '<br />';
if ($page != 1)
echo '<a href="'.$link.'selection=1" >1</a>';
else echo '<b>1</b>';
for ($ot=-3; $ot<=3; $ot++){
if ($page+$ot>1 && $page+$ot<$k_page){
if ($ot==-3 && $page+$ot>2)echo " ..";
if ($ot!=0)echo '|<a href="'.$link.'selection='.($page+$ot).'" >'.($page+$ot).'</a>';
else echo '|<b>'.($page+$ot).'</b>';
if ($ot==3 && $page+$ot<$k_page-1)echo "|..";}}
if ($page!=$k_page)echo '|<a href="'.$link.'selection=top" >'.$k_page.'</a>';
elseif ($k_page>1)echo '|<b>'.$k_page.'</b>';
echo '</div>';
}
function output($msg){
$msg = htmlspecialchars($msg);
$msg = bb($msg);
$msg = smile($msg);
return $msg;
}
# Вывод ошибок
function error($error)
{
echo '<div class="error"><img src="/style/images/error.png" alt="" /> '.$error.'</div>';
}
# Вывод ошибок
function message($message)
{
echo '<div class="success"> <img src="/style/images/message.png" alt="" /> '.$message.'</div>';
}
# обробатываем время
function data($time)
{
$month = array('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec');
$month_rus = array('Января','Февраля','Марта','Апреля','Мая','Июня','Июля','Августа','Сентября','Октября','Ноября','Декабря');
$timep = date("d.m.y в H:i", $time);
$timep = str_replace($month,$month_rus,$timep);
return $timep;
}
# Подключаем функции
# фильтрация текста
function esc($text)
{
# Удаляем пробел из начала и конца строки
$text = trim($text);
# Преобразуем специальные символы в HTML сущности
$text = htmlspecialchars($text);
# Экранируем спец символы
$text = mysql_real_escape_string($text);
# Возвращаем отфильтровананный текст
return $text;
}
# фильтрация текста
function xss($text)
{
# Удаляем пробел из начала и конца строки
//$text = trim($text);//
# Преобразуем специальные символы в HTML сущности
$text = htmlspecialchars($text);
# Возвращаем отфильтровананный текст
return $text;
}
function navigation($total,$page,$url)
{
if($page-1 > 0)
{
$left='<a href="'.$url.''.($page-1).'"><-Пред.</a>';
}
else
{
$left = '<-Пред.';
}
if($page+1 > 0 AND $page < $total)
{
$right = '<a href="'.$url.''.($page+1).'">След.-></a>';
}
else
{
$right = 'След.->';
}
if($page-3 > 0)
{
$first=' <a href="'.$url.'"><span class="pagination_button">1</span></a>..';
}
if($page-2 > 0)
{
$page2left=' <a style="text-decoration: none;color:#333333;" href="'.$url.''.($page-2).'"><span class="pagination_button">'.($page-2).'</span></a> ';
}
if($page-1 > 0)
{
$page1left=' <a style="text-decoration: none;color:#333333;" href="'.$url.''.($page-1).'"><span class="pagination_button">'.($page-1).'</span></a> ';
}
if($page+1 <= $total)
{
$page1right=' <a style="text-decoration: none;color:#333333;" href="'.$url.''.($page+1).'"><span class="pagination_button">'.($page + 1).'</span></a> ';
}
if($page+2 <= $total)
{
$page2right=' <a style="text-decoration: none;color:#333333;" href="'.$url.''.($page+2).'"><span class="pagination_button">'.($page + 2).'</span></a> ';
}
if($page+3 <= $total)
{
$page3right='..<a style="text-decoration: none;color:#333333;" href="'.$url.''.($total).'"><span class="pagination_button">'.($total).'</span></a>';
}
//return '<div class="text"><center>'.$first.$page2left.$page1left.'<b><span class="pages">'.$page.'</span></b>'.$page1right.$page2right.$page3right.'</center></div>';
return '<div class="pagination"><center>'.$first.$page2left.$page1left.'<b><span class="pagination_select">'.$page.'</span></b>'.$page1right.$page2right.$page3right.'</center></div>';
}
# фильтрация цифр
function num($num)
{
# Вырезаем пробелы
$num = str_replace(' ','',$num);
# Проверям число
$num = abs($num);
# Возвращаем отфильтрованное число
return $num;
}
?>