تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
تحويل كود php الى vb
#8
اتعبتك معي كثيرا فالله يعينك ويعوضك بخير مما ذهب منك من وقت وجهد


كود :
function import()
    {
        global $import_session;

        // Get members
        $query = $this->old_db->simple_select("user", "*", "", array('order_by' => 'userid', 'order_dir' => 'asc', 'limit_start' => $this->trackers['start_users'], 'limit' => $import_session['users_per_screen']));
        while($user = $this->old_db->fetch_array($query))
        {
            $this->insert($user);
        }
    }

    function convert_data($data)
    {
        $insert_data = array();

        // vBulletin 4 values
        $insert_data['usergroup'] = $this->board->get_group_id($data['usergroupid'], array("not_multiple" => true));
        $insert_data['additionalgroups'] = str_replace($insert_data['usergroup'], '', $this->board->get_group_id($data['usergroupid']));
        $insert_data['displaygroup'] = $this->board->get_group_id($data['usergroupid'], array("not_multiple" => true));
        $insert_data['import_usergroup'] = $this->board->get_group_id($data['usergroupid'], array("original" => true));
        $insert_data['import_additionalgroups'] = $this->board->get_group_id($data['usergroupid'], array("original" => true));
        $insert_data['import_displaygroup'] = $data['displaygroupid'];
        $insert_data['import_uid'] = $data['userid'];
        $insert_data['username'] = encode_to_utf8($data['username'], "user", "users");
        $insert_data['email'] = $data['email'];
        $insert_data['regdate'] = $data['joindate'];
        $insert_data['lastactive'] = $data['lastactivity'];
        $insert_data['lastvisit'] = $data['lastvisit'];
        $insert_data['website'] = $data['homepage'];
        $avatar = $this->get_avatar($data['avatarid']);
        if(!$avatar)
        {
            $customavatar = $this->get_custom_avatar($data['userid']);
            if(!$customavatar)
            {
                $insert_data['avatardimensions'] = '';
                $insert_data['avatar'] = '';
                $insert_data['avatartype'] = '';
            }
        }
        else
        {
            list($width, $height) = @getimagesize($avatar['avatarpath']);
            $insert_data['avatardimensions'] = $width.'|'.$height;
            $insert_data['avatar'] = $avatar['avatarpath'];
            $insert_data['avatartype'] = 'remote';
        }
        $insert_data['lastpost'] = $data['lastpost'];
        $data['birthday'] = trim($data['birthday']);
        if(!empty($data['birthday']))
        {
            list($bmonth, $bday, $byear) = explode("-", $data['birthday']);
            $insert_data['birthday'] = $bday."-".$bmonth."-".$byear;
        }
        // Don't ask me why some guys insert an ICQ number with more than 9 characters, but we need to avoid sql errors...
        $insert_data['icq'] = substr($data['icq'], 0, 10);
        $insert_data['aim'] = $data['aim'];
        $insert_data['yahoo'] = $data['yahoo'];
        $insert_data['skype'] = $data['skype'];
        $insert_data['timezone'] = str_replace(array('.0', '.00'), array('', ''), $insert_data['timezone']);
        $insert_data['style'] = 0;
        $insert_data['referrer'] = $data['referrerid'];
        $insert_data['regip'] = my_inet_pton($data['ipaddress']);
        $insert_data['totalpms'] = $data['pmtotal'];
        $insert_data['unreadpms'] = $data['pmunread'];
        
        $insert_data['passwordconvert'] = $data['password'];
        $insert_data['passwordconverttype'] = 'vb4';
        $insert_data['passwordconvertsalt'] = $data['salt'];
        
        $insert_data['signature'] = encode_to_utf8($this->bbcode_parser->convert($this->get_signature($data['userid'])), "user", "users");

        return $insert_data;
    }
----------------------------------

