public function actionAdd($password, $discuz_uid, $type = 'User') { //TODO 这个之后一定要写进配置文件而非硬编码 if ($password !== 'ngpt_2333') { Yii::warning("Wrong Password!!!!!!" . $password . "uid : {$discuz_uid}"); return ['result' => 'failed', 'extra' => 'wrong password']; } if (is_numeric($discuz_uid) && intval($discuz_uid) <= 0) { Yii::warning("uid not a number : {$discuz_uid}"); return ['result' => 'failed', 'extra' => 'discuz_uid should be numeric']; } $discuz_uid = intval($discuz_uid); /** @var User $user */ $user = User::findOne(['discuz_user_id' => $discuz_uid]); if (!empty($user)) { return ['result' => 'succeed', 'extra' => $user->passkey]; } $user = new User(); $user->discuz_user_id = $discuz_uid; $user->passkey = User::genPasskey(); Yii::info($user->attributes); if ($user->insert()) { return ['result' => 'succeed', 'extra' => $user->passkey]; } else { Yii::warning("Insert to user table failed"); return ['result' => 'failed', 'extra' => 'Database error']; } }
public function actionUser() { User::deleteAll(); $this->fdb->createCommand('DELETE FROM ngpt_ngpt_user')->query(); //获取所有的User $offset = 0; $limit = 1000; QUERY: $sql = <<<SQL SELECT u.*,m.adminid FROM ngpt_ngpt_users u LEFT JOIN ngpt_common_member m ON u.uid=m.uid LIMIT {$limit} OFFSET {$offset}; SQL; $res = $this->fdb->createCommand($sql)->queryAll(); foreach ($res as $ouser) { $user = new User(); $user->stat_up = $ouser['uploaded']; $user->stat_down = $ouser['downloaded']; $user->real_up = $ouser['realup']; $user->real_down = $ouser['realdown']; $user->is_valid = $ouser['candownload'] == '1'; $user->passkey = $ouser['passkey']; $user->discuz_user_id = $ouser['uid']; if ($ouser['adminid'] != 0) { $user->priv = 'Admin'; } var_dump($ouser); if (!$user->insert()) { var_dump($user->errors); return; } //进行ngpt的数据迁移 $msql = <<<SQL INSERT INTO ngpt_ngpt_user(uid, passkey, candownload) VALUES ({$ouser['uid']},"{$user->passkey}", {$user->is_valid}); SQL; $res = $this->fdb->createCommand($msql)->query(); if (!$res) { var_dump($msql); return; } } if (count($res)) { $offset += $limit; goto QUERY; } return; }
public function RegisterNewUser($mobile, $password, $salt) { date_default_timezone_set('Asia/Shanghai'); $registerTime = date('Y-m-d H:i:s', time()); $user = new User(); $user->nickName = $mobile; $user->password = $password; $user->mobile = $mobile; $user->registerTime = $registerTime; $user->lastLoginTime = $registerTime; $user->salt = $salt; $user->insert(); }