前台提交申诉账号,联系方式,申诉理由。后台审核。审核通过,发送回执码到申诉编号。用户查询申诉结果,填写申诉编号并修改密码、支付密码。
/**
* 找回密码:人工找回密码,申请
*/
function auditingsq(){
$this->import_resource('jquery.plugins/jquery.validate.js');
if(!IS_POST){
$this->display("find_password_rg1.html");
}else if($_POST['sign']=="step2"){
//查询该用户是否已申请人工找回
$user_name=$_POST['user_name'];
$db=& db();
$info=$db->getAll("select * from ".DB_PREFIX."temyu_auditing where status=1 and user_name='{$user_name}'");
if(!empty($info)){
$this->show_message("already_sq",'back_index', 'index.php');
return;
}
$this->assign('user_name',$user_name);
$this->assign('email',$_POST['email']);
$this->assign('phonenum',$_POST['phonenum']);
$this->display("find_password_rg2.html");
}else if($_POST['sign']=="step3"){
//2.获取提交的信息
//1.判断申请找回密码表是否存在该用户的正在审核的状态
if($_POST['user_name']){
$user_name=$_POST['user_name'];
$this->auditing_mod =& m('temyu_auditing');
$member_mod =& m('member');
$tempinfo=$member_mod->get("user_name='{$user_name}'");
$data=array(
"user_id" => $tempinfo['user_id'],
"user_name" => $user_name,
"status" => "1",
"appealtime" => time(),
"vemail" => $_POST['vemail'],
"vphone" => $_POST['vphone'],
"is_password" => $_POST['is_password'],
"is_email" => $_POST['is_email'],
"is_phone" => $_POST['is_phone'],
"is_zfpassword" => $_POST['is_zfpassword'],
"bindemail" => $_POST['bindemail'],
"bindphone" => $_POST['bindphone'],
"regaddress" => $_POST['regaddress'],
"bindcard" => $_POST['bindcard'].$_POST['realname'],
"regtime" => $_POST['regtime'],
"lastaddress" => $_POST['lastaddress'],
"lasttime" => $_POST['lasttime'],
"takegoodsinfo" => $_POST['takegoodsinfo'],
"moneylog" => $_POST['moneylog'],
);
if(!$this->auditing_mod->add($data)){
$this->show_message("add_success",'back_index', 'index.php');
}else{
$this->show_warning("request_error",'back_index', 'index.php');
}
}else{
$this->show_warning("request_error",'back_index', 'index.php');
}
}
}
//人工申诉找回密码查询
function auditingcx(){
if(!IS_POST){
if (Conf::get('captcha_status.register'))
{
$this->assign('captcha', 1);
}
$this->import_resource('jquery.plugins/jquery.validate.js');
$this->display("find_password_rgcx1.html");
}else if($_POST['sign']=="step1"){
if($_POST['user_name']){
$user_name=$_POST['user_name'];
$db=& db();
$info=$db->getAll("select * from ".DB_PREFIX."temyu_auditing where user_name='{$user_name}' order by appealtime desc");
if(empty($info)){
$this->show_warning("no_sqrg",'back_index', 'index.php');
return;
}
$this->assign('info',$info[0]);
$this->import_resource('jquery.plugins/jquery.validate.js');
$this->display("find_password_rgcx2.html");
}
}
}
/*
*弹出新页面修改密码
*/
function showpassword(){
$re_code = empty($_GET['re_code']) ? null : trim($_GET['re_code']);
$user_name = empty($_GET['user_name']) ? null : trim($_GET['user_name']);
$db=& db();
if($_GET['sign']== 'editpass'){
$info=$db->getAll("select * from ".DB_PREFIX."temyu_auditing where user_name='{$user_name}' and status='2' and is_password='1'");
if(empty($info)){
$this->show_warning("linkgone");
return;
}
$this->assign('sign','password');
}
if($_GET['sign']== 'editzfpass'){
$info=$db->getAll("select * from ".DB_PREFIX."temyu_auditing where user_name='{$user_name}' and status='2' and is_zfpassword='1'");
if(empty($info)){
$this->show_warning("linkgone");
return;
}
$this->assign('sign','zfpassword');
}
$this->assign('re_code',$re_code);
$this->assign('user_name',$user_name);
$this->import_resource('jquery.plugins/jquery.validate.js');
$this->display("find_password_rgcx3.html");
}
/*
* 判断回执码是否正确
*/
function check_recode()
{
$re_code = empty($_GET['re_code']) ? null : trim($_GET['re_code']);
$user_name = empty($_GET['user_name']) ? null : trim($_GET['user_name']);
if (!$re_code || !$user_name)
{
echo ecm_json_encode(false);
return;
}
$db=& db();
$info=$db->getAll("select re_code from ".DB_PREFIX."temyu_auditing where user_name='{$user_name}' order by appealtime desc");
// 判断输入的验证码getyanzhengma是否跟发送的验证码$this->yanzhengma相同
//返回msg:1:正确,0:错误,
if($re_code == $info[0]['re_code']){
echo ecm_json_encode(true);
}else{
echo ecm_json_encode(false);
}
}
/*
* 查询用户是否存在、用户是否已提交过申诉找回密码
*/
function find_noaduting_user(){
$user_name = empty($_GET['user_name']) ? null : trim($_GET['user_name']);
if (!$user_name)
{
echo ecm_json_encode(false);
return;
}
$model_member =& m('member');
$memberinfo = $model_member->get("user_name='{$user_name}'");
$db=& db();
$auditinginfo=$db->getAll("select * from ".DB_PREFIX."temyu_auditing where status=1 and user_name='{$user_name}'");
if (!empty($memberinfo) && empty($auditinginfo))
{
echo ecm_json_encode(true);
}else{
echo ecm_json_encode(false);
}
}
//部分前台
$(function(){
$('#reset_form').validate({
errorPlacement: function(error, element){
var error_td = element.parent('td').next('td');
error_td.find('.field_notice').hide();
error_td.append(error);
},
success : function(label){
label.addClass('validate_right').text('OK!');
var sendpassurl="index.php?app=find_password&act=showpassword&user_name={$info[user_name]}&re_code="+$('#re_code').val()+"&sign=editpass";
$('#editpass').attr("href",sendpassurl);
var sendzfpassurl="index.php?app=find_password&act=showpassword&user_name={$info[user_name]}&re_code="+$('#re_code').val()+"&sign=editzfpass";
$('#editzfpass').attr("href",sendzfpassurl);
},
onkeyup: false,
rules : {
re_code : {
required : true,
remote : {
url :'index.php?app=find_password&act=check_recode&ajax=1',
type:'get',
data:{
re_code :function(){
return $('#re_code').val();
},
user_name: "{$info[user_name]}"
},
beforeSend:function(){
var _checking = $('#checking_recode');
_checking.prev('.field_notice').hide();
_checking.next('label').hide();
$(_checking).show();
},
complete :function(){
$('#checking_recode').hide();
}
}
}
},
messages : {
re_code : {
required : '{$lang.recode_required}',
remote : '{$lang.recode_taken}'
}
}
});
});