Example #1
0
function user_register($username, $password, $member_type = 0, $email, $uc_reg = true)
{
    global $db, $timestamp, $_CFG, $online_ip, $QS_pwdhash;
    $member_type = intval($member_type);
    $ck_username = get_user_inusername($username);
    $ck_email = get_user_inemail($email);
    if ($member_type == 0) {
        return -1;
    } elseif (!empty($ck_username)) {
        return -2;
    } elseif (!empty($ck_email)) {
        return -3;
    }
    $pwd_hash = randstr();
    $password_hash = md5(md5($password) . $pwd_hash . $QS_pwdhash);
    $setsqlarr['username'] = $username;
    $setsqlarr['password'] = $password_hash;
    $setsqlarr['pwd_hash'] = $pwd_hash;
    $setsqlarr['email'] = $email;
    $setsqlarr['utype'] = intval($member_type);
    $setsqlarr['reg_time'] = $timestamp;
    $setsqlarr['reg_ip'] = $online_ip;
    $insert_id = inserttable(table('members'), $setsqlarr, true);
    if ($member_type == "1") {
        if (!$db->query("INSERT INTO " . table('members_points') . " (uid) VALUES ('{$insert_id}')")) {
            return false;
        }
        if (!$db->query("INSERT INTO " . table('members_setmeal') . " (uid) VALUES ('{$insert_id}')")) {
            return false;
        }
        $points = get_cache('points_rule');
        include_once QISHI_ROOT_PATH . 'include/fun_company.php';
        set_consultant($insert_id);
        if ($points['reg_points']['value'] > 0) {
            report_deal($insert_id, $points['reg_points']['type'], $points['reg_points']['value']);
            $operator = $points['reg_points']['type'] == "1" ? "+" : "-";
            write_memberslog($insert_id, 1, 9001, $username, "新注册会员,({$operator}{$points['reg_points']['value']}),(剩余:{$points['reg_points']['value']})", 1, 1010, "注册会员系统自动赠送积分", "{$operator}{$points['reg_points']['value']}", "{$points['reg_points']['value']}");
            //积分变更记录
            write_setmeallog($insert_id, $username, "注册会员系统自动赠送:({$operator}{$points['reg_points']['value']}),(剩余:{$points['reg_points']['value']})", 1, '0.00', '1', 1, 1);
        }
        if ($_CFG['reg_service'] > 0) {
            set_members_setmeal($insert_id, $_CFG['reg_service']);
            $setmeal = get_setmeal_one($_CFG['reg_service']);
            write_memberslog($insert_id, 1, 9002, $username, "注册会员系统自动赠送:{$setmeal['setmeal_name']}", 2, 1011, "开通服务(系统赠送)", "-", "-");
            //套餐变更记录
            write_setmeallog($insert_id, $username, "注册会员系统自动赠送:{$setmeal['setmeal_name']}", 1, '0.00', '1', 2, 1);
        }
    }
    if (defined('UC_API') && $uc_reg) {
        include_once QISHI_ROOT_PATH . 'uc_client/client.php';
        $uc_reg_uid = uc_user_register($username, $password, $email);
    }
    write_memberslog($insert_id, $member_type, 1000, $username, "注册成为会员");
    return $insert_id;
}
Example #2
0
function user_register($reg_type, $password, $member_type = 0, $email = "", $mobile = "", $uc_reg = true, $username = "", $weixin_openid = "", $weixin_nickname = "")
{
    global $db, $timestamp, $_CFG, $online_ip, $QS_pwdhash;
    $member_type = intval($member_type);
    $reg_type = intval($reg_type);
    $email = trim($email);
    $email_audit = intval($email_audit);
    $mobile = trim($mobile);
    $ck_email = get_user_inemail($email);
    $ck_mobile = get_user_inmobile($mobile);
    if ($member_type == 0 || $reg_type == 0) {
        return -1;
    } elseif ($reg_type == 2 && !empty($ck_email)) {
        return -2;
    } elseif ($reg_type == 1 && !empty($ck_mobile)) {
        return -3;
    }
    $pwd_hash = randstr();
    $name_rand = randusername();
    $password_hash = md5(md5($password) . $pwd_hash . $QS_pwdhash);
    if (!$username) {
        if ($reg_type == 1) {
            // 手机注册用户名类型  1->手机号      2->前缀+手机号  3->前缀+随机字符
            if ($_CFG['reg_mobile_type'] == "1") {
                $setsqlarr['username'] = $mobile;
            } elseif ($_CFG['reg_mobile_type'] == "2") {
                $setsqlarr['username'] = strtolower($_CFG['reg_prefix'] . $mobile);
            } else {
                $setsqlarr['username'] = strtolower($_CFG['reg_prefix'] . $name_rand);
            }
        } elseif ($reg_type == 2) {
            // 邮箱注册用户名类型  1->邮箱地址      2->前缀+邮箱地址  3->前缀+随机字符
            if ($_CFG['reg_email_type'] == "1") {
                $setsqlarr['username'] = $email;
            } elseif ($_CFG['reg_email_type'] == "2") {
                $setsqlarr['username'] = strtolower($_CFG['email_reg_prefix'] . $email);
            } else {
                $setsqlarr['username'] = strtolower($_CFG['email_reg_prefix'] . $name_rand);
            }
        } else {
            $setsqlarr['username'] = strtolower($_CFG['third_reg_prefix'] . $name_rand);
        }
    } else {
        $ck_uname = get_user_inusername($username);
        if (!empty($ck_uname)) {
            return -4;
        } else {
            $setsqlarr['username'] = $username;
        }
    }
    $setsqlarr['password'] = $password_hash;
    $setsqlarr['pwd_hash'] = $pwd_hash;
    if ($email) {
        $setsqlarr['email'] = $email;
        if ($_CFG['check_reg_email'] == "1" && $reg_type != 3 && $reg_type != 4) {
            $setsqlarr['email_audit'] = 1;
        } else {
            $setsqlarr['email_audit'] = 0;
        }
    }
    if ($mobile) {
        $setsqlarr['mobile'] = $mobile;
        if ($reg_type != 3 && $reg_type != 4) {
            $setsqlarr['mobile_audit'] = 1;
        }
    }
    $setsqlarr['utype'] = $member_type;
    $setsqlarr['reg_time'] = $timestamp;
    $setsqlarr['reg_ip'] = $online_ip;
    $setsqlarr['reg_type'] = 1;
    if ($weixin_openid != '') {
        $setsqlarr['weixin_nick'] = $weixin_nickname;
        $setsqlarr['weixin_openid'] = $weixin_openid;
        $setsqlarr['bindingtime'] = $setsqlarr['reg_time'];
        $w_uid = $db->getone("select uid from " . table("members") . " where weixin_openid='" . $weixin_openid . "'");
        if ($w_uid) {
            return $w_uid['uid'];
        }
    }
    $insert_id = $db->inserttable(table('members'), $setsqlarr, true);
    if ($member_type == "1") {
        $setarr['uid'] = $insert_id;
        if (!$db->inserttable(table("members_points"), $setarr)) {
            return false;
        }
        if (!$db->inserttable(table("members_setmeal"), $setarr)) {
            return false;
        }
        $points = get_cache('points_rule');
        include_once QISHI_ROOT_PATH . 'include/fun_company.php';
        set_consultant($insert_id);
        if ($points['reg_points']['value'] > 0) {
            report_deal($insert_id, $points['reg_points']['type'], $points['reg_points']['value']);
            $operator = $points['reg_points']['type'] == "1" ? "+" : "-";
            write_memberslog($insert_id, 1, 9001, $username, "新注册会员,({$operator}{$points['reg_points']['value']}),(剩余:{$points['reg_points']['value']})", 1, 1010, "注册会员系统自动赠送积分", "{$operator}{$points['reg_points']['value']}", "{$points['reg_points']['value']}");
            //积分变更记录
            write_setmeallog($insert_id, $username, "注册会员系统自动赠送:({$operator}{$points['reg_points']['value']}),(剩余:{$points['reg_points']['value']})", 1, '0.00', '1', 1, 1);
        }
        if ($_CFG['reg_service'] > 0) {
            set_members_setmeal($insert_id, $_CFG['reg_service']);
            $setmeal = get_setmeal_one($_CFG['reg_service']);
            write_memberslog($insert_id, 1, 9002, $username, "注册会员系统自动赠送:{$setmeal['setmeal_name']}", 2, 1011, "开通服务(系统赠送)", "-", "-");
            //套餐变更记录
            write_setmeallog($insert_id, $username, "注册会员系统自动赠送:{$setmeal['setmeal_name']}", 1, '0.00', '1', 2, 1);
        }
    } elseif ($member_type == '2') {
        $setarr['uid'] = $insert_id;
        if (!$db->inserttable(table("members_points"), $setarr)) {
            return false;
        }
        $points = get_cache('points_rule');
        include_once QISHI_ROOT_PATH . 'include/fun_personal.php';
        if ($points['reg_per_points']['value'] > 0) {
            report_deal($insert_id, $points['reg_per_points']['type'], $points['reg_per_points']['value']);
            $operator = $points['reg_per_points']['type'] == "1" ? "+" : "-";
            write_memberslog($insert_id, 2, 9001, $username, "新注册会员,({$operator}{$points['reg_per_points']['value']}),(剩余:{$points['reg_per_points']['value']})", 2, 1010, "注册会员系统自动赠送积分", "{$operator}{$points['reg_per_points']['value']}", "{$points['reg_per_points']['value']}");
        }
    } elseif ($member_type == '4') {
        $setarr['uid'] = $insert_id;
        if (!$db->inserttable(table("members_points"), $setarr)) {
            return false;
        }
        if (!$db->inserttable(table("members_train_setmeal"), $setarr)) {
            return false;
        }
        $points = get_cache('points_rule');
        if ($points['trainreg_points']['value'] > 0) {
            include_once QISHI_ROOT_PATH . 'include/fun_train.php';
            report_deal($insert_id, $points['trainreg_points']['type'], $points['trainreg_points']['value']);
            $operator = $points['trainreg_points']['type'] == "1" ? "+" : "-";
            write_memberslog($insert_id, 4, 9101, $username, "新注册会员,({$operator}{$points['trainreg_points']['value']}),(剩余:{$points['trainreg_points']['value']})");
            write_setmeallog($insert_id, $username, "注册会员系统自动赠送:({$operator}{$points['trainreg_points']['value']}),(剩余:{$points['trainreg_points']['value']})", 1, '0.00', '1', 1, 4);
        }
        if ($_CFG['train_reg_service'] > 0) {
            include_once QISHI_ROOT_PATH . 'include/fun_train.php';
            set_members_setmeal($insert_id, $_CFG['train_reg_service']);
            $setmeal = get_setmeal_one($_CFG['train_reg_service']);
            write_memberslog($insert_id, 4, 9102, $username, "注册会员系统自动赠送:{$setmeal['setmeal_name']}");
            write_setmeallog($insert_id, $username, "注册会员系统自动赠送:{$setmeal['setmeal_name']}", 1, '0.00', '1', 2, 4);
        }
    } elseif ($member_type == '3') {
        $setarr['uid'] = $insert_id;
        if (!$db->inserttable(table("members_points"), $setarr)) {
            return false;
        }
        if (!$db->inserttable(table("members_hunter_setmeal"), $setarr)) {
            return false;
        }
        $points = get_cache('points_rule');
        if ($points['hunterreg_points']['value'] > 0) {
            include_once QISHI_ROOT_PATH . 'include/fun_hunter.php';
            report_deal($insert_id, $points['hunterreg_points']['type'], $points['hunterreg_points']['value']);
            $operator = $points['hunterreg_points']['type'] == "1" ? "+" : "-";
            write_memberslog($insert_id, 3, 9201, $username, "新注册会员,({$operator}{$points['hunterreg_points']['value']}),(剩余:{$points['hunterreg_points']['value']})");
            write_setmeallog($insert_id, $username, "注册会员系统自动赠送:({$operator}{$points['hunterreg_points']['value']}),(剩余:{$points['hunterreg_points']['value']})", 1, '0.00', '1', 1, 3);
        }
        if ($_CFG['hunter_reg_service'] > 0) {
            include_once QISHI_ROOT_PATH . 'include/fun_hunter.php';
            set_members_setmeal($insert_id, $_CFG['hunter_reg_service']);
            $setmeal = get_setmeal_one($_CFG['hunter_reg_service']);
            write_memberslog($insert_id, 3, 9202, $username, "注册会员系统自动赠送:{$setmeal['setmeal_name']}");
            write_setmeallog($insert_id, $username, "注册会员系统自动赠送:{$setmeal['setmeal_name']}", 1, '0.00', '1', 2, 3);
        }
    }
    if (defined('UC_API') && $uc_reg) {
        include_once QISHI_ROOT_PATH . 'uc_client/client.php';
        $uc_reg_uid = uc_user_register($username, $password, $email);
    }
    write_memberslog($insert_id, $member_type, 1000, $username, "注册成为会员");
    return $insert_id;
}
Example #3
0
function locoyspider_user_register($email = NULL, $utype = '1')
{
    global $db, $locoyspider, $QS_pwdhash, $_CFG;
    $setsqlarr['username'] = $locoyspider['reg_usname'] . uniqid() . time();
    $setsqlarr['pwd_hash'] = res_randstr();
    //reg_password
    if ($locoyspider['reg_password_tpye'] == "1") {
        $pwd = $setsqlarr['username'];
    } elseif ($locoyspider['reg_password_tpye'] == "3") {
        $pwd = $locoyspider['reg_password'];
    } else {
        $pwd = res_randstr(7);
        //长度为7的随机字符串
    }
    //email
    if (empty($email) || !preg_match("/^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*\$/", $email)) {
        $email = time() . uniqid() . $locoyspider['reg_email'];
    }
    $setsqlarr['password'] = md5(md5($pwd) . $setsqlarr['pwd_hash'] . $QS_pwdhash);
    $setsqlarr['email'] = $email;
    $setsqlarr['utype'] = $utype;
    $setsqlarr['reg_time'] = time();
    $setsqlarr['robot'] = 1;
    //标记为采集
    $reg_id = $db->inserttable(table('members'), $setsqlarr, true);
    if (!$reg_id) {
        return false;
    }
    if ($utype == '1') {
        if (!$db->query("INSERT INTO " . table('members_points') . " (uid) VALUES ('{$reg_id}')")) {
            return false;
        }
        if (!$db->query("INSERT INTO " . table('members_setmeal') . " (uid) VALUES ('{$reg_id}')")) {
            return false;
        }
        $points = get_cache('points_rule');
        include_once QISHI_ROOT_PATH . 'include/fun_company.php';
        set_consultant($reg_id);
        if ($points['reg_points']['value'] > 0) {
            report_deal($reg_id, $points['reg_points']['type'], $points['reg_points']['value']);
            $operator = $points['reg_points']['type'] == "1" ? "+" : "-";
            write_memberslog($reg_id, 1, 9001, $username, "新注册会员,({$operator}{$points['reg_points']['value']}),(剩余:{$points['reg_points']['value']})", 1, 1010, "注册会员系统自动赠送积分", "{$operator}{$points['reg_points']['value']}", "{$points['reg_points']['value']}");
            //积分变更记录
            write_setmeallog($reg_id, $username, "注册会员系统自动赠送:({$operator}{$points['reg_points']['value']}),(剩余:{$points['reg_points']['value']})", 1, '0.00', '1', 1, 1);
        }
        if ($_CFG['reg_service'] > 0) {
            set_members_setmeal($reg_id, $_CFG['reg_service']);
            $setmeal = get_setmeal_one($_CFG['reg_service']);
            write_memberslog($reg_id, 1, 9002, $username, "注册会员系统自动赠送:{$setmeal['setmeal_name']}", 2, 1011, "开通服务(系统赠送)", "-", "-");
            //套餐变更记录
            write_setmeallog($reg_id, $username, "注册会员系统自动赠送:{$setmeal['setmeal_name']}", 1, '0.00', '1', 2, 1);
        }
    }
    return $reg_id;
}