125 lines
4.0 KiB
PHP
125 lines
4.0 KiB
PHP
<?php
|
|
namespace Member\Model;
|
|
use Think\Model;
|
|
use Org\MobileVerify\MobileVerifyCode;
|
|
|
|
class MemberModel extends Model{
|
|
protected $tableName="member";
|
|
|
|
/**
|
|
* 验证字段
|
|
* @var array
|
|
*/
|
|
protected $_validate=array(
|
|
//array("字段","验证规则","错误提示",["验证条件","附加条件","验证时间"]),
|
|
array("truename","require","企业名称不能为空"),
|
|
array("guhua","require","固定电话不能为空"),
|
|
array("zhuyinghangye","require","请选择主营行业"),
|
|
array("kehuxingzhi","require","请选择客户性质"),
|
|
array("lianxiren","require","联系人不能为空"),
|
|
array("lianxiren_mobile","require","联系人手机号不能为空"),
|
|
array("email","require","邮箱不能为空"),
|
|
array("province","require","请选择省"),
|
|
array("city","require","请选择市"),
|
|
array("area","require","请选择区"),
|
|
);
|
|
|
|
/**
|
|
* 修改密码
|
|
*/
|
|
public function updatePassword(){
|
|
$rule = array(
|
|
array("oldpassword","require","请输入当前密码"),
|
|
array("password","require","请输入密码"),
|
|
array("password","6,40","密码长度需要6位以上",2,"length"),
|
|
array('repassword','password','确认密码不正确',0,'confirm'), // 验证确认密码是否和密码一致
|
|
);
|
|
$this->_validate = $rule;
|
|
$data = parent::create();
|
|
if(!$data){
|
|
return false;
|
|
}
|
|
$oldpassword = I('post.oldpassword');
|
|
$password = I('post.password');
|
|
if($oldpassword == $password){
|
|
$this->error = '当前密码和新密码不能相同';
|
|
return false;
|
|
}
|
|
$where['password'] = md6(I('post.oldpassword'));
|
|
$where['member_id'] = session("member.member_id");
|
|
$memberInfo = $this->where($where)->field("member_id")->find();
|
|
if(!$memberInfo){
|
|
$this->error = '请输入正确密码';
|
|
return false;
|
|
}
|
|
$memberInfo['password'] = md6($password);
|
|
$this->error = '密码修改成功';
|
|
return parent::save($memberInfo);
|
|
}
|
|
|
|
|
|
/**
|
|
* 发送修改绑定手机号短信验证码
|
|
* @param $mobile
|
|
* @return bool
|
|
*/
|
|
public function sendCode($mobile){
|
|
$mVC = new MobileVerifyCode();
|
|
return $mVC->send_code($mobile);
|
|
}
|
|
|
|
/**
|
|
* 发送修改绑定手机号短信验证码
|
|
* @param $mobile
|
|
* @return bool
|
|
*/
|
|
public function checkCode(){
|
|
$mVC = new MobileVerifyCode();
|
|
if(!$mVC->check(session('member.mobile'),I('post.verifycode'))){
|
|
$this->error = $mVC->error;
|
|
return false;
|
|
}
|
|
$this->error = "验证码正确";
|
|
session("update_mobile",1);
|
|
return true;
|
|
}
|
|
|
|
/**
|
|
* 修改手机号
|
|
* @param $mobile
|
|
* @return bool
|
|
*/
|
|
public function checkCodeAndSaveMobile(){
|
|
$mobile = I("post.mobile");
|
|
$rules = array(
|
|
array("mobile","require","手机号码不能为空"),
|
|
array('mobile','/^1[3|4|5|7|8][0-9]\d{4,8}$/','手机号码错误!','0','regex',1),
|
|
array('mobile','','手机号码已存在!',0,'unique',1), // 在新增的时候验证手机号码字段是否唯一
|
|
array("verifycode","require","请输入短信验证码"),
|
|
array("verifycode","6","短信验证码为6位",2,'length'),
|
|
);
|
|
$this->_validate = $rules;
|
|
$datas = parent::create();
|
|
if(!$datas){
|
|
return false;
|
|
}
|
|
|
|
$mVC = new MobileVerifyCode();
|
|
if(!$mVC->check($mobile,I('post.verifycode'))){
|
|
$this->error = $mVC->error;
|
|
return false;
|
|
}
|
|
|
|
session("update_mobile",null);
|
|
$data["member_id"] = session("member.member_id");
|
|
$data['mobile'] = $mobile;
|
|
//更换mobile session
|
|
$session_data=session("member");
|
|
$session_data["mobile"]=$mobile;
|
|
session("member",$session_data);
|
|
//
|
|
return parent::save($data);
|
|
}
|
|
|
|
|
|
} |