Вход Регистрация
Файл: admin/gazeta.php
Строк: 59
<?
require'../shaxty.php'// waphp.ru - закрытый клуб вап мастеров!
check_login();
$title 'Газета';
$align 'left';
$head 'ГАЗЕТА.MASTERAM.US<br />Самые свежие и интересные новости!';
include_once (
H.'shaxty/head.php');
levels(8);

echo 
"<div class='c1'><b>Управление</b></div>";
    
$action = isset ($_REQUEST['action'])     ? check($_REQUEST['action']) : '';
    
$id1     = isset ($_REQUEST['id1'])         ? abs((int)$_REQUEST['id1']) : '';
    if(isset(
$_GET['delr']))         echo 'Раздел и все статьи в нем успешно удалены!<br/>';
    if(isset(
$_GET['err_delr']))     echo 'Произошла ошибка при удалении раздела!<br/>';
    if(isset(
$_GET['dels']))         echo 'Статья успешно удалена!<br/>';
    if(isset(
$_GET['err_dels']))     echo 'Произошла ошибка при удалении статьи!<br/>';
    if(isset(
$_GET['edits']))         echo 'Статья успешно изменена!<br/>';
    if(isset(
$_GET['err_edits']))     echo 'Произошла ошибка при изменении статьи!<br/>';
    if(isset(
$_GET['addr']))         echo 'Раздел успешно создан!<br/>';
    if(isset(
$_GET['err_addr']))     echo 'Произошла ошибка при создании раздела!<br/>';
    if(isset(
$_GET['err_add_r']))     echo 'Ошибка, раздел с таким именем уже существует!<br/>';
switch(
$mod) {
    default:
        switch(
$_GET['act']){
            default:
                
$q DB::$dbh->query("SELECT * FROM `gazetar` ORDER BY `pos`");
                if (
$q -> rowCount() == 0) echo "Разделов нет!!!<br/>";
                while(
$arr $q -> fetch()) {
                    
$g DB::$dbh->querySingle("SELECT COUNT(id) FROM gazeta WHERE idr=?",array($arr['id']));
                    echo 
'<div class="c2"> ';
                    echo 
'<a href="?mod=razdel&amp;id='.$arr['id'].'"><b>'.$arr['name'].'</b></a> ('.$g.') ';
                    echo 
'<a href="?act=del&amp;id='.$arr['id'].'">[удал]</a>';
                    echo 
'</div>';
                }
                echo 
'<br /><a href="?mod=add">Добавить раздел</a><br />';
            break;

            case 
'del':
                
/* --------------------------------------------------------------
                    удаляем сначала все статьи в разделе, затем уже сам раздел
                -------------------------------------------------------------- */
                
$r DB::$dbh->query("SELECT * FROM `gazeta` WHERE `idr`=? LIMIT 1",array($id));
                if(
$r -> rowCount() > 0){
                    while(
$gazeta $r -> fetch()){
                        
DB::$dbh->query("DELETE FROM `gazeta` WHERE `id`=? LIMIT 1",array($gazeta['id']));
                    }
                }
                if(
DB::$dbh->query("DELETE FROM `gazetar` WHERE `id`=? LIMIT 1",array($id)))
                    
header("Location: ?delr");
                else 
header("Location: ?err_delr");
            break;
        }
    break;

    case 
'razdel':
        
$q DB::$dbh->query("SELECT * FROM `gazeta` WHERE `idr`=? ORDER BY `id` DESC",array($id));
        if (
$q -> rowCount() == 0){
            echo 
"Статей нет!!!<br/>";
        } else {
            switch(
$_GET['act']){
                default:
                    while(
$arr $q -> fetch()) {
                        echo 
'<div class="c2"> ';
                        echo 
'<b>'.$arr['name'].'</b>('.times($arr['time']).') ';
                        echo 
'<a href="?mod=razdel&amp;act=del&amp;id='.$id.'&amp;id1='.$arr['id'].'">[удал]</a>';
                        echo 
' | <a href="?mod=razdel&amp;act=edit&amp;id='.$id.'&amp;id1='.$arr['id'].'">[ред.]</a>';
                        echo 
'</div>';
                        echo 
text($arr['text']).'<br/><dt></dt>';
                        echo 
'Автор статьи: <a href="/'.$arr['user'].'">'.nik($arr['user']).'</a><br />';
                    }
                break;

                case 
'del':
                    
/*
                    не знаю почему, но тут стояло удаление раздела, хотя должна удаляться статья
                    */
                    
if(DB::$dbh->query("DELETE FROM `gazeta` WHERE `id`=? LIMIT 1",array($id1)))
                        
header("Location: ?mod=razdel&id={$id}&dels");
                    else 
header("Location: ?mod=razdel&id={$id}&err_dels");
                break;

                case 
'edit':
                    
$arr DB::$dbh->queryFetch("SELECT * FROM `gazeta` WHERE `id`=? LIMIT 1",array($id1));
                    if(
$arr['id']){
                        if(empty(
$_POST['run'])) {
                            echo 
"Статья:<br/>";
                            echo 
"<form method='post' action='?mod=razdel&amp;act=edit&amp;id={$arr['id']}&amp;id1={$id1}' name='auth'>";
                            echo
'<textarea cols="'.$user['pole2'].'" rows="'.$user['pole1'].'" name="text" >'.nl2br($arr['text']).'</textarea><br />';
                            echo 
'<input type="submit" class="ibutton" value="Изменить" name="run"/></form><br/>';
                        } else {
                            if (
DB::$dbh->query("UPDATE `gazeta` SET `text`=? WHERE `id`=? LIMIT 1;",array($text,$id1))){
                                
header("Location:?mod=razdel&id={$id}&edits");
                            } else 
header("Location:?mod=razdel&id={$id}&err_edits");
                        }
                    }
                break;
            }
        }
    break;

    case 
'add':
        if(empty(
$_POST['run'])) {
            echo 
'<form action="?mod=add" method="post">';
            echo 
'Имя:<br/>';
            echo 
'<input type="text" name="name" maxlength="50" title="Имя"/><br/>';
            
$k DB::$dbh->querySingle("SELECT COUNT(id) FROM `gazetar`");
            echo 
'Положение:<br/>';
            echo 
'<input type="text" name="pos" value="'.($k+1).'" maxlength="50" title="Положение"/><br/>';
            echo 
'<br /><input name="run" type="submit" class="ibutton" value="Добавить"/></form><br /><br />';
        } else {
            
$name     check($_POST['name']);
            
$pos     abs((int)$_POST['pos']);

            
$p DB::$dbh->queryFetch("SELECT name FROM `gazetar` WHERE name=? LIMIT 1",array($name));
                if (
$name != $p['name']) {
                    if(
DB::$dbh->query("INSERT INTO gazetar VALUES(?,?,?,?);",array(0,$name,$pos,time()))) {
                        
header("Location: ?addr");
                    } else {
                        
header("Location: ?err_addr");
                    }
                } else {
                    
header("Location: ?err_add_r");
                }
        }
    break;
}
echo 
'<br />';
include_once (
H.'shaxty/foot.php');
/* by -=ШАХТЕР=- (waphp.ru - качай только тут) */ ?>
Онлайн: 0
Реклама