コード例 #1
0
ファイル: login.php プロジェクト: wangjiang988/ukshop
 /**
  * 登录操作
  *
  */
 public function indexOp()
 {
     $lang = Uk86Language::uk86_getLangContent();
     $model_member = Model('member');
     //检查登录状态
     $model_member->checkloginMember();
     $script = "document.getElementsByName('codeimage')[0].src='" . APP_SITE_URL . "/index.php?act=seccode&op=makecode&nchash='+NC_HASH+'&t=' + Math.random();";
     $result = uk86_chksubmit(true, true, 'num');
     if ($result !== false) {
         if ($result === -11) {
             showDialog(L('login_index_login_illegal'), '', 'error', $script, 2);
         } elseif ($result === -12) {
             showDialog(L('login_index_wrong_checkcode'), '', 'error', $script, 2);
         }
         if (Uk86process::uk86_islock('login')) {
             showDialog(L('login_index_op_repeat'), APP_SITE_URL);
         }
         $array = array();
         $array['member_name'] = $_POST['user_name'];
         $array['member_passwd'] = md5($_POST['password']);
         $member_info = $model_member->infoMember($array);
         if (is_array($member_info) and !empty($member_info)) {
             if (!$member_info['member_state']) {
                 showDialog($lang['login_index_account_stop']);
             }
         } else {
             Uk86process::uk86_addprocess('login');
             showDialog($lang['login_index_login_fail'], '', 'error', $script, 2);
         }
         $model_member->createSession($member_info);
         Uk86process::uk86_clear('login');
         // cookie中的cart存入数据库
         Model('cart')->mergecart($member_info, $_SESSION['store_id']);
         // cookie中的浏览记录存入数据库
         Model('goods_browse')->mergebrowse($_SESSION['member_id'], $_SESSION['store_id']);
         //添加会员U币
         $model_member->addPoint($member_info);
         showDialog(L('login_index_login_success'), 'reload', 'succ', '', 2);
     }
     if (empty($_GET['ref_url'])) {
         $_GET['ref_url'] = uk86_getReferer();
     }
     Tpl::output('html_title', C('site_name') . ' - ' . $lang['login_index_login']);
     Tpl::output('nchash', uk86_getNchash());
     if ($_GET['inajax'] == 1) {
         Tpl::showpage('login_inajax', 'null_layout');
     } else {
         return false;
     }
 }
コード例 #2
0
ファイル: login.php プロジェクト: wangjiang988/ukshop
 /**
  * 不进行父类的登录验证,所以增加构造方法重写了父类的构造方法
  */
 public function __construct()
 {
     Uk86Language::uk86_read('common,layout,login');
     $result = uk86_chksubmit(true, true, 'num');
     if ($result) {
         if ($result === -11) {
             uk86_showMessage('非法请求');
         } elseif ($result === -12) {
             uk86_showMessage(L('login_index_checkcode_wrong'));
         }
         if (Uk86process::uk86_islock('admin')) {
             uk86_showMessage('您的操作过于频繁,请稍后再试');
         }
         $obj_validate = new Uk86Validate();
         $obj_validate->validateparam = array(array("input" => $_POST["user_name"], "require" => "true", "message" => L('login_index_username_null')), array("input" => $_POST["password"], "require" => "true", "message" => L('login_index_password_null')), array("input" => $_POST["captcha"], "require" => "true", "message" => L('login_index_checkcode_null')));
         $error = $obj_validate->uk86_validate();
         if ($error != '') {
             uk86_showMessage(L('error') . $error);
         } else {
             $model_admin = Model('admin');
             $array = array();
             $array['admin_name'] = $_POST['user_name'];
             $array['admin_password'] = md5(trim($_POST['password']));
             $admin_info = $model_admin->infoAdmin($array);
             if (is_array($admin_info) and !empty($admin_info)) {
                 $this->systemSetKey(array('name' => $admin_info['admin_name'], 'id' => $admin_info['admin_id'], 'gid' => $admin_info['admin_gid'], 'sp' => $admin_info['admin_is_super']));
                 $update_info = array('admin_id' => $admin_info['admin_id'], 'admin_login_num' => $admin_info['admin_login_num'] + 1, 'admin_login_time' => TIMESTAMP);
                 $model_admin->updateAdmin($update_info);
                 $this->log(L('nc_login'), 1);
                 Uk86process::uk86_clear('admin');
                 @header('Location: index.php');
                 exit;
             } else {
                 Uk86process::uk86_addprocess('admin');
                 uk86_showMessage(L('login_index_username_password_wrong'), 'index.php?act=login&op=login');
             }
         }
     }
     Tpl::output('html_title', L('login_index_need_login'));
     Tpl::showpage('login', 'login_layout');
 }
コード例 #3
0
ファイル: login.php プロジェクト: wangjiang988/ukshop
 /**
  * 找回密码的发邮件处理
  */
 public function find_passwordOp()
 {
     Uk86Language::uk86_read('home_login_register');
     $lang = Uk86Language::uk86_getLangContent();
     $result = uk86_chksubmit(true, true, 'num');
     if ($result !== false) {
         if ($result === -11) {
             showDialog('非法提交');
         } elseif ($result === -12) {
             showDialog('验证码错误');
         }
     }
     if (empty($_POST['email'])) {
         showDialog($lang['login_password_input_email']);
     }
     if (Uk86process::uk86_islock('forget')) {
         showDialog($lang['nc_common_op_repeat'], 'reload');
     }
     $member_model = Model('member');
     $member = $member_model->getMemberInfo(array('member_email' => $_POST['email']));
     if (empty($member) or !is_array($member)) {
         Uk86process::uk86_addprocess('forget');
         showDialog($lang['login_password_email_not_exists'], 'reload');
     }
     // 		if(empty($_POST['email'])){
     // 			showDialog($lang['login_password_input_email'],'reload');
     // 		}
     // 		if(strtoupper($_POST['email'])!=strtoupper($member['member_email'])){
     // 		    Uk86process::uk86_addprocess('forget');
     // 			showDialog($lang['login_password_email_not_exists'],'reload');
     // 		}
     Uk86process::uk86_clear('forget');
     //产生密码
     // 	$new_password	= uk86_random(15);
     // if(!($member_model->editMember(array('member_id'=>$member['member_id']),array('member_passwd'=>md5($new_password))))){
     // 	showDialog($lang['login_password_email_fail'],'reload');
     // }
     $temp = uk86_random(14);
     $_SESSION['temp_identifying_code'] = $temp;
     $_SESSION['temp_identifying_time'] = time();
     //	当然这种机制是有缺陷的,可以扩展uuid等构建缓存等。
     $_SESSION['temp_user_id'] = $member['member_id'];
     $model_tpl = Model('mail_templates');
     $tpl_info = $model_tpl->getTplInfo(array('code' => 'reset_pwd'));
     $param = array();
     $param['site_name'] = C('site_name');
     $param['user_name'] = $member['member_name'];
     $param['site_url'] = SHOP_SITE_URL . '/index.php?act=login&op=forget_password_identify&identity_code=' . $temp;
     $subject = uk86_ncReplaceText($tpl_info['title'], $param);
     $message = uk86_ncReplaceText($tpl_info['content'], $param);
     $email = new Uk86Email();
     $result = $email->uk86_send_sys_email($_POST["email"], $subject, $message);
     showDialog('修改密码链接已经发送至您的邮箱,请在三十分钟内尽快更改密码!', '', 'succ', '', 5);
 }