dle.in.ua » Хаки » Хак DLE by Клуб Админов: Просмотр сайта как член одной из группы

Хак DLE by Клуб Админов: Просмотр сайта как член одной из группы

Автор: c1rcool от 22-11-2010, 09:28
Если Вы администратор, то вы можете просматривать сайт как админ, гость, пользователь, т.е. как член любой из группы, которая существует на вашем сайте. Функция аля ucoz.

Смотрите видео демо.

_ttp://admin-club.ru/uploads/files/1.flv
1. Создаем файл engine/modules/group.php

такого содержания

<?php

if( ! defined( 'DATALIFEENGINE' ) ) {
    die( "Hacking attempt!" );
}


    if($member_id['user_group']==1 or $_SESSION['newgroup'])
    {

        $groups = $db->query("select * from " . PREFIX . "_usergroups");

        $html_ = "<form method='post' actiuon=''><select name='newgroup'>";

        while( $val = $db->get_row($groups) ){

            if($member_id['user_group']==$val['id'])
            $h_=" selected";
            else
            $h_="";

            $html_ .= "<option value={$val['id']}{$h_}>{$val['group_name']}</option>";
        }

        $html_ .= "</select> <input type=\"submit\" value=\"ок\"></form>";

    }else
    $html_ = "Нет прав :)";

    $tpl->load_template( 'group.tpl' );
    $tpl->set("%LIST%", $html_);
    $tpl->compile( 'content' );
    $tpl->clear();

?>


2. Создаем шаблон group.tpl

Содержание

%LIST%


3. Откроем файл engine/modules/sitelogin.php

и перед

?>


вставим

if($member_id['user_group']==1 )
{
    if($_POST['newgroup'])
    $member_id['user_group'] = intval($_POST['newgroup']);
    elseif( $_COOKIE['newgroup'] )
    $member_id['user_group'] = intval($_COOKIE['newgroup']);
    elseif( $_SESSION['newgroup'] )
    $member_id['user_group'] = intval( $_SESSION['newgroup'] );

    if($member_id['user_group']==5) $is_logged = false;

    $_COOKIE['newgroup'] = $member_id['user_group'];
    $_SESSION['newgroup'] = $member_id['user_group'];
}


4. Откроем файл engine/inc/include/functions.inc.php

найти



    if( $result ) {

        if( !allowed_ip( $row['allowed_ip'] ) ) {

            $member_id = array ();
            $result = false;
            set_cookie( "dle_user_id", "", 0 );
            set_cookie( "dle_name", "", 0 );
            set_cookie( "dle_password", "", 0 );
            set_cookie( "dle_hash", "", 0 );
            @session_destroy();
            @session_unset();
            set_cookie( session_name(), "", 0 );

            msg( "info", $lang['index_msge'], $lang['ip_block'] );

        }
    }


добавить ниже

if($member_id['user_group']==1 )
{
    if($_POST['newgroup'])
    $member_id['user_group'] = intval($_POST['newgroup']);
    elseif( $_COOKIE['newgroup'] )
    $member_id['user_group'] = intval($_COOKIE['newgroup']);
    elseif( $_SESSION['newgroup'] )
    $member_id['user_group'] = intval( $_SESSION['newgroup'] );

    if($member_id['user_group']==5) $is_logged = false;

    $_COOKIE['newgroup'] = $member_id['user_group'];
    $_SESSION['newgroup'] = $member_id['user_group'];
}


5. Открыть файл engine/engine.php

найти

switch ( $do ) {


добавить ниже

    case "group":

        include ENGINE_DIR.'/modules/group.php';

    break;


6. Переходите по ссылке: сайт.ру/index.php?do=group и меняйте группу :)

Готово.
  • Группа: User
  • Icq: --
  • Комментариев: 14
  • Публикаций: 0
  • Полезная штучка! Поставил себе)

    --------------------
    • tish88
    • Регистрация: 14.01.2010
    • Репутация: (0|0|0)
    • 30 ноября 2010 11:00
    • 1
    ^
    Информация
    Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.