123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201 |
- <?php
- /**
- * 前台登录 退出操作
- *
- *
- *
- *
- */
- //use Shopnc\Tpl;
- defined('InShopNC') or exit('Access Invalid!');
- class loginControl extends mobileHomeControl
- {
- const mobile_login = 0;
- const anonymous_login = 1;
- const wxopen_login = 2;
- public function __construct(){
- parent::__construct();
- }
- private function authen()
- {
- }
-
- /**
- * 登录
- */
-
- public function indexOp()
- {
- if(!in_array($_POST['client'], $this->client_type_array)) {
- output_error('登录失败');
- return;
- }
- $type = $_POST['type'];
- $authenid = $_POST['authenid'];
- $array = array();
- if($type == mobile_login)
- {
- $array['member_mobile'] = $authenid;
- if(empty($authenid) || empty($_POST['password'])) {
- output_error('登录失败');
- return;
- }
- }
- elseif($type == anonymous_login)
- {
- $array['member_mobile'] = $authenid;
- if(empty($authenid)) {
- }
- }
- elseif($type == wxopen_login)
- {
- }
- else
- {
- }
-
- $model_member = Model('member');
- $member_info = $model_member->getMemberInfo($array);
- if(!empty($member_info))
- {
- $token = $this->_get_token($member_info['member_id'], $member_info['member_name'], $_POST['client']);
- if($token) {
- output_data(array('username' => $member_info['member_name'], 'key' => $token));
- } else {
- output_error('登录失败');
- }
- }
- else {
- output_error('用户名密码错误');
- }
- }
- public function genanonymousOp()
- {
- $info = $_POST['info'];
- if(empty($info)) {
- output_error('获取匿名身份失败.');
- }
- else
- {
- $anonymous_id = md5($info);
- $model_member = Model('member');
-
- $conditions = array();
- $conditions['anonymous_id'] = $anonymous_id;
-
- $user = $model_member->getMemberInfo($conditions,'member_id');
- if(empty($user))
- {
- $conditions['member_name'] = 'anonymous';
- $conditions['member_type'] = anonymous_login;
- $ret = $model_member->addMember($conditions);
- if($ret != false) {
- output_error('获取匿名身份失败.');
- } else {
- $json = array('userid' => $anonymous_id);
- }
- }
- else
- {
- }
- }
- }
- /**
- * 登录生成token
- */
- private function _get_token($member_id, $member_name, $client)
- {
- $model_mb_user_token = Model('mb_user_token');
- //重新登录后以前的令牌失效
- //暂时停用
- //$condition = array();
- //$condition['member_id'] = $member_id;
- //$condition['client_type'] = $_POST['client'];
- //$model_mb_user_token->delMbUserToken($condition);
- //生成新的token
- $mb_user_token_info = array();
- $token = md5($member_name . strval(TIMESTAMP) . strval(rand(0,999999)));
- $mb_user_token_info['member_id'] = $member_id;
- $mb_user_token_info['member_name'] = $member_name;
- $mb_user_token_info['token'] = $token;
- $mb_user_token_info['login_time'] = TIMESTAMP;
- $mb_user_token_info['client_type'] = $_POST['client'];
- $result = $model_mb_user_token->addMbUserToken($mb_user_token_info);
- if($result) {
- return $token;
- } else {
- return null;
- }
- }
- /**
- * 获取验证码
- */
- private function gencheckcode()
- {
- return '1234';
- }
- private function send_sms($phone,$code,$type)
- {
- }
- public function chekcodeOp() {
- $phone = $_POST['phonenumber'];
- $code = gencheckcode();
- send_sms($phone,$code,1);
- }
-
- /**
- * 注册
- */
- public function registerOp()
- {
- $model_member = Model('member');
- $register_info = array();
- $register_info['username'] = $_POST['username'];
- $register_info['password'] = $_POST['password'];
- $register_info['password_confirm'] = $_POST['password_confirm'];
- $register_info['checkcode'] = $_POST['password_confirm'];
- $register_info['email'] = $_POST['email'];
-
- $member_info = $model_member->register($register_info);
- if(!isset($member_info['error']))
- {
- $token = $this->_get_token($member_info['member_id'], $member_info['member_name'], $_POST['client']);
- if($token) {
- output_data(array('username' => $member_info['member_name'], 'key' => $token));
- } else {
- output_error('注册失败');
- }
- } else {
- output_error($member_info['error']);
- }
- }
- }
|