修改目的:
用户注册时不用输入笔名,实现系统自动同步用户名和用户笔名。
负责织梦dedecms用户注册的php文件是member/reg_new.php
不难发现,用户注册时的用户名$userid,和用户笔名$uname 是两个不同的字段,那么很简单了,我们把用户注册时填写的用户名即登录id在系统里直接赋值给$uname 就行了。
找到83行
//用户笔名重复检测 if($cfg_mb_wnameone=='N') { $row = $dsql->GetOne("SELECT * FROM `dede_member` WHERE uname LIKE '$uname' "); if(is_array($row)) { ShowMsg('用户笔名或公司名称不能重复!', '-1'); exit(); }
在“//用户笔名重复检测”上一行添加$uname = $userid;
接下来就是前台了,两步就搞定了。
1.修改前台htm页面,把$uname 的input框隐藏,这个不用说了吧,用type=“hidden”就行了。
2.修改js文件,
找到 member/templets/js/reg_new.js ,将以下代码段
//AJAX changChickValue
$("#txtUsername").change( function() {
$.ajax({type: reMethod,url: "index_do.php",
data: "dopost=checkuser&fmdo=user&cktype=1&uid="+$("#txtUsername").val(),
dataType: 'html',
success: function(result){$("#_userid").html(result);}});
});
修改成
//AJAX changChickValue
$("#txtUsername").change( function() {
$.ajax({type: reMethod,url: "index_do.php",
data: "dopost=checkuser&fmdo=user&cktype=1&uid="+$("#txtUsername").val(),
dataType: 'html',
success: function(result){
$("#_userid").html(result);
$("#uname").val($("#txtUsername").val());
}});
});