Вход Регистрация
Файл: act.php
Строк: 200
<?
include 'inc/config.php';
include 
'inc/func.php';
include 
'inc/conn.php';
include 
'inc/header.php';
include 
'inc/zapros.php';
include 
'inc/ban.php';

If (!isset(
$_GET['mode']) || !ereg("^[a-z0-9_-]{1,15}$",$_GET['mode'])) $mode=false; else $mode=$_GET['mode'];

switch (
$mode){

case 
'ads':
mysql_query("update `".prefix."users` set `mesto`='Добавляет коммент к акции', `online`='".time()."' where `id` = '".$_USER['id']."';");

echo 
'<div class="copy"><b>Добавление комментария</b></div>';
$id intval($_GET['id']);
If (!
$_enter){
echo 
'<div class="menu1"><div class="menu3">
Для того чтобы писать сообщения, вы должны войти в систему<br/>-----<br/><a href="index.php?mode=login">Вход</a>
</div></div>'
;
break;
}
If (!isset(
$_POST['text'])) {
echo 
'<div class="menu1"><div class="menu3">
Текст:<br/>
<form method="post" action="'
.$_zapros.'mode=ads&id='.$id.'">
<textarea name="text" cols="19" rows="5" maxlength="'
.lenght_text.'" value=""/></textarea><br/>
</div></div>
<div class="menu1"><div class="menu3">
<input value="Написать" type="submit"/></form>
</div></div>'
;
echo 
'<div class="menu1"><div class="menu3">
* <a href="infa.php?mode=bb">BB-коды</a><br/>
</div></div>
<div class="menu1"><div class="menu3">
* <a href="infa.php?mode=sm">Смайлы</a><br/>
</div></div>'
;
break;
}
$text=htmlspecialchars($_POST['text']);
$text=trim($text);
$strlen=strlen($text);

If (
$strlen<min_text || $strlen>lenght_text){
echo 
'Комментарий слишком длинный или короткий';
break;
}
$filte['/(http://)?([[:alnum:]]|_){3,30}(s+)?(.|,)(s+)?([[:alnum:]]|){3,30}(s)?(.|,)?(s)?([[:alnum:]]){2,4}/i']=adress;if (count($filte))$textpreg_replace(array_keys($filte), array_values($filte), $text);
$result=mysql_query("INSERT into `actia_comm`
(`login`,`text`,`date`,`nid`)
values
('"
.$_USER['login']."','".mysql_real_escape_string($text)."','".time()."','".$id."')
"
);
If (!
$result){
echo 
'Ошибка запроса к бд...';
break;
}
mysql_query("UPDATE `".prefix."users` SET `comm`=`comm`+'1' WHERE `login`='".$_USER['login']."'") or die('err');
echo 
'<div class="menu1"><div class="menu3">
Комментарий добавлен!
</div></div>'
;
echo 
'<div class="menu1"><div class="menu3"><a href="act.php'.$_zapros.'mode=comm&id='.$id.'">Вернуться</a></div></div>';

break;

case 
'comm':

mysql_query("update `".prefix."users` set `mesto`='Читает комменты акции', `online`='".time()."' where `id` = '".$_USER['id']."';");

$id intval($_GET['id']);

// Выбираем из БД количество пользователей - это нужно для 
// построения постраничной навигации
$query "SELECT COUNT(*) FROM `actia_comm` where `nid`='$id'";
$res mysql_query$query );
$total mysql_result$res0);
echo 
'<div class="copy"><b>Комментарии</b></div>';

