/** * 登录操作 * */ public function indexOp() { $lang = Language::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 = 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 (processClass::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 { processClass::addprocess('login'); showDialog($lang['login_index_login_fail'], '', 'error', $script, 2); } $model_member->createSession($member_info); processClass::clear('login'); showDialog(L('login_index_login_success'), 'reload', 'succ', '', 2); } if (empty($_GET['ref_url'])) { $_GET['ref_url'] = getReferer(); } Tpl::output('html_title', C('site_name') . ' - ' . $lang['login_index_login']); Tpl::output('nchash', getNchash()); if ($_GET['inajax'] == 1) { Tpl::showpage('login_inajax', 'null_layout'); } else { return false; } }
/** * 不进行父类的登录验证,所以增加构造方法重写了父类的构造方法 */ public function __construct() { Language::read('common,layout,login'); $result = chksubmit(true, true, 'num'); if ($result) { if ($result === -11) { showMessage('非法请求'); } elseif ($result === -12) { showMessage(L('login_index_checkcode_wrong')); } if (processClass::islock('admin')) { showMessage('您的操作过于频繁,请稍后再试'); } //登录验证 $obj_validate = new Validate(); $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->validate(); if ($error != '') { 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); processClass::clear('admin'); @header('Location: index.php'); exit; } else { processClass::addprocess('admin'); showMessage(L('login_index_username_password_wrong'), 'index.php?act=login&op=login'); } } } Tpl::output('html_title', $lang['login_index_need_login']); Tpl::showpage('login', 'login_layout'); }
/** * 商品咨询添加 */ public function save_consultajaxOp() { //检查是否可以评论 if (!C('guest_comment') && !$_SESSION['member_id']) { echo json_encode(array('done' => 'false', 'msg' => Language::get('goods_index_goods_noallow'))); die; } $goods_id = intval($_GET['goods_id']); if ($goods_id <= 0) { echo json_encode(array('done' => 'false', 'msg' => Language::get('wrong_argument'))); die; } //咨询内容的非空验证 if (trim($_GET['goods_content']) == "") { echo json_encode(array('done' => 'false', 'msg' => Language::get('goods_index_input_consult'))); die; } $_POST = $_GET; //表单验证 $result = chksubmit(true, C('captcha_status_goodsqa'), 'num'); if (!$result) { echo json_encode(array('done' => 'false', 'msg' => Language::get('invalid_request'))); die; } elseif ($result === -11) { echo json_encode(array('done' => 'false', 'msg' => Language::get('invalid_request'))); die; } elseif ($result === -12) { echo json_encode(array('done' => 'false', 'msg' => Language::get('wrong_checkcode'))); die; } if (processClass::islock('commit')) { echo json_encode(array('done' => 'false', 'msg' => Language::get('nc_common_op_repeat'))); die; } else { processClass::addprocess('commit'); } if ($_SESSION['member_id']) { //查询会员信息 $member_model = Model('member'); $member_info = $member_model->infoMember(array('member_id' => "{$_SESSION['member_id']}")); if (empty($member_info) || $member_info['is_allowtalk'] == 0) { echo json_encode(array('done' => 'false', 'msg' => Language::get('goods_index_goods_noallow'))); die; } } //判断商品编号的存在性和合法性 $goods = Model('goods'); $goods_info = array(); $goods_info = $goods->getGoodsInfo(array('goods_id' => $goods_id)); if (empty($goods_info)) { echo json_encode(array('done' => 'false', 'msg' => Language::get('goods_index_goods_not_exists'))); die; } //判断是否是店主本人 if ($_SESSION['store_id'] && $goods_info['store_id'] == $_SESSION['store_id']) { echo json_encode(array('done' => 'false', 'msg' => Language::get('goods_index_consult_store_error'))); die; } //检查店铺状态 $store_model = Model('store'); $store_info = $store_model->getStoreInfoByID($goods_info['store_id']); if ($store_info['store_state'] == '0' || intval($store_info['store_state']) == '2' || intval($store_info['store_end_time']) != 0 && $store_info['store_end_time'] <= time()) { echo json_encode(array('done' => 'false', 'msg' => Language::get('goods_index_goods_store_closed'))); die; } //接收数据并保存 $input = array(); $input['goods_id'] = $goods_id; $input['cgoods_name'] = $goods_info['goods_name']; $input['member_id'] = intval($_SESSION['member_id']) > 0 ? $_SESSION['member_id'] : 0; $input['cmember_name'] = $_SESSION['member_name'] ? $_SESSION['member_name'] : ''; $input['store_id'] = $store_info['store_id']; $input['email'] = $_GET['email']; if (strtoupper(CHARSET) == 'GBK') { $input['consult_content'] = Language::getGBK($_GET['goods_content']); } else { $input['consult_content'] = $_GET['goods_content']; } $input['isanonymous'] = $_GET['hide_name'] == 'hide' ? 1 : 0; $consult_model = Model('consult'); if ($consult_model->addConsult($input)) { echo json_encode(array('done' => 'true')); die; } else { echo json_encode(array('done' => 'false', 'msg' => Language::get('goods_index_consult_fail'))); die; } }
/** * 不进行父类的登录验证,所以增加构造方法重写了父类的构造方法 */ public function __construct() { Language::read('common,layout,login'); $result = chksubmit(true, true, 'num'); if ($result) { if ($result === -11) { showMessage('非法请求'); } elseif ($result === -12) { showMessage(L('login_index_checkcode_wrong')); } if (processClass::islock('admin')) { showMessage('您的操作过于频繁,请稍后再试'); } //登录验证 $obj_validate = new Validate(); $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->validate(); if ($error != '') { 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); $_SESSION['store_id'] = $admin_info['store_id']; $_SESSION['is_login'] = '******'; //获取前台商家登陆信息并存入Session:以便添加商品: $model_seller = Model('seller'); $seller_info = $model_seller->getSellerInfo(array('seller_name' => $_POST['user_name'])); if ($seller_info) { $model_member = Model('member'); $member_info = $model_member->infoMember(array('member_id' => $seller_info['member_id'])); if ($member_info) { // 更新卖家登陆时间 $update_sell_info = array('seller_id' => $seller_info['seller_id'], 'last_login_time' => TIMESTAMP); $model_admin->updateSeller($update_sell_info); // $model_seller_group = Model('seller_group'); // $seller_group_info = $model_seller_group->getSellerGroupInfo(array('group_id' => $seller_info['seller_group_id'])); $model_store = Model('store'); $store_info = $model_store->getStoreInfoByID($seller_info['store_id']); $_SESSION['is_login'] = '******'; $_SESSION['member_id'] = $member_info['member_id']; $_SESSION['member_name'] = $member_info['member_name']; $_SESSION['member_email'] = $member_info['member_email']; $_SESSION['is_buy'] = $member_info['is_buy']; $_SESSION['avatar'] = $member_info['member_avatar']; $_SESSION['grade_id'] = $store_info['grade_id']; $_SESSION['seller_id'] = $seller_info['seller_id']; $_SESSION['seller_name'] = $seller_info['seller_name']; $_SESSION['seller_is_admin'] = intval($seller_info['is_admin']); $_SESSION['store_id'] = intval($seller_info['store_id']); $_SESSION['store_name'] = $store_info['store_name']; // $_SESSION['seller_limits'] = explode(',', $seller_group_info['limits']); // if($seller_info['is_admin']) { $_SESSION['seller_group_name'] = '管理员'; //} else { // $_SESSION['seller_group_name'] = $seller_group_info['group_name']; //} if (!$seller_info['last_login_time']) { $seller_info['last_login_time'] = TIMESTAMP; } $_SESSION['seller_last_login_time'] = date('Y-m-d H:i', $seller_info['last_login_time']); $seller_menu = $this->getSellerMenuList($seller_info['is_admin'], explode(',', $seller_group_info['limits'])); $_SESSION['seller_menu'] = $seller_menu['seller_menu']; $_SESSION['seller_function_list'] = $seller_menu['seller_function_list']; if (!empty($seller_info['seller_quicklink'])) { $quicklink_array = explode(',', $seller_info['seller_quicklink']); foreach ($quicklink_array as $value) { $_SESSION['seller_quicklink'][$value] = $value; } } // $this->recordSellerLog('登录成功'); // showMessage('登录成功', 'index.php?act=seller_center'); } else { showMessage('用户名密码错误', '', '', 'error'); } } else { showMessage('用户名密码错误', '', '', 'error'); } $this->log(L('nc_login'), 1); processClass::clear('admin'); @header('Location: index.php'); exit; } else { processClass::addprocess('admin'); showMessage(L('login_index_username_password_wrong'), 'index.php?act=login&op=login'); } } } Tpl::output('html_title', $lang['login_index_need_login']); Tpl::showpage('login', 'login_layout'); }
/** * 找回密码的发邮件处理 */ public function find_passwordOp() { Language::read('home_login_register'); $lang = Language::getLangContent(); $result = chksubmit(true, true, 'num'); if (!$result) { showDialog('非法提交'); } elseif ($result === -11) { showDialog('非法提交'); } elseif ($result === -12) { showDialog('验证码错误'); } if (empty($_POST['username'])) { showDialog($lang['login_password_input_username']); } if (processClass::islock('forget')) { showDialog($lang['nc_common_op_repeat'], 'reload'); } $member_model = Model('member'); $member = $member_model->infoMember(array('member_name' => $_POST['username'])); if (empty($member) or !is_array($member)) { processClass::addprocess('forget'); showDialog($lang['login_password_username_not_exists'], 'reload'); } if (empty($_POST['email'])) { showDialog($lang['login_password_input_email'], 'reload'); } if (strtoupper($_POST['email']) != strtoupper($member['member_email'])) { processClass::addprocess('forget'); showDialog($lang['login_password_email_not_exists'], 'reload'); } processClass::clear('forget'); //产生密码 $new_password = random(15); if (!$member_model->updateMember(array('member_passwd' => md5($new_password)), $member['member_id'])) { showDialog($lang['login_password_email_fail'], 'reload'); } $cron_data = array('exetime' => TIMESTAMP, 'exeid' => $member['member_id'], 'type' => 2, 'code' => 'email_touser_find_password', 'content' => array(array('site_name' => $GLOBALS['setting_config']['site_name'], 'site_url' => SHOP_SITE_URL, 'user_name' => $_POST['username'], 'new_password' => $new_password), false)); $this->addcron($cron_data, true); $extend_js = "<script src='" . SHOP_SITE_URL . "/index.php?act=login&op=send_email'></script>"; showMessage($lang['login_password_email_success'] . $extend_js, SHOP_SITE_URL); }
/** * 找回密码的发邮件处理 */ public function find_passwordOp() { Language::read('home_login_register'); $lang = Language::getLangContent(); $result = chksubmit(true, true, 'num'); if ($result !== false) { if ($result === -11) { showDialog('非法提交'); } elseif ($result === -12) { showDialog('验证码错误'); } } if (empty($_POST['username'])) { showDialog($lang['login_password_input_username']); } if (processClass::islock('forget')) { showDialog($lang['nc_common_op_repeat'], 'reload'); } $member_model = Model('member'); $member = $member_model->infoMember(array('member_name' => $_POST['username'])); if (empty($member) or !is_array($member)) { processClass::addprocess('forget'); showDialog($lang['login_password_username_not_exists'], 'reload'); } if (empty($_POST['email'])) { showDialog($lang['login_password_input_email'], 'reload'); } if (strtoupper($_POST['email']) != strtoupper($member['member_email'])) { processClass::addprocess('forget'); showDialog($lang['login_password_email_not_exists'], 'reload'); } processClass::clear('forget'); //产生密码 $new_password = random(15); //if(!($member_model->updateMember(array('member_passwd'=>md5($new_password)),$member['member_id']))){ if (!$member_model->editMember(array('member_id' => $member['member_id']), array('member_passwd' => md5($new_password)))) { showDialog($lang['login_password_email_fail'], 'reload'); } else { if (C('ucenter_status')) { /** * Ucenter处理 */ $model_ucenter = Model('ucenter'); $model_ucenter->userEdit(array('login_name' => $_POST['username'], '', 'password' => trim($new_password))); } } $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'] = $_POST['username']; $param['new_password'] = $new_password; $param['site_url'] = SHOP_SITE_URL; $subject = ncReplaceText($tpl_info['title'], $param); $message = ncReplaceText($tpl_info['content'], $param); $email = new Email(); $result = $email->send_sys_email($_POST["email"], $subject, $message); showDialog('新密码已经发送至您的邮箱,请尽快登录并更改密码!', '', 'succ', '', 5); }
/** * 找回密码的发邮件处理 */ public function find_passwordOp() { Language::read('home_login_register'); $lang = Language::getLangContent(); $result = chksubmit(true, true, 'num'); if (!$result) { showDialog('非法提交'); } elseif ($result === -11) { showDialog('非法提交'); } elseif ($result === -12) { showDialog('验证码错误'); } if (empty($_POST['username'])) { showDialog($lang['login_password_input_username']); } if (processClass::islock('forget')) { showDialog($lang['nc_common_op_repeat'], 'reload'); } $member_model = Model('member'); $member = $member_model->infoMember(array('member_name' => $_POST['username'])); if (empty($member) or !is_array($member)) { processClass::addprocess('forget'); showDialog($lang['login_password_username_not_exists'], 'reload'); } if (empty($_POST['email'])) { showDialog($lang['login_password_input_email'], 'reload'); } if (strtoupper($_POST['email']) != strtoupper($member['member_email'])) { processClass::addprocess('forget'); showDialog($lang['login_password_email_not_exists'], 'reload'); } processClass::clear('forget'); //产生密码 $new_password = random(15); if (!$member_model->updateMember(array('member_passwd' => md5($new_password)), $member['member_id'])) { showDialog($lang['login_password_email_fail'], 'reload'); } /** * 发送邮件 */ $result = $this->send_notice($member['member_id'], 'email_touser_find_password', array('site_name' => $GLOBALS['setting_config']['site_name'], 'site_url' => SHOP_SITE_URL, 'user_name' => $_POST['username'], 'new_password' => $new_password), false); if ($result) { showDialog($lang['login_password_email_success'], SHOP_SITE_URL, 'succ'); } else { showMessage($lang['login_password_email_fail'], '', 'html', 'error'); } }