|
@@ -269,6 +269,46 @@ class loginControl extends mobileHomeControl
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ public function resetpassOp()
|
|
|
+ {
|
|
|
+ $mobile = trim($_POST['mobile']);
|
|
|
+ $password = trim($_POST['password']);
|
|
|
+ $code = trim($_POST['code']);
|
|
|
+
|
|
|
+ $validator = new Validate();
|
|
|
+ $validator->setValidate(Validate::verify_mobile($mobile));
|
|
|
+ $validator->setValidate(Validate::verify_password($password));
|
|
|
+ $validator->setValidate(Validate::smscode($code));
|
|
|
+ $err = $validator->validate();
|
|
|
+ if ($err != '') {
|
|
|
+ return joutput_error(errcode::ErrParamter, $err);
|
|
|
+ }
|
|
|
+
|
|
|
+ $model = Model('member');
|
|
|
+ $ret = $model->where(array('member_mobile' => $mobile))->find();
|
|
|
+ if(empty($ret) || count($ret) == 0) {
|
|
|
+ return joutput_error(errcode::ErrUserExisted, "用户不存在.");
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ $key = self::gen_mobile_code($mobile);
|
|
|
+ $ret = rcache($key, 'member');
|
|
|
+ if (!empty($ret) && $ret['code'] == $code)
|
|
|
+ {
|
|
|
+ $success = $model->where(array('member_mobile' => $mobile))->update(array('member_type' => 0,'member_passwd' => md5($password)));
|
|
|
+ if($success) {
|
|
|
+ return joutput_data(NULL);
|
|
|
+ } else {
|
|
|
+ return joutput_error(errcode::ErrDB,"DB error.");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ return joutput_error(errcode::ErrSmscode,"错误的验证码.");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
public function getinfoOp()
|
|
|
{
|
|
|
static $field = 'member_id,member_mobile,member_name,member_truename,member_avatar,member_sex,member_birthday,member_email,member_email_bind';
|
|
@@ -335,7 +375,10 @@ class loginControl extends mobileHomeControl
|
|
|
|
|
|
public function getcodeOp()
|
|
|
{
|
|
|
+ static $types = array('register','resetpass','getbonus');
|
|
|
+
|
|
|
$mobile = trim($_POST['mobile']);
|
|
|
+ $type = trim($_POST['type']);
|
|
|
|
|
|
$validator = new Validate();
|
|
|
$validator->setValidate(Validate::verify_mobile($mobile));
|
|
@@ -343,17 +386,30 @@ class loginControl extends mobileHomeControl
|
|
|
if ($err != '') {
|
|
|
return joutput_error(errcode::ErrParamter, $err);
|
|
|
}
|
|
|
+ if(!in_array($type,$types)) {
|
|
|
+ return joutput_error(errcode::ErrParamter, "错误的类型参数: type={$type}");
|
|
|
+ }
|
|
|
+
|
|
|
+ if($type == 'register') {
|
|
|
+ $itype = Sms::register_code;
|
|
|
+ } elseif($type == 'resetpass') {
|
|
|
+ $itype = Sms::resetpass_code;
|
|
|
+ } elseif($type == 'getbonus') {
|
|
|
+ $itype = Sms::bonus_code;
|
|
|
+ }
|
|
|
+
|
|
|
+ $itype = Sms::register_code;
|
|
|
|
|
|
$sms = new Sms();
|
|
|
$code = makeSmscode();
|
|
|
- $status = $sms->send($mobile, array('code' => $code, 'type' => Sms::register_code, 'time' => '5'));
|
|
|
+ $status = $sms->send($mobile, array('code' => $code, 'type' => $itype, 'time' => '5'));
|
|
|
|
|
|
if ($status == 0) {
|
|
|
$key = $this->gen_mobile_code($mobile);
|
|
|
wcache($key, array('code' => $code, 'mobile' => $mobile), 'member', self::code_expire);
|
|
|
joutput_data(NULL);
|
|
|
} else {
|
|
|
- return joutput_error(errcode::ErrSms, "send error=" . $status);
|
|
|
+ return joutput_error(errcode::ErrSms, "send error={$status}.");
|
|
|
}
|
|
|
}
|
|
|
|