Example #1
0
 /**
  *  用户升级 主要用于核实用的等级
  */
 public function uplevel(&$aUser)
 {
     if (empty($aUser)) {
         return false;
     }
     $aUser['level'] = Helper::uint($aUser['level']);
     $aUser['exp'] = $aUser['wintimes'] * 2 + $aUser['losetimes'];
     $grade = 0;
     //获得级别配置
     $levels = Core_Level::getLevel();
     foreach ((array) $levels as $key => $aLevel) {
         if ($aUser['exp'] >= $aLevel[1]) {
             $grade = $aLevel[0];
             //当前级别
         } else {
             break;
         }
     }
     if ($grade > 0 && $grade <= 50) {
         if ($grade == $aUser['level']) {
             //如果计算出来的等级和userinfo 里的一致,则不更新
             return false;
         }
         $query = "UPDATE {$this->memberinfo} SET exp={$aUser['exp']}, level={$grade} WHERE mid='{$aUser['mid']}' LIMIT 1";
         Loader_Mysql::dbmaster()->query($query);
         //重置userinfo里的level
         $aUser['level'] = $grade;
     }
 }
Example #2
0
 /**
  * 用户资料更新
  * @param int $mid
  * @param array $fields
  **/
 public function updateInfo($mid, $fields = array())
 {
     $update = "";
     foreach ($fields as $key => $val) {
         if (is_null($val)) {
             continue;
         }
         $update .= $key . "='" . $val . "',";
     }
     $update = substr($update, 0, -1);
     $sql = "UPDATE {$this->memberinfo} SET {$update} WHERE mid={$mid} LIMIT 1";
     $flag = Loader_Mysql::dbmaster()->query($sql);
     if ($flag) {
         //更新成功 更新缓存
         $aUser = Member::factory()->getOneById($mid, false);
         foreach ($fields as $key => $val) {
             if (isset($aUser[$key])) {
                 $aUser[$key] = $val;
             }
         }
         //更新缓存
         $cacheKey = Core_Keys::getOneById($mid);
         return Loader_Memcached::minfo($mid)->set($cacheKey, Values::combine(Values::getmb(), $aUser), 3 * 24 * 3600);
     }
     return false;
 }
Example #3
0
 /**
  * boyaa账号登录
  * @param String $boyaa_id			表字段名为memail 
  * @param String $device_no
  * @return int
  */
 public function iphoneLoginNew($boyaa_id, $device_no)
 {
     $boyaa_id = Loader_Mysql::dbmaster()->escape($boyaa_id);
     $device_no = Loader_Mysql::dbmaster()->escape($device_no);
     if ($boyaa_id) {
         $query = "SELECT sitemid,memail \n\t\t\t          FROM {$this->guestios} \n\t\t\t\t\t  WHERE memail='{$boyaa_id}' \n\t\t\t\t\t  LIMIT 1";
         $aInfo = Loader_Mysql::dbmaster()->getOne($query);
     }
     if ($aInfo) {
         return $aInfo['sitemid'];
     }
     if (empty($aInfo)) {
         //博雅帐号注册
         $sql = " NSERT INTO {$this->guestios} SET device_no='{$device_no}', memail='{$boyaa_id}'";
         Loader_Mysql::dbmaster()->query($sql);
         $aInfo['sitemid'] = Loader_Mysql::dbmaster()->insertID();
     }
     /**
     		  elseif ( $aInfo['sitemid'] && ( !is_numeric($aInfo['memail']) ) ) {		//绑定boyaa_id 
     			$sql = "
     				UPDATE {$this->iphonemembers}
     				SET memail='{$boyaa_id}'
     				WHERE sitemid={$aInfo['sitemid']}
     				LIMIT 1
     			";
     			Loader_Mysql::dbmaster()->query($sql);
     		}*/
     return (int) $aInfo['sitemid'];
 }