View file 0-key.ru/Modules/Add_site.php

File size: 5.67Kb
<?PHP
require '../System/core.php';
 $config['title'] = 'Добавление сайта в белый каталог';
require '../System/header.php';

$_SESSION['add_site'] = '0';

if(isset($_POST['add_site']))
 {
  $error = FALSE;
 
  # Записываем принятые данные в сессию
  $_SESSION['url'] = xss(strtolower($_POST['url']));
  $_SESSION['name'] = xss(ucfirst($_POST['name']));
  $_SESSION['about'] = xss($_POST['about']);
  $_SESSION['description'] = xss($_POST['description']);
  $_SESSION['keywords'] = xss($_POST['keywords']);
  $_SESSION['id_category'] = num($_POST['category']);
  
  # Проверяем на ошибки
  if(empty($_POST['url'])){error('Введите URL сайта'); $error = TRUE;}
  if(empty($_POST['name'])){error('Введите название сайта'); $error = TRUE;}
  if(empty($_POST['about'])){error('Введите описание сайта'); $error = TRUE;}
  if(empty($_POST['rules'])){error('Вы не приняли соглашение с правилами'); $error = TRUE;}
  
  if(!empty($_POST['url']) && mb_strlen($_POST['url'], 'UTF-8') < '5'){error('URL сайта не может быть меньше 5 символов'); $error = TRUE;}
  if(mb_strlen($_POST['url'], 'UTF-8') > '64'){error('URL сайта не может быть больше 64 символов'); $error = TRUE;}
  
  if(!empty($_POST['name']) && mb_strlen($_POST['name'], 'UTF-8') < '12'){error('Название сайта не может быть меньше 12 символов'); $error = TRUE;}
  if(mb_strlen($_POST['name'], 'UTF-8') > '120'){error('Название сайта не может быть больше 120 символов'); $error = TRUE;}
  
  if(!empty($_POST['about']) && mb_strlen($_POST['about'], 'UTF-8') < '65'){error('Описание сайта не может быть меньше 65 символов'); $error = TRUE;}
  if(mb_strlen($_POST['about'], 'UTF-8') > '240'){error('Описание сайта не может быть больше 240 символов'); $error = TRUE;}
  
  if(!empty($_POST['url']) && !preg_match('#^([а-я0-9]{1})((\.[а-я0-9-])|([а-я0-9-]))*\.([а-я]{2,4})(\/?)$#ui', $_POST['url']) && !preg_match('#^([a-z0-9]{1})((\.[a-z0-9-])|([a-z0-9-]))*\.([a-z]{2,4})(\/?)$#ui', $_POST['url'])){error('Адрес сайта (URL) введен не корректно'); $error = TRUE;}

  if($_SESSION['secpic'] !== strtolower($_POST['captha'])){error('Код с картинке введен не верно'); $error = TRUE; UnSET($_SESSION['secpic']);}
  
  if($error == FALSE)
   {
    # фильтруем принятые данные в сессию
    $url = esc(strtolower($_POST['url']));
    $name = esc(ucfirst($_POST['name']));
    $about = esc($_POST['about']);
    $description = esc($_POST['description']);
    $keywords = esc($_POST['keywords']);
	$id_category = ($_POST['category']);
	$time = time();
    
	$count = mysql_result(mysql_query("SELECT COUNT(*) FROM `site` WHERE `url` = '$url'"),0); $sql_count++;
	if($count == '0')
	 {
	  require '../System/seo.php';
	  $pr = GooglePageRankChecker::getRank($url);
	  $cy = yandex_tiq($url);
	  $alexaRank = getAlexaRank($url);
	  mysql_query("INSERT INTO `site` (`id_category`, `url`, `name`, `about`, `description`, `keywords`, `mod`, `ban`, `time`, `pr`, `cy`, `alexarank`,`up`)
	                    VALUES ('$id_category', '$url', '$name', '$about', '$description', '$keywords', '0', '0', '$time','$pr','$cy','$alexaRank','$time')"); $sql_count++;

	  $_SESSION['add_site'] = '1';
	  header('Location: /AddSiteAdd');
	 }
	else
	 {
	  error('Сайт <b>'.$url.'</b> уже есть в каталоге');
	 }
   }
 }

  ?>
    <form action="" class="text" method="POST">
	 URL <small>(Без http:// и www)</small><br />
	 <input type="text" name="url" value="<?=$_SESSION['url']?>"><br />
	 
	 Название <small>(min:12, max:120)</small><br />
	 <input type="text" name="name" value="<?=$_SESSION['name']?>"><br />
	 
	 Описание <small>(min:65, max: 240)</small><br />
	 <textarea name="about"><?=$_SESSION['about']?></textarea><br />
	 
	 Description <small>(max: 240)</small><br />
	 <textarea name="description"><?=$_SESSION['description']?></textarea><br />
	 
	 Keywords <small>(max: 240)</small><br />
	 <textarea name="keywords"><?=$_SESSION['keywords']?></textarea><br />
	 
	 Категория<br />
	 <select name="category">
      <option disabled>Выберите категорию</option>
      <?
      $count_category = mysql_result(mysql_query("SELECT COUNT(*) FROM `category`"),0); $sql_count++;
      $category_query = mysql_query("SELECT `id`,`name` FROM `category` ORDER BY `id`");$sql_count++;
 
      if($count_category !== '0')
       {
        while($category = mysql_fetch_array($category_query))
       {
	   ?>
	    <option value="<?=$category['id']?>"<?=(empty($_SESSION['id_category']) || $_SESSION['id_category'] != $category['id'] ? '' : ' selected="selected"')?>><?=$category['name']?></option>
	   <?
	   }
      }
      ?>
     </select><br />
	 
	 <label><input type="checkbox" name="rules" value="1" checked="checked"> Я прочитал(а) <a href="/Rules"><u>правила</u></a> и согласен(на) с ними</label><br />
	 <br />
	 Введите код с картинки:<br />
	 <img src="/captha.php" alt="защитный код" /><br />
	 <input type="text" name="captha"><br />
	 <input type="submit" name="add_site" value="Добавить">
	</form>
  <?

echo '<div class="back"><a href="/"><img src="/Style/icons/back.png" alt="" /> На главную</a></div>';
require '../System/footer.php';
?>