if ( isset(
$_GET['page']) )
{
    
$page = (int)$_GET['page'];
    if ( 
$page $page 1;
}
else
{
    
$page 1;
}

// Число страниц списка пользователей (постраничная навигация)
$cnt_pages ceil$total MESS_ON_PAGE );
if ( 
$page $cnt_pages $page $cnt_pages;
if ( 
$cnt_pages == $page '1';
// Начальная позиция (постраничная навигация)
$start = ( $page ) * MESS_ON_PAGE;


echo 
'<div class="menu1"><div class="menu3"><a href="'.$_zapros.'mode=ads&id='.$id.'">Добавить</a></div></div>
'
;



$result=mysql_query("SELECT * FROM `actia_comm` where `nid`='$id' ORDER by `date` desc LIMIT ".$start.", ".MESS_ON_PAGE);
If (!
$result){
echo 
'Ошибка запроса к бд...';
break;
}

$num=mysql_num_rows($result);
If (
$num>0){
If (
$num<=MESS_ON_PAGE$read=$num; else {
$read=MESS_ON_PAGE;
$next=true;
}
for (
$i=0;$i<$read;$i++){

## Зёбра =)
if(is_integer($i/2))
{echo 
'<div class="menu1"><div class="menu3">';} 
else
{echo 
'<div class="menu1"><div class="menu3">';}
##

$login=mysql_result($result,$i,'login');
 
echo 
'<a href="info.php'.$_zapros.'user='.$login.'"><b>'.$login.'</b></a>   '.date("[ H:i | d.m.Y ]",mysql_result($result,$i,'date'));

If (
$_USER['admin'] || $_USER['moder']){
$cid=mysql_result($result,$i,'id');
echo 
'<a href="act.php'.$_zapros.'id='.$id.'&cid='.$cid.'&mode=delete"><b>[D]</b></a>';
}

$text=mysql_result($result,$i,'text');

echo 
'<br/>'.bbcode(smiles($text)).'<br/>';
##
echo '</div></div>';
}
} else echo 
'<div class="menu1"><div class="menu3">
Без комментариев! =)<br />
</div></div>'
;

// Строим постраничную навигацию
if ( $cnt_pages )
{ If ( 
$page >= $cnt_pages ){
        echo 
'<a href='.$_zapros.'mode=comm&id='.$id.'&page='.($page-1).'><< Пред</a>'; }


        elseif ( 
$page >= ){
   echo 
'<a href='.$_zapros.'mode=comm&id='.$id.'&page='.($page-1).'><< Пред</a> | <a href='.$_zapros.'mode=comm&id='.$id.'&page='.($page+1).'>След >></a>'; }
   
        else
    
    {echo 
'<a href='.$_zapros.'mode=comm&id='.$id.'&page='.($page+1).'>След>></a>';}
    
    
// Проверяем нужна ли стрелка "В начало"
    
if ( $page )
    
      
$startpage '<a class="nav" href="'.$_zapros.'mode=comm&id='.$id.'&page=1">1</a>,<a href="'.$_zapros.'mode=comm&id='.$id.'&page=2">2</a>...';
    
       
    elseif ( 
$page )
      
$startpage '<a class="nav" href="'.$_zapros.'mode=comm&id='.$id.'&page=1">1</a>,';
        
        else
        
$startpage '';
                
       
    
// Проверяем нужна ли стрелка "В конец"
    
    
      
if ( $page < ($cnt_pages 2) )
        
$endpage '...<a class="nav" href="'.$_zapros.'mode=comm&page='.($cnt_pages-1).'">'.($cnt_pages-1).'</a>,<a class="nav" href="'.$_zapros.'mode=comm&id='.$id.'&page='.$cnt_pages.'">'.$cnt_pages.'</a>';
    
    elseif ( 
$page < ($cnt_pages 1) )
        
$endpage ',<a class="nav" href="'.$_zapros.'mode=comm&id='.$id.'&page='.$cnt_pages.'">'.$cnt_pages.'</a>';
        
    else
        
$endpage '';
 
    
// Находим две ближайшие страницы с обоих краев, если они есть
    
if ( $page )
        
$page2left '<a class="nav" href="'.$_zapros.'mode=comm&id='.$id.'&page='.($page 2).'">'.($page 2).'</a>,';
    else
        
$page2left '';
    if ( 
$page )
        
$page1left '<a class="nav" href="'.$_zapros.'mode=comm&id='.$id.'&page='.($page 1).'">'.($page 1).'</a>,';
    else
        
$page1left '';
    if ( 
$page <= $cnt_pages )
        
$page2right ',<a class="nav" href="'.$_zapros.'mode=comm&id='.$id.'&page='.($page 2).'">'.($page 2).'</a>';
    else
        
$page2right '';
    if ( 
$page <= $cnt_pages )
        
$page1right ',<a class="nav" href="'.$_zapros.'mode=comm&id='.$id.'&page='.($page 1).'">'.($page 1).'</a>';
    else
        
$page1right '';
 
    
// Выводим меню
    
echo '</br>';
    echo 
$startpage.$page1left.'<strong><a class="navi">'.$page.'</a></strong>'.$page1right.$endpage."n";
    

    if ( 
$cnt_pages )
    {    

        echo 
'
            
<form action="act.php'
.$_zapros.'mode=comm" method="get">'
foreach(
$_GET as $k=>$v){ 
if(
$k == "page") continue;
echo 
"<input type=hidden name=$k value=$v>"

echo 
'<br/>Стр.<input type="text" name="page" size="2" value="'.$page.'"><input type="submit" value=">>"/></form>
'
;
    }
    else
    {
        echo
'';
    }
}

$res=mysql_result(mysql_query("SELECT COUNT(*) FROM `actia_comm` where `nid`='$id'"),0);
echo 
'<div class="menu1"><div class="menu3">Комментариев: '.$res.'</div>';
break;

case 
'delete':
$cid=intval($_GET['cid']);
$aid=intval($_GET['id']);

If (
$_USER['admin'] || $_USER['moder']){
mysql_query("DELETE FROM `actia_comm` WHERE `id`='$cid'");}
Header('Location: act.php?mode=comm&id='.$aid);
break;

case 
false:
default:
mysql_query("update `".prefix."users` set `mesto`='В акциях', `online`='".time()."' where `id` = '".$_USER['id']."';");
// Выбираем из БД количество пользователей - это нужно для 
// построения постраничной навигации
$query "SELECT COUNT(*) FROM `".prefix."actia`";
$res mysql_query$query );
$total mysql_result$res0);
echo 
'<div class="copy"><b>Акции</b></div>';

if ( isset(
$_GET['page']) )
{
    
$page = (int)$_GET['page'];
    if ( 
$page $page 1;
}
else
{
    
$page 1;
}

// Число страниц списка пользователей (постраничная навигация)
$cnt_pages ceil$total MESS_ON_PAGE );
if ( 
$page $cnt_pages $page $cnt_pages;
// Начальная позиция (постраничная навигация)
$start = ( $page ) * MESS_ON_PAGE;

$result=mysql_query("SELECT * FROM `".prefix."actia` ORDER by `ts` desc LIMIT ".$start.", ".MESS_ON_PAGE);
If (!
$result){
echo 
'Ошибка запроса к бд...';
break;
}

$num=mysql_num_rows($result);
If (
$num>0){
If (
$num<=MESS_ON_PAGE$read=$num; else {
$read=MESS_ON_PAGE;
$next=true;
}
for (
$i=0;$i<$read;$i++){

## Зёбра =)
if(is_integer($i/2))
{echo 
'<div class="menu1"><div class="menu3">';} 
else
{echo 
'<div class="menu1"><div class="menu3">';}
##

##
echo date("<b>d.m.Y</b>",mysql_result($result,$i,'ts'));
$login=mysql_result($result,$i,'who');

echo 
' ['.mysql_result($result,$i,'nazv').']<br/>';
echo 
'Разместил: <a href="info.php'.$_zapros.'user='.$login.'"><b>'.($login).'</b></a><br/>';

$text=mysql_result($result,$i,'text');

echo 
''.bbcode(smiles($text)).'<br/>';
$d=mysql_result($result,$i,'id');
$res=mysql_result(mysql_query("SELECT COUNT(*) FROM `actia_comm` where `nid`='$d'"),0);
echo 
'<a href="'.$_zapros.'mode=comm&id='.mysql_result($result,$i,'id').'">Комментарии</a> ['.$res.']<br/>';
##
echo '</div></div>';
//echo '-----<br/>';
##
}
}
else echo 
'<div class="menu1"><div class="menu3">
Акций пока нет =(<br />
</div></div>'
;

// Строим постраничную навигацию
if ( $cnt_pages )
{ If ( 
$page >= $cnt_pages ){
        echo 
'<a href='.$_zapros.'page='.($page-1).'><< Пред</a>'; }


        elseif ( 
$page >= ){
   echo 
'<a href='.$_zapros.'page='.($page-1).'><< Пред</a> | <a href='.$_zapros.'page='.($page+1).'>След >></a>'; }
   
        else
    
    {echo 
'<a href='.$_zapros.'page='.($page+1).'>След>></a>';}
    
    
// Проверяем нужна ли стрелка "В начало"
    
if ( $page )
    
      
$startpage '<a class="nav" href="'.$_zapros.'page=1">1</a>,<a href="'.$_zapros.'page=2">2</a>...';
    
       
    elseif ( 
$page )
      
$startpage '<a class="nav" href="'.$_zapros.'page=1">1</a>,';
        
        else
        
$startpage '';
                
       
    
// Проверяем нужна ли стрелка "В конец"
    
    
      
if ( $page < ($cnt_pages 2) )
        
$endpage '...<a class="nav" href="'.$_zapros.'page='.($cnt_pages-1).'">'.($cnt_pages-1).'</a>,<a class="nav" href="'.$_zapros.'page='.$cnt_pages.'">'.$cnt_pages.'</a>';
    
    elseif ( 
$page < ($cnt_pages 1) )
        
$endpage ',<a class="nav" href="'.$_zapros.'page='.$cnt_pages.'">'.$cnt_pages.'</a>';
        
    else
        
$endpage '';
 
    
// Находим две ближайшие страницы с обоих краев, если они есть
    
if ( $page )
        
$page2left '<a class="nav" href="'.$_zapros.'page='.($page 2).'">'.($page 2).'</a>,';
    else
        
$page2left '';
    if ( 
$page )
        
$page1left '<a class="nav" href="'.$_zapros.'page='.($page 1).'">'.($page 1).'</a>,';
    else
        
$page1left '';
    if ( 
$page <= $cnt_pages )
        
$page2right ',<a class="nav" href="'.$_zapros.'page='.($page 2).'">'.($page 2).'</a>';
    else
        
$page2right '';
    if ( 
$page <= $cnt_pages )
        
$page1right ',<a class="nav" href="'.$_zapros.'page='.($page 1).'">'.($page 1).'</a>';
    else
        
$page1right '';
 
    
// Выводим меню
    
echo '</br>';
    echo 
$startpage.$page1left.'<strong><a class="navi">'.$page.'</a></strong>'.$page1right.$endpage."n";
    

    if ( 
$cnt_pages )
    {    
        
$select_list '
            
<form action="act.php" method="get"><br/>Стр.<input type="text" name="page" size="2" value="'
.$page.'"><input type="submit" value=">>"/></form>
'
;
    }
    else
    {
        
$select_list '';
    }

echo 
$select_list;


}
break;
}
include 
'inc/foot.php';
?>
Онлайн: 3
Реклама