Вход Регистрация
Файл: modules/admin/smile.php
Строк: 214
<?
$title 
'Смайлы';
include_once(
$_SERVER["DOCUMENT_ROOT"].'/style/head.php');
level(1);
switch(
$_GET['act']){
    default:
    
$q $db->query("SELECT * FROM `smile_section`");
    while(
$s $q->fetch_assoc()){
        
?>
        <div class="section"><a href="/admin/smile?act=section&id=<?=$s['id']?>"><?=htmlspecialchars($s['name'])?></a> <a href="/admin/smile?act=edit_section&id=<?=$s['id']?>">[Ред.]</a> <a href="/admin/smile?act=del_section&id=<?=$s['id']?>">[Уд.]</a></div>
        <?
    
}
    if(
$db->query("SELECT `id` FROM `smile_section`")->num_rows==0){
        
?>
        <div class="error">Разделов пока нет!</div>
        <?
    
}
    
?>
    <div class="nvg"><a href="/admin/smile?act=new_section">Создать раздел</a></div>
    <?
    
break;

    case 
'new_section':
    if(isset(
$_POST['ok'])){
        
$_POST['name'] = guard($db->real_escape_string($_POST['name']));
        if(
mb_strlen($_POST['name'])<or mb_strlen($_POST['name'])>255){
            
error('Название раздела должно содержать не менее 2 и не более 255 символов!');
        }
        
$db->query("INSERT INTO `smile_section` SET `name`='".$_POST['name']."'");
        
success('Раздел успешно создан!');
    }
    
?>
    <div class="title">Новый раздел</div>
    <div class="text">
        <form action="" method="POST">
            Название:<br/>
            <input type="text" name="name" placeholder="Введите название..."><br/>
            <input type="submit" name="ok" value="Создать">
        </form>
    </div>
    <?
    
break;

    case 
'edit_section':
    
$_GET['id'] = abs(intval($_GET['id']));
    if(
$db->query("SELECT `id` FROM `smile_section` WHERE `id`='".$_GET['id']."'")->num_rows==0){
        
error('Раздела не существует!');
    }
    if(isset(
$_POST['ok'])){
        
$_POST['name'] = guard($db->real_escape_string($_POST['name']));
        if(
mb_strlen($_POST['name'])<or mb_strlen($_POST['name'])>255){
            
error('Название раздела должно содержать не менее 2 и не более 255 символов!');
        }
        
$db->query("UPDATE `smile_section` SET `name`='".$_POST['name']."' WHERE `id`='".$_GET['id']."'");
        
success('Раздел успешно отредактирован!');
    }
    
$section $db->query("SELECT * FROM `smile_section` WHERE `id`='".$_GET['id']."'")->fetch_assoc();
    
?>
    <div class="title">Редактирование раздела</div>
    <div class="text">
        <form action="" method="POST">
            Название:<br/>
            <input type="text" name="name" value="<?=htmlspecialchars($section['name'])?>"><br/>
            <input type="submit" name="ok" value="Изменить">
        </form>
    </div>
    <?
    
break;

    case 
'del_section':
    
$_GET['id'] = abs(intval($_GET['id']));
    if(
$db->query("SELECT `id` FROM `smile_section` WHERE `id`='".$_GET['id']."'")->num_rows==0){
        
error('Раздела не существует!');
    }
    
$q $db->query("SELECT * FROM `smile` WHERE `section`='".$_GET['id']."'");
    while(
$s $q->fetch_assoc()){
        
unlink('../../files/smile/'.$s['file']);
        
$db->queyr("DELETE FROM `smile` WHERE `id`='".$s['id']."'");
    }
    
$db->query("DELETE FROM `smile_section` WHERE `id`='".$_GET['id']."'");
    
header('location:/admin/smile');
    break;

    case 
'new_smile':
    
$_GET['id'] = abs(intval($_GET['id']));
    if(
$db->query("SELECT `id` FROM `smile_section` WHERE `id`='".$_GET['id']."'")->num_rows==0){
        
error('Раздела не существует!');
    }
    if(isset(
$_POST['ok'])){
        
$_POST['name'] = guard($db->real_escape_string($_POST['name']));
        if(
mb_strlen($_POST['name'])<or mb_strlen($_POST['name'])>255){
            
error('Название смайла должно содержать не менее 2 и не более 255 символов.');
        }

        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/smile/'.$file.'')){
            
error('Ошибка в копировании на сервер!');
        }
        
$db->query("INSERT INTO `smile` SET `name`='".$_POST['name']."', `section`='".$_GET['id']."', `file`='".$file."'");
           
success('Смайл успешно добавлен!');
    }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/smile/".$file."");
        
$db->query("INSERT INTO `smile` SET `name`='".$_POST['name']."', `section`='".$_GET['id']."', `file`='".$file."'");
        
success('Смайл успешно добавлен!');
    }
    }
    
?>
    <div class="title">Добавление смайла</div>
    <div class="text">
        <form action="" method="POST" enctype="multipart/form-data">
            Название:<br/>
            <input type="text" name="name" placeholder="Введите название"><br/> 
            *Выберите файл:<br/>
            <input type="file" name="file"><br/>
            <input type="radio" name="imp" value="imp"> Импорт:<br/>
            Файл:<br/>
            <input type="text" name="import" value="http://"><br/>
            <input type="submit" name="ok" value="Добавить">
        </form>
    </div>
    <?
    
