Пятница, 26 Апр 2024, 03:56 , Гость
Главная | Регистрация | Вход | RSS | Правообладателям
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Форум » Форум по DataLife Engine (DLE) » Информация » Интеграция DLE+IPB
Интеграция DLE+IPB
Bl@ckДата: Понедельник, 03 Май 2010, 21:15 | Сообщение # 1
Легенда
Сообщений: 221
[ 30 ]
Статус: :-(
Интеграция DLE+IPB

Требования ipb от 2.3.2 и dle 7.5.

1. Делаем архивные копии: бд ipb и dle.

2. Открыть dle/engine/modules/register.php

Найти:

require_once ENGINE_DIR . '/classes/parse.class.php';

Добавить:

// интеграция DLE и IPB, версия 1я
// 11 марта, 2009
// redrat, icq 709056, admin-club.ru

        # Сообщение об ошибке: Данное имя уже используется

        $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";

#---=-=-=-=-===---====--=---=-------==-==-=----=-=-===----=====----: dle + ipb : #1
$ipb = new db;
$ipb->connect($db_ipb_user, $db_ipb_password, $db_ipb_namedb, $db_ipb_local, $db_ipb_error);
#---=-=-=-=-===---====--=---=-------==-==-=----=-=-===----=====----: dle + ipb;

Не забудьте указать параметры подключения к бд форума.

Найти:

global $lang, $db, $banned_info;

Заменить на:

    global $lang, $db, $banned_info
#---=-=-=-=-===---====--=---=-------==-==-=----=-=-===----=====----: dle + ipb : #3
        # global +
        ,
        $ipb,
        $ipb_dle_lan,
        $db_prefix_ipb
#---=-=-=-=-===---====--=---=-------==-==-=----=-=-===----=====----:  dle + ipb;
;

Найти:

$row = $db->super_query( "SELECT COUNT(*) as count FROM " . USERPREFIX . "_users WHERE email = '$email' OR LOWER(name) REGEXP '[[:<:]]{$search_name}[[:>:]]' OR name = '$name'" );

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

#---=-=-=-=-===---====--=---=-------==-==-=----=-=-===----=====----: dle + ipb : #2
$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];
#---=-=-=-=-===---====--=---=-------==-==-=----=-=-===----=====----: dle + ipb;

Найти:

$add_time = time() + ($config['date_adjust'] * 60);
                $_IP = $db->safesql( $_SERVER['REMOTE_ADDR'] );
                if( intval( $config['reg_group'] ) < 3 ) $config['reg_group'] = 4;

$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();

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

#---=-=-=-=-===---====--=---=-------==-==-=----=-=-===----=====----: dle + ipb : #6
$ipb_dle = new ipb_dle;
$salt = $ipb_dle->generate_password_salt(5);
$ph = $ipb_dle->generate_compiled_passhash($salt, md5($_POST['password1']) );

$ipb->query("INSERT INTO `{$db_prefix_ipb}_members_converge` ( `converge_email` , `converge_joined` , `converge_pass_hash` , `converge_pass_salt` )
VALUES (
'$email', '".time()."', '$ph', '".$ipb->safesql(str_replace( '\\', "\\\\", $salt))."'
)");

$insert_ipb = $ipb->insert_id(); //ид вставки

$ipb->query("INSERT INTO `{$db_prefix_ipb}_members` (
id,
name,
members_l_username,
members_display_name,
members_l_display_name,
member_login_key,
member_login_key_expire,
email,
mgr    oup,
joined,
ip_address,
time_offset

)
VALUES (
$insert_ipb,
'$name',
'".strtolower($name)."',
'$name',
'".strtolower($name)."',
'".$ipb_dle->generate_auto_log_in_key()."',
'0',
'    $email',
'3',
'".time()."',
'$_IP',
3

)");

$ipb->query("INSERT INTO `{$db_prefix_ipb}_member_extra` ( id , vdirs , interests , signature )
VALUES (
$insert_ipb,
'in:Входящие|sent:Отправленные',
'',''
)");

$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'");
#---=-=-=-=-===---====--=---=-------==-==-=----=-=-===----=====----: dle + ipb;

а так же, перед :

Вставить выше:


#---=-=-=-=-===---====--=---=-------==-==-=----=-=-===----=====----: dle + ipb : #7
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 + ipb;

Сохранить изменения в файле.

3. открыть файл 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'];
            }

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

// интеграция DLE и IPB, версия 1я
// 11 марта, 2009
// redrat, icq 709056, admin-club.ru

        # Сообщение об ошибке: Данное имя уже используется

        $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";

#---=-=-=-=-===---====--=---=-------==-==-=----=-=-===----=====----: dle + ipb : #5
$ipb = new db;
$ipb->connect($db_ipb_user, $db_ipb_password, $db_ipb_namedb, $db_ipb_local, $db_ipb_error);
#---=-=-=-=-===---====--=---=-------==-==-=----=-=-===----=====----: dle + ipb;
#---=-=-=-=-===---====--=---=-------==-==-=----=-=-===----=====----: dle + ipb : #4
$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];
#---=-=-=-=-===---====--=---=-------==-==-=----=-=-===----=====----: dle + ipb;

