Файл: modules/mail/newspaper/new_article.php
Строк: 90
<?php
$title = 'Новая статья';
include_once($_SERVER["DOCUMENT_ROOT"].'/style/head.php');
mode('user');
if($user['journalist']==0){
error('Данная страница доступна только для журналистов.');
}
$_GET['id'] = abs(intval($_GET['id']));
if($db->query("SELECT `id` FROM `newspaper_section` WHERE `id`=".$_GET['id']."")->num_rows==0){
error('Категории не существует.');
}
$section = $db->query("SELECT * FROM `newspaper_section` WHERE `id`=".$_GET['id']."")->fetch_assoc();
?>
<div class="title">
<a href="/newspaper">Газета</a>
|
<a href="/newspaper/section/<?=$section['id']?>"><?=output($section['name'])?></a>
|
Новая статья
</div>
<?
if(isset($_POST['ok'])){
$_POST['name'] = guard($db->real_escape_string($_POST['name']));
$_POST['content'] = guard($db->real_escape_string($_POST['content']));
if(mb_strlen($_POST['name'])<3 or mb_strlen($_POST['name'])>255){
error('Навзание должно содержать в себе не менее 3 и не более 255 символов.');
}elseif(mb_strlen($_POST['content'])<10 or mb_strlen($_POST['content'])>16000){
error('Содеражнание должно содержать в себе не менее 10 и не более 16000 символов.');
}
if($_POST['imp']==imp){
$_POST['import'] = guard($db->real_escape_string($_POST['import']));
if (!@fopen($_POST['import'], 'r')){
error('Файла не существует!');
}
$gh = get_headers($_POST['import'], 1);
$maxsize = 100; // Максимальный размер файла,в мегабайтах
$size = $gh['Content-Length']; // Вес файла
if ($size > (1048576 * $maxsize)){
error('Допустимый размер загружаемого файла '.$maxsize.' мб.');
}
$info_url = pathinfo($_POST['import']);
$filetype = array(
'jpg',
'gif',
'png',
'jpeg');
/* Если тип файла не подходит */
if (!in_array($info_url['extension'], $filetype))
{
error('Тип файла не подходит!');
}
$file = $_SERVER["HTTP_HOST"].'_'.rand(0,999999).'_'.time().'.'.$info_url['extension'];
if (!copy($_POST['import'], '../../files/newspaper/images/'.$file.'')){
error('Ошибка в копировании на сервер!');
}
}else{
$size = $_FILES['file']['size'];
$max = 100;
$filetype = array(
'jpg',
'gif',
'png',
'jpeg');
$upfiletype = substr($_FILES['file']['name'], strrpos($_FILES['file']['name'], ".") + 1);
if(!@file_exists($_FILES['file']['tmp_name']) AND $_POST['imp']!=imp){
error('Выберите файл!');
}elseif($size > (1048576 * $max)){
error('Вес файла должен быть не более '.$max.' мб.');
}elseif(!in_array($upfiletype, $filetype)){
error('Файл данного формата загржать запрещено!');
}
$file = $_SERVER["HTTP_HOST"].'_'.rand(0,999999).'_'.$_FILES['file']['name'];
move_uploaded_file($_FILES['file']['tmp_name'], "../../files/newspaper/images/".$file."");
}
$db->query("INSERT INTO `newspaper_article` SET `name`='".$_POST['name']."', `content`='".$_POST['content']."', `id_us`='".$user['id']."', `time`=".time().", `section`=".$_GET['id'].", `img`='".$file."'");
$id = $db->insert_id;
header('location:/newspaper/article/'.$id);
}
?>
<div class="text">
<form action="" method="POST" enctype="multipart/form-data">
Название:<br/>
<input type="text" name="name" placeholder="Введите название..."><br/>
Содержание:<br/>
<textarea name="content"></textarea><br/>
*Выберите картинку:<br/>
<input type="file" name="file"><br/>
<input type="radio" name="imp" value="imp"> Импорт:<br/>
<input type="text" name="import" value="http://"><br/>
<input type="submit" name="ok" value="Добавить">
</form>
</div>
<?
include_once($_SERVER["DOCUMENT_ROOT"].'/style/foot.php');
?>