DedeCMS会员注册用户名昵称(笔名)同名检查的方法

DedeCms会员注册默认有几个ajax同步检查是否有同名用户名、邮箱格式是否正确等,没有用户笔名的同步检查,而是通过提交后才弹出相应提示。

网上没有人研究过这个,慢慢摸索找到/member/templets/js/reg_new.js,就是ajax同步检查,去掉昵称(笔名)筛选的注释后发现这两个地方的同名检查实际上检查的是用户名而并非昵称(笔名),这里提供修改方法。

打开/member/index_do.php,找到:


//检查昵称是否存在

 

在该字段前增加:

 else
if($dopost==
“checkuname”)

  {

  AjaxHead();

  $row = $dsql->GetOne(
“SELECT mid FROM `dede_member` WHERE uname LIKE ‘$uname’ LIMIT 1”);

  if(!is_array($row)) {

  $msg =
“<font color=’#4E7504′><b>√昵称可以使用</b></font>”;

  }

  else {

  $msg =
“<font color=’red’><b>×昵称已经存在!</b></font>”;

  }

  echo $msg;

  exit();

  }

打开/member/templets/js/reg_new.js,找到:


/*
  $(“#uname”).change( function() {
  $.ajax({type: reMethod,url: “index_do.php”,
  data: “dopost=checkuser&fmdo=user&cktype=0&uid=”+$(“#uname”).val(),
  dataType: ‘html’,
  success: function(result){$(“#_uname”).html(result);}});
  });
  */


 

修改为:

  $(
“#uname”).change( function() {

  $.ajax({type: reMethod,url:
“index_do.php”,

  data:
“dopost=checkuname&fmdo=user&uname=”+$(
“#uname”).val(),

  dataType:
‘html’,

  success: function(result){$(
“#_uname”).html(result);}});

  });