Меню сайта
Категории раздела
Новости кибер-спорта [320]
Мини-чат
Наш опрос
Как сделать форму регистрации???
Всего ответов: 86
Главная » 2010 » Январь » 30 » Интеграция DLE 7.x - 8.x + IPB 3.0.x
13:01
Интеграция DLE 7.x - 8.x + IPB 3.0.x
dle/engine/modules/register.php

Найти:
require_once ENGINE_DIR . \'/classes/parse.class.php\';

Добавить:
$ipb_dle_lan[0] = \"Данное имя уже используется на форуме.\";
    $db_ipb_user = \"root\";
    $db_ipb_password = \"\";
    $db_ipb_namedb = \"56\";
    $db_ipb_local = \"localhost\";
    $db_ipb_error = 1; // 1 - показывать ошмбки в соединении с бд форума, 0 - нет
    $db_prefix_ipb = \"ibf\";
$ipb = new db;
$ipb->connect($db_ipb_user, $db_ipb_password, $db_ipb_namedb, $db_ipb_local, $db_ipb_error);

Найти:
global $lang, $db, $banned_info;

Заменить на:
global $lang, $db, $banned_info, $ipb, $ipb_dle_lan, $db_prefix_ipb;

Найти:
$row = $db->super_query( \"SELECT COUNT(*) as count FROM \" . USERPREFIX . \"_users WHERE email = \'$email\' OR LOWER(name) REGEXP \'[[::]]\' OR name = \'$name\'\" );

Добавить ниже:
$ipb_test_name = $ipb->super_query (\"SELECT COUNT(*) as count FROM {$db_prefix_ipb}_members where name = \'\".strtolower($name).\"\'\");
if ($ipb_test_name [\'count\'] > 0) $stop .= $ipb_dle_lan[0];

Найти:
$db->query( \"INSERT INTO \" . USERPREFIX . \"_users (name, password, email, reg_date, lastdate, user_group, info, signature, favorites, xfields, logged_ip) VALUES (\'$name\', \'$regpassword\', \'$email\', \'$add_time\', \'$add_time\', \'\" . $config[\'reg_group\'] . \"\', \'\', \'\', \'\', \'\', \'\" . $_IP . \"\')\" );
$id = $db->insert_id();

Добавить ниже:
$ipb_dle = new ipb_dle;
            $salt = $ipb_dle->generate_password_salt(5);
            $salt = addslashes($salt);
            $ph = $ipb_dle->generate_compiled_passhash($salt, md5($_POST[\'password1\']) );
            $insert_ipb = $ipb->insert_id(); //ид вставки
            $member_key = $ipb_dle->generate_auto_log_in_key();
            $key_expire = $member_key * 60 * 60 * 24;
            $ipb->query(\"INSERT INTO `{$db_prefix_ipb}_members` (
            member_id,
            name,
            members_l_username,
            members_display_name,
            members_l_display_name,
            members_seo_name,
            member_login_key,
            member_login_key_expire,
            email,
            member_group_id,
            joined,
            ip_address,
            time_offset,
            allow_admin_mails,
            language,
            msg_show_notification,
            members_auto_dst,
            members_pass_hash,
            members_pass_salt
            )
            VALUES (
            0,
            \'$name\',
            \'\".strtolower($name).\"\',
            \'$name\',
            \'\".strtolower($name).\"\',
            \'\".strtolower($name).\"\',
            \'\".$ipb_dle->generate_auto_log_in_key().\"\',
            \'$key_expire\',
            \'$email\',
            \'3\',
            \'\".time().\"\',
            \'$_IP\',
            \'3\',
            \'1\',
            \'1\',
            \'1\',
            \'0\',
            \'$ph\',
            \'$salt\'
            )\");
            $ipb_st = $ipb->super_query(\"select * from {$db_prefix_ipb}_cache_store where cs_key = \'stats\'\");
            $st_arr  = unserialize($ipb_st[\'cs_value\']);
            $st_arr[\'mem_count\']++;
            $st_arr[\'last_mem_name\'] = $name;
            $st_arr[\'last_mem_id\'] = $insert_ipb;
            $st_arr2 = serialize($st_arr);
            $ipb->query(\"UPDATE {$db_prefix_ipb}_cache_store set cs_value = \'$st_arr2\' where cs_key = \'stats\'\");

Перед:
?>

Вставить:
class ipb_dle
{
    function generate_password_salt($len=5)
    {
        $salt = \'\';

        for ( $i = 0; $i < $len; $i++ )
        {
            $num   = rand(33, 126);

            if ( $num == \'92\' )
            {
                $num = 93;
            }

            $salt .= chr( $num );
        }

        return $salt;
    }

    function generate_compiled_passhash($salt, $md5_once_password)
    {
        return md5( md5( $salt ) . $md5_once_password );
    }

        function generate_auto_log_in_key($len=60)
    {
        $pass = $this->generate_password_salt( $len );

        return md5($pass);
    }

}

Дальше

dle/engine/ajax/registration.php

Найти:
$db->query (\"SELECT name FROM \" . USERPREFIX . \"_users WHERE LOWER(name) REGEXP \'[[:<:]]{$search_name}[[:>:]]\' OR name = \'$name\'\");

        if ($db->num_rows() > 0)
        {
            $stop .= $lang[\'reg_err_20\'];
        }

Добавить ниже:

$ipb_dle_lan[0] = \"Данное имя уже используется на форуме.\";
    $db_ipb_user = \"root\";
    $db_ipb_password = \"\";
    $db_ipb_namedb = \"56\";
    $db_ipb_local = \"localhost\";
    $db_ipb_error = 1; // 1 - показывать ошмбки в соединении с бд форума, 0 - нет
    $db_prefix_ipb = \"ibf\";
$ipb = new db;
$ipb->connect($db_ipb_user, $db_ipb_password, $db_ipb_namedb, $db_ipb_local, $db_ipb_error);
$ipb_test_name = $ipb->super_query (\"SELECT COUNT(*) as count FROM {$db_prefix_ipb}_members where name = \'\".strtolower($name).\"\'\");
if ($ipb_test_name [\'count\'] > 0) $stop .= $ipb_dle_lan[0];

Категория: Новости кибер-спорта | Просмотров: 325 | Добавил: 2qq | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа
Воскресенье
17.11.2024
23:34


Реклама
Друзья сайта
XXX


Новое на форуме
Статистика
» Зарег. на сайте
Всего: 637
Новых за месяц: 0
Новых за неделю: 0
Новых вчера: 0
Новых сегодня: 0
» Из них
Администраторов: 1
Модераторов: 1
Проверенных: 11
Обычных юзеров: 620
» Из них
Парней: 619
Девушек: 17


Онлайн всего: 23
Гостей: 23
Пользователей: 0

Сегодня были
Копилка



© Theysoft.ru ©2010
При копировании ссылка на первоисточник обязательна.
Авторы проекта не несут ответственности за содержание рекламных материалов и файлов, размещенных на сторонних серверах.
SiteMap.xml | ForumSiteMap.xml | Хостинг от uCoz