break;

    case 
'edit_smile':
    
$_GET['id'] = abs(intval($_GET['id']));
    if(
$db->query("SELECT `id` FROM `smile` WHERE `id`='".$_GET['id']."'")->num_rows==0){
        
error('Смайла не существует!');
    }
    if(isset(
$_POST['okf'])){
        
$smile $db->query("SELECT `file` FROM `smile` WHERE `id`='".$_GET['id']."'")->fetch_assoc();
        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'];
            
unlink('../../files/smile/'.$smile['file']);
            if (!
copy($_POST['import'], '../../files/smile/'.$file.'')){
                
error('Ошибка в копировании на сервер!');
            }
            
$db->query("UPDATE `smile` SET `file`='".$file."' WHERE `id`='".$_GET['id']."'");
               
success('Смайл успешно обновлён.');
        }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'];
            
unlink('../../files/smile/'.$smile['file']);
            
move_uploaded_file($_FILES['file']['tmp_name'], "../../files/smile/".$file."");
            
$db->query("UPDATE `smile` SET `file`='".$file."' WHERE `id`='".$_GET['id']."'");
            
success('Смайл успешно обновлён.');
        }
    }
    if(isset(
$_POST['ok'])){
        
$_POST['name'] = guard($db->real_escape_string($_POST['name']));
        if(
mb_strlen($_POST['name'])<or mb_strlen($_POST['name'])>255){
            
error('Название смайла должно содержать не менее 2 и не более 255 символов.');
        }
        
$db->query("UPDATE `smile` SET `name`='".$_POST['name']."' WHERE `id`='".$_GET['id']."'");
        
success('Название успешно изменено.');
    }
    
$smile $db->query("SELECT * FROM `smile` WHERE `id`='".$_GET['id']."'")->fetch_assoc();
    
?>
    <div class="title">Редактирование смайла</div>
    <div class="text">
        <img src="/files/smile/<?=$smile['file']?>"><br/>
        <form action="" method="POST">
            Название:<br/>
            <input type="text" name="name" value="<?=htmlspecialchars($smile['name'])?>"><br/>
            <input type="submit" name="ok" value="Сохранить">
        </form>
    </div>
    <div class="title">Замена смайла</div>
    <div class="text">
        <form action="" method="POST" enctype="multipart/form-data">
            *Выберите файл:<br/>
            <input type="file" name="file"><br/>
            <input type="radio" name="imp" value="imp"> Импорт:<br/>
            Файл:<br/>
            <input type="text" name="import" value="http://"><br/>
            <input type="submit" name="okf" value="Добавить">
        </form>
    </div>
    <?
    
break;

    case 
'del_smile':
    
$_GET['id'] = abs(intval($_GET['id']));
    if(
$db->query("SELECT `id` FROM `smile` WHERE `id`='".$_GET['id']."'")->num_rows==0){
        
error('Смайла не существует!');
    }
    
$smile $db->query("SELECT * FROM `smile` WHERE `id`='".$_GET['id']."'")->fetch_assoc();
    
$db->query("DELETE FROM `smile` WHERE `id`='".$_GET['id']."'");
    
unlink('../../files/smile/'.$smile['file']);
    
header('location:/admin/smile?act=section&id='.$smile['section']);
    break;

    case 
'section':
    
$_GET['id'] = abs(intval($_GET['id']));
    if(
$db->query("SELECT `id` FROM `smile_section` WHERE `id`='".$_GET['id']."'")->num_rows==0){
        
error('Раздела не существует!');
    }

    
$nav=new navig("SELECT * FROM `smile` WHERE `section`='".$_GET['id']."'");
    
    
$q=$db->query('SELECT * FROM `smile` WHERE `section`='.$_GET['id'].' ORDER BY `id` DESC LIMIT '.$nav->start.','.$nav->nstr);
    
    while(
$s=$q->fetch_assoc()){
        
?>
        <div class="section"><img src="/files/smile/<?=$s['file']?>"> - <?=htmlspecialchars($s['name'])?><br/>
            <a href="/admin/smile?act=edit_smile&id=<?=$s['id']?>">[Ред.]</a> <a href="/admin/smile?act=del_smile&id=<?=$s['id']?>">[Уд.]</a></div>
        <?
    
}
    
    
?>
    <div class="nvgstr">
    <?
        $nav
->panel();
    
?>
    </div>
    <?
        
if($db->query("SELECT `id` FROM `smile` WHERE `section`='".$_GET['id']."'")->num_rows==0){
        
?>
        <div class="error">Смайлов пока нет.</div>
        <?
    
}
    
?>
    <div class="nvg"><a href="/admin/smile?act=new_smile&id=<?=$_GET['id']?>">Добавить смайл</a></div>
    <?    
    
break;
}
include_once(
$_SERVER["DOCUMENT_ROOT"].'/style/foot.php');
?>
Онлайн: 2
Реклама