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; }
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; }
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; }