Example #1
0
/**
 * 验证登录账号、密码、验证码,同过的话进行登录处理
 * 
 * @param      string      $username 用户名
 * @param      string      $password 密码
 * @param      string      $checkcode 验证码
 * @param      int         $usecookie 是否记录到cookie,下次自动登录。0表示不记录,大于0表示cookie保存时间
 * @param      bool        $encode 密码是否已经加密,默认否
 * @param      bool        $needcheck 是否需要验证码,默认是
 * @access     public
 * @return     int         0 正常, -1 用户名为空 -2 密码为空 -3 用户名或者密码为空 -4 用户名不存在 -5 密码错误 -6 用户名或密码错误 -7 验证码错误 -8 帐号已经有人登陆 -9 用户属于游客组
 */
function jieqi_logincheck($username = '', $password = '', $checkcode = '', $usecookie = 0, $encode = false, $needcheck = true)
{
    $ret = jieqi_loginpass($username, $password, $checkcode, $usecookie, $encode, $needcheck);
    if (is_object($ret)) {
        return jieqi_loginprocess($ret, $usecookie);
    } elseif ($ret == -10) {
        //临时用户,未设置密码,ucenter存在时候自动更新密码,否则返回密码错误
        include_once JIEQI_ROOT_PATH . '/include/funuser.php';
        if (function_exists('uc_user_login')) {
            list($uid, $uname, $upass, $uemail) = uc_user_login($username, $password);
            if ($uid > 0) {
                include_once JIEQI_ROOT_PATH . '/class/users.php';
                $users_handler =& JieqiUsersHandler::getInstance('JieqiUsersHandler');
                $userobj = $users_handler->getByname($username);
                if (is_object($userobj)) {
                    $userobj->setVar('pass', $users_handler->encryptPass($upass));
                    $userobj->setVar('email', $uemail);
                    $users_handler->insert($userobj);
                    return jieqi_loginprocess($userobj, $usecookie);
                }
            }
        }
        return -5;
    } else {
        return $ret;
    }
}
Example #2
0
File: uc.php Project: thu0ng91/jmc
 function synlogin($get, $post)
 {
     if (!API_SYNLOGIN) {
         return API_RETURN_FORBIDDEN;
     }
     $uid = intval($get['uid']);
     $username = $get['username'];
     $jieqiUsers = $this->userhandler->getByname($username);
     if (!is_object($jieqiUsers)) {
         //用户不存在自动注册
         include_once JIEQI_ROOT_PATH . '/uc_client/client.php';
         if ($data = uc_get_user($username)) {
             list($uid, $username, $email) = $data;
             //检查email是否重复
             if ($this->userhandler->getCount(new Criteria('email', $email, '=')) > 0) {
                 return API_RETURN_FAILED;
             } else {
                 //注册新用户
                 include_once JIEQI_ROOT_PATH . '/lib/text/textfunction.php';
                 global $jieqiConfigs;
                 jieqi_getconfigs('system', 'configs');
                 $jieqiUsers = $this->userhandler->create();
                 $jieqiUsers->setVar('siteid', JIEQI_SITE_ID);
                 $jieqiUsers->setVar('uname', $username);
                 $jieqiUsers->setVar('name', $username);
                 $jieqiUsers->setVar('pass', '');
                 $jieqiUsers->setVar('groupid', JIEQI_GROUP_USER);
                 $jieqiUsers->setVar('regdate', JIEQI_NOW_TIME);
                 $jieqiUsers->setVar('initial', jieqi_getinitial($username));
                 $jieqiUsers->setVar('sex', 0);
                 $jieqiUsers->setVar('email', $email);
                 $jieqiUsers->setVar('url', '');
                 $jieqiUsers->setVar('avatar', 0);
                 $jieqiUsers->setVar('workid', 0);
                 $jieqiUsers->setVar('qq', '');
                 $jieqiUsers->setVar('icq', '');
                 $jieqiUsers->setVar('msn', '');
                 $jieqiUsers->setVar('mobile', '');
                 $jieqiUsers->setVar('sign', '');
                 $jieqiUsers->setVar('intro', '');
                 $jieqiUsers->setVar('setting', '');
                 $jieqiUsers->setVar('badges', '');
                 $jieqiUsers->setVar('lastlogin', JIEQI_NOW_TIME);
                 $jieqiUsers->setVar('showsign', 0);
                 $jieqiUsers->setVar('viewemail', 0);
                 $jieqiUsers->setVar('notifymode', 0);
                 $jieqiUsers->setVar('adminemail', 0);
                 $jieqiUsers->setVar('monthscore', 0);
                 $jieqiUsers->setVar('experience', intval($jieqiConfigs['system']['scoreregister']));
                 $jieqiUsers->setVar('score', intval($jieqiConfigs['system']['scoreregister']));
                 $jieqiUsers->setVar('egold', 0);
                 $jieqiUsers->setVar('esilver', 0);
                 $jieqiUsers->setVar('credit', 0);
                 $jieqiUsers->setVar('goodnum', 0);
                 $jieqiUsers->setVar('badnum', 0);
                 $jieqiUsers->setVar('isvip', 0);
                 $jieqiUsers->setVar('overtime', 0);
                 $jieqiUsers->setVar('state', 0);
                 if (!$this->userhandler->insert($jieqiUsers)) {
                     return API_RETURN_FAILED;
                 }
             }
         } else {
             return API_RETURN_FAILED;
         }
     }
     if (is_object($jieqiUsers)) {
         //header('P3P: CP="CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"');
         include_once JIEQI_ROOT_PATH . '/include/checklogin.php';
         jieqi_loginprocess($jieqiUsers);
         return API_RETURN_SUCCEED;
     } else {
         return API_RETURN_FAILED;
     }
 }