Форму Параметры БД, конечно, обязательно заполнить.

Сохранить, закрыть нажав на красный крестик мышкой. ))

4. Качаем файл ipb_member_sync.php и ложим его в ipb/modules/ipb_member_sync.php.

5. В файле, над которым вы колдовали в шаге выше, нужно указать параметры подключения к базе данных DLE:

$db_dle_user = "root";
        $db_dle_name = "g";
        $db_dle_password = "";
        $db_dle_local = "localhost";
        $db_dle_prefix = "dle";

6. Все.

Кому лень вручную вписывать коды, просто скачайте файлы и замените их.
Скачать файлы:
http://cms-helper.ru/load/ipb_member_sync.php
http://cms-helper.ru/load/register.php
http://cms-helper.ru/load/registration.php

Файлы в одном архиве: http://cms-helper.ru/load/download.rar


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Проверено на DLE 7.5 и IPB 2.3.6. Работает, просьба сначала во всем разобраться, перед тем как задавать вопрос.



WMGarant - Сервис Безопасных Сделок
 
Форум » Форум по DataLife Engine (DLE) » Информация » Интеграция DLE+IPB
  • Страница 1 из 1
  • 1
Поиск:

Статистика Форума
Последние обновленные темы Самые популярные темы Лучшие пользователи Новые пользователи
Ждёшь когда твой друг зайдёт вконтакте?
Popunder.ru – давайте знакомиться!
Ginads.com - выгодный партнёр на рынке рекламы!
Работа Вашей мечты
Достойно монетизировать свои сайты с помощью этих видов моне
Работа на дому. Проверенные способы заработка
Продам микшер
##ВЗЛОМ ВАЙБЕРА**ВАТСАПА**ОНЛАЙН ИГР##XAK.PRO81@YANDEX.RU
##ВЗЛОМ ВАЙБЕРА**ВАТСАПА**ОНЛАЙН ИГР##XAK.PRO81@YANDEX.RU
АНОНИМНЫЙ-БЫСТРЫЙ-ВЗЛОМ ПОЧТЫ - БЕЗ ПРЕДОПЛАТЫ
Продажа Dedicated Server, Дедики от Amazon не брут, гарантия
Что такое оптимизация сайта?
Чудо кошельки
Требуется файловик
Оцените мой сайт!
Считаем до 1000000
Играем в города
Играем в слова
Прогон сайта от NextSoft.at.ua
WebMoney Бонусы
Ассоциации
Ваш сайт увидят до 10000 пользователей
Каким клиентом вы пользуетесь?
Съедобное-Несъедобное
Popunder.ru – давайте знакомиться!
Работа Вашей мечты
Самый большой человек в мире (9 фото)
Вопрос - ответ
Какой антивирус на ваш взгляд самый надёжный?
Халявный хостинг
Bl@ck
primehacknet
snegir
ck-vladimir
dmitriy_izhevskiy
vladimir_annim
ST1NG
Russia)
crazyhack100yandexru
pass-2015
Forev
XakPass
profisvoego_dela
anyhacking
XAK6
artemmurzak8
herbamarketru111-457951-k
dolya24
Админ0688
sasha-filanovich
medergrupatua
illya090121
Koshka
ginads
maksimushka
mrvolkov490
ccbecjoshumbone
jonny1032
vzlomvadik
vzlo522343u



Все материалы, размещенные на сайте, принадлежат их владельцам и предоставляются исключительно в ознакомительных целях.
Администрация ответственности за содержание материала не несет и убытки не возмещает.
По истечении 24 часов материал должен быть удален с вашего компьютера.
Незаконная реализация карается законами РФ и Украины: "Об авторском и смежном праве".
При копировании материала, ссылка на сайт обязательна!
© 2024 Nextsoft
Все права защищены