Вход Регистрация
Файл: public_html/forum/new_temes.php
Строк: 127
<?php
session_start
();
include(
"../sistem/cfg.dat");
include(
"../sistem/global.dat");
include(
"../temes/$teme/verh.dat");
if(
$status=="gost")
{
   echo
'<div class="razd"><B>Форум</B></div>';
   echo
'гостям создавать темы нельзя<br><a href="index.php?">В форум</a><br>';
}
if(
$status=="uzer" || $status=="moder" || $status=="admin")
{
   echo
'<div class="foot"><B>Форум</B></div>';
   
   if(isset(
$_POST['str_razdela'])){$str_razdela $_POST['str_razdela'];}
   if(isset(
$_GET['str_razdela'])){$str_razdela $_GET['str_razdela'];}
   
$str_razdela=htmlspecialchars($str_razdela);
   
   if (
eregi("[^0-9]" $str_razdela )){ echo'запрещённые символы<br>'; }else
   {
      
$str file("razd.dat");//////////////////получаем параметры раздела
      
$arr=explode("<||>",$str[$str_razdela]);//получаем параметры раздела
      
      
if (file_exists("data/r-$arr[1].dat"))
      {
         echo
'<div class="sob"><B>'.$arr[0].'</B></div>';
         
         if(isset(
$_POST['txtsob'])){$txtsob $_POST['txtsob'];}
         if(isset(
$_POST['nazv_temes'])){$nazv_temes $_POST['nazv_temes'];}
         
         if(
$txtsob && $nazv_temes)
         {
            if(
"1000" >= strlen($txtsob))
            {
               
//чистим от лишнего и добавляем переносы строк
               
$nazv_temes=htmlspecialchars($nazv_temes);
               
$txtsob=htmlspecialchars($txtsob);
               
$nazv_temes =str_replace("r","",$nazv_temes);
               
$nazv_temes =str_replace("n","",$nazv_temes);
               
$txtsob =str_replace("r","",$txtsob);
               
$txtsob =str_replace("n","<br>",$txtsob);
               
//вставляем смайлы
               
include("../sistem/smiles.dat");
               
//вставляем рег. выр. для активации ссылок
               
$txtsob=eregi_replace("((https?|ftp)://[[:alnum:]_=/-]+(\.[[:alnum:]_=/-]+)*(/[[:alnum:]+&amp;._=/~%#]*(\?[[:alnum:]?+&amp;_=/%#]*)?)?)","<a href='\1'>\1</a>"$txtsob);
               
$txtsob=stripslashes($txtsob);//функция убираний слешей, обрабатывать только в последнюю очередь
               
$login =str_replace("r","",$login);
               
$login =str_replace("n","",$login);
               
               
//увеличиваем счетчик тем на 1
               
$nomer_temes=file("count_temes.dat");
               ++
$nomer_temes[0];
               
               
//создаем файл хранилище постов
               
if(file_exists("data/t-$nomer_temes[0].dat"))//проверяем номер темы , если темы нет, то создаем новую
               
{
                  echo
'Произошла системная ошибка, связанная с номерацией новых тем. Сообщите пожалуйста администрации об этой ошибке! ';
               }else
               {
                  
//если всё правильно, то сохраняем счетчик
                  
$file_count_temes fopen("count_temes.dat""w+");
                  
fputs($file_count_temes,$nomer_temes[0]);
                  
fclose($file_count_temes);
                  
                  
//формируем строки
                  
$time_post htmlspecialchars(date("d.m.y H:i:s"));
                  if(
$status=="uzer")
                  {
                     
                     
$kod1='activ<||>'.$time_post.'<||>'.$login.'<||>'.$nazv_temes.'<||>'.$nomer_temes[0].'<||>1<||>';//в хранилище тем
                     
$kod2=''.$login.'<||>'.$time_post.'<||>'.$txtsob.'<||>';//В хранилище постов
                     
                  
}
                  
                  if(
$status=="moder" || $status=="admin")
                  {
                     if(isset(
$_POST['status_teme1'])){$status_teme1 $_POST['status_teme1'];}
                     if(isset(
$_POST['status_teme2'])){$status_teme2 $_POST['status_teme2'];}
                     
                     
$st="activ";//статус темы при ошибки
                     
                     
if($status_teme1=="otcrep" && $status_teme2=="activ"){ $st="activ"; }//статус темы
                     
                     
if($status_teme1=="zacrep" && $status_teme2=="activ"){ $st="zacrep"; }//статус темы
                     
                     
if($status_teme1=="otcrep" && $status_teme2=="clos"){ $st="clos"; }//статус темы
                     
                     
if($status_teme1=="zacrep" && $status_teme2=="clos"){ $st="zacrep_clos"; }//статус темы
                     
                     
$kod1=''.$st.'<||>'.$time_post.'<||>'.$login.'<||>'.$nazv_temes.'<||>'.$nomer_temes[0].'<||>1<||>';//в хранилище тем
                     
$kod2=''.$login.'<||>'.$time_post.'<||>'.$txtsob.'<||>';//В хранилище постов
                     
                  
}
                  
                  
//дописываем новую тему в файл хранилище названий тем
                  
$file_temes_data fopen("data/r-$arr[1].dat""a+");
                  
fputs($file_temes_data$kod1."rn");
                  
fclose($file_temes_data);
                  
                  
//создаём файл хранилище постов и записываем первый пост
                  
$file_post_data fopen("data/t-$nomer_temes[0].dat""w+");//создаём файл хранилище постов и записываем первый пост
                  
fputs($file_post_data,$kod2."rn");
                  
fclose($file_post_data);
                  
                  
                  
//увеличиваем счет постов у юзера
                  
$pass_real htmlspecialchars($pass_real);
                  ++
$postov;
                  
$kod=''.$pass_real.'<||>'.$status.'<||>'.$postov.'<||>'.$golos_za.'<||>'.$golos_protiv.'<||>'.$prichina_bana.'<||>'.$time_reg.'<||>'.$den_plusa.'<||>'.$real_name.'<||>'.$real_name2.'<||>'.$gorod.'<||>'.$a_baut.'<||>'.$vozrost.'<||>'.$pol.'<||>'.$ip.'<||>'.$posled_time_pribivanij.'<||>'.$posled_time.'<||>';
                  
$file_login_data fopen("$koren_dir/uzer_dat/$login.dat""w+");
                  
fputs($file_login_data,$kod);
                  
fclose($file_login_data);
                  
//закончили увеличиваем счет постов у юзера
                  
                  
                  //начинаем увеличивать счётчик постов в форуме
                  
$nomer_post=file("count_post.dat");
                  ++
$nomer_post[0];
                  
$file_count_post fopen("count_post.dat""w+");//если всё правильно, то сохраняем счетчик
                  
fputs($file_count_post,$nomer_post[0]);//если всё правильно, то сохраняем счетчик
                  
fclose($file_count_post);//если всё правильно, то сохраняем счетчик
                  //закончили увеличивать счётчик постов в форуме
                  
                  
                  
                  
                  
                  
                  
                  
                  //изменяем счётчики на главной форума
                  
++$arr[2];
                  ++
$arr[3];
                  
$str_new''.$arr[0].'<||>'.$arr[1].'<||>'.$arr[2].'<||>'.$arr[3].'<||>
'
;
                  
$str[$str_razdela] = str_replace($str[$str_razdela],$str_new,$str[$str_razdela]);
                  
$nom count($str);
                  
$i='-1';
                  
$var=$nom;
                  
$filelinck fopen("razd.dat""w+");
                  while(++
$i <= $var)
                  {
                     
fputs($filelinck,$str[$i]);
                  }
                  
fclose($filelinck);
                  
                  
                  
                  
                  
                  
                  
                  
                  
                  echo
'<div class="gmenu"><font color="red">Новая тема успешно создана <a href="temes.php?str_razdela='.$str_razdela.'">Далее</a><br></font></a></div>';
               }
            }else{ echo
'Слишком длинное сообщение <a href="temes.php?str_razdela='.$str_razdela.'">Назад</a><br>'; }
      }else
      {
           echo
'<div class="foot"><b>Заполните все поля</b><br></div>';
         echo
'<form name="forma" action="new_temes.php" method="post">
<INPUT TYPE="hidden" NAME="str_razdela" VALUE="'
.$str_razdela.'">
<div class="gmenu"><font color="red">Название новой темы<br></font></a></div>
<input type="text" name="nazv_temes" value="" size="20" maxlength="100"><br>
<div class="gmenu"><font color="red">Текст первого поста<br></font></a></div>
<TEXTAREA NAME="txtsob" ROWS=5 COLS=25></TEXTAREA><br>'
;
         if(
$status=="moder" || $status=="admin")
         {
            echo
'<div class="gmenu"><font color="red">Парамет темы 1<br></font></a></div>';
            echo
'<SELECT NAME="status_teme1">';
            echo
'<OPTION VALUE="otcrep" selected>Откреплена';
            echo
'<OPTION VALUE="zacrep">Закреплена';
            echo
'</SELECT><br><br>';
            
            echo
'<div class="gmenu"><font color="red">Парамет темы 2<br></font></a></div>';
            echo
'<SELECT NAME="status_teme2">';
            echo
'<OPTION VALUE="activ" selected>Открыта';
            echo
'<OPTION VALUE="clos">Закрыта';
            echo
'</SELECT><br><br>';
         }
         echo
'<input type="submit" name="" value="Добавить"><br></form>';
         echo
'<div class="gmenu"><font color="red">&#187;<a href="../page/smiles.php?act=1">Смайлы</a><br></font></a></div>';
         echo
'<div class="gmenu"><font color="red">&#187;<a href="temes.php?str_razdela='.$str_razdela.'">Назад</a><br></font></a></div>'
      }
      
      
   }else
   { echo
'Выбранного раздела нет<br>'; }
   }
}

if(
$status=="ban")
{
   echo
'Ваш акаунт временно заблокирован, причины ниже<br>';
   echo
''.$prichina_bana.'<br><br>В данный момент вы можете только читать форум, или зарегистрировать себе другой акаунт. ЗНАЙТЕ, ЕСЛИ НАРУШЕНИЯ С ВАШЕЙ СТОРОНЫ НЕ ПРЕКРАТЯТСЯ, ТО ДОСТУП В ФОРУМ ВАМ БУДЕТ ЗАКРЫТ ПОЛНОСТЬЮ!!!<br>';
}

echo
'<div class="gmenu"><font color="red"><a href="../index.php?">В меню</a><br></font></a></div>';
include(
"../sistem/global_end.dat");
include(
"../temes/$teme/niz.dat");
?>
Онлайн: 1
Реклама