function loginconvert_convert(&$login)
{
    global $mybb, $valid_login_types, $db, $settings;

    $options = array(
        "fields" => array('username', "password", "salt", 'loginkey', 'coppauser', 'usergroup', "passwordconvert", "passwordconverttype", "passwordconvertsalt"),
        "username_method" => (int)$settings['username_method']
    );

    if($login->username_method !== null)
    {
        $options['username_method'] = (int)$login->username_method;
    }

    $user = get_user_by_username($login->data['username'], $options);

    // There's nothing to check for, let MyBB do everything
    // This fails also when no user was found above, so no need for an extra check
    if(!isset($user['passwordconvert']) || $user['passwordconvert'] == '')
    {
        return;
    }

    if(!array_key_exists($user['passwordconverttype'], $valid_login_types))
    {
        // TODO: Is there an easy way to make the error translatable without adding a new language file?
        redirect($mybb->settings['bburl']."/member.php?action=lostpw", "We're sorry but we couldn't convert your old password. Please select a new one", "", true);
    }
    else
    {
        $function = "check_".$valid_login_types[$user['passwordconverttype']];
        $check = $function($login->data['password'], $user);

        if(!$check)
        {
            // Yeah, that function is called later too, but we need to know whether the captcha is right
            // If we wouldn't call that function the error would always be shown
            $login->verify_attempts($mybb->settings['captchaimage']);

            $login->invalid_combination(true);
        }
        else
        {
            // The password was correct, so use MyBB's method the next time (even if the captcha was wrong we can update the password)
            $salt = generate_salt();
            $update = array(
                "salt"                    => $salt,
                "password"                => salt_password(md5($login->data['password']), $salt),
                "loginkey"                => generate_loginkey(),
                "passwordconverttype"    => "",
                "passwordconvert"        => "",
                "passwordconvertsalt"    => "",
            );

            $db->update_query("users", $update, "uid='{$user['uid']}'");

            // Make sure the password isn't tested again
            unset($login->data['password']);

            // Also make sure all data is available when creating the session (otherwise SQL errors -.-)
            $login->login_data = array_merge($user, $update);
        }
    }
}

// Password functions

function check_vb($password, $user)
{
    if(md5(md5($password).$user['passwordconvertsalt']) == $user['passwordconvert'] || md5($password.$user['passwordconvertsalt']) == $user['passwordconvert'])
    {
        return true;
    }

    return false;
}

هذي دالة تحويل  تشفير vbulletin to mybb
لي يوم كامل احاول افهمها وما قدرت.
اللهم إني أعوذ بك من غلبة الدين وغلبة العدو، اللهم إني أعوذ بك من جهد البلاء ومن درك الشقاء ومن سوء القضاء ومن شماتة الأعداء
اللهم اغفر لي خطيئتي وجهلي، وإسرافي في أمري وما أنت أعلم به مني، اللهم اغفر لي ما قدمت وما أخرت، وما أسررت وما أعلنت وما أنت أعلم به مني، أنت المقدم وأنت المؤخر وأنت على كل شيء قدير
الرد }}}
تم الشكر بواسطة:


الردود في هذا الموضوع
تحويل كود php الى vb - بواسطة سعود - 25-09-14, 12:31 AM
RE: تحويل كود php الى vb - بواسطة vbnet - 25-09-14, 07:47 AM
RE: تحويل كود php الى vb - بواسطة سعود - 26-09-14, 03:55 AM
RE: تحويل كود php الى vb - بواسطة سعود - 26-09-14, 04:11 AM
RE: تحويل كود php الى vb - بواسطة سعود - 26-09-14, 04:21 AM
RE: تحويل كود php الى vb - بواسطة vbnet - 26-09-14, 05:26 AM
RE: تحويل كود php الى vb - بواسطة سعود - 26-09-14, 06:51 AM
RE: تحويل كود php الى vb - بواسطة سعود - 26-09-14, 06:57 AM
RE: تحويل كود php الى vb - بواسطة vbnet - 26-09-14, 07:30 AM
RE: تحويل كود php الى vb - بواسطة سعود - 26-09-14, 04:03 PM
RE: تحويل كود php الى vb - بواسطة vbnet - 26-09-14, 06:14 PM
RE: تحويل كود php الى vb - بواسطة سعود - 26-09-14, 07:01 PM

المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] الرجاء المساعدة فى تحويل قالب Html الى WP ابراهيم حورس 1 1,832 17-07-16, 02:36 AM
آخر رد: ابراهيم حورس

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم