(抄来的,未及验证。)
很多朋友都需要无刷新验证用户名,我现在就把我做的代码给大家发放出来给大家使用与参考。
第一步:首先来看看member目录下的index_do.php文件。
第二步:打开查找
/*
检查用户名是否存在
function ACheckUser();
*/
我们看下面代码。
if($dopost=="checkuser")
{
$msg = "";
$userid = trim($userid);
if($userid==""||!TestStringSafe($userid)){
$msg = "你的用户名含有非法字符!";
}else{
$dsql = new DedeSql(false);
$dsql->SetQuery("Select ID From #@__member where userid='$userid'");
$dsql->Execute();
$rowcount = $dsql->GetTotalRow();
$dsql->Close();
if($rowcount>0){ $msg = " 你选择的用户名:[<font color='red'>$userid</font>] ,已经被人使用,请使用其它用户名。"; }
else{ $msg = " 你选择的用户名:[<font color='red'>$userid</font>] ,可以正常使用,欢迎注册。"; }
红色的部分去掉。包括[]符号。或者直接替换我的代码,看个人理解能力来定。
我提供的代码。
if($rowcount>0){ $msg = "<font color='red'>$userid</font><img src=img/reg_error.gif>"; }
else{ $msg = "<font color='red'>$userid</font><img src=img/reg_right.gif>"; }
替换掉这一段
if($rowcount>0){ $msg = " 你选择的用户名:[<font color='red'>$userid</font>] ,已经被人使用,请使用其它用户名。"; }
else{ $msg = " 你选择的用户名:[<font color='red'>$userid</font>] ,可以正常使用,欢迎注册。"; }
好了大家应该看明白了吧。进行下一步
第四步:我们在打开member\templets目录下的reg_new.htm文件
第五步:打开文件后查找
if(document.form2.vdcode.value=="")
{
document.form2.vdcode.focus();
alert("验证码不能为空!");
return false;
}
}
</script>
找到此段代码后这里要注意了不是修改任何文件而是添加代码。
第六步:添加代码内容要在 }
}的下方回车然后把代码粘贴进去
记得千万不要错误 一定要在这段后面添加(红色标记后添加)
return false;
}
}在这位置回车
就是这里粘贴代码
这是代码(蓝色部分)
var http_request = false;
function makeRequest(url, functionName, httpType, sendData) {
http_request = false;
if (!httpType) httpType = "GET";
if (window.XMLHttpRequest) {
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType) {
http_request.overrideMimeType('text/plain');
}
} else if (window.ActiveXObject) {
try {
http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
if (!http_request) {
alert('Cannot send an XMLHTTP request');
return false;
}
var changefunc="http_request.onreadystatechange = "+functionName;
eval (changefunc);
http_request.open(httpType, url, true);
http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
http_request.send(sendData);
}
function getReturnedText () {
if (http_request.readyState == 4) {
if (http_request.status == 200) {
document.getElementById("idchecks").innerHTML = http_request.responseText;
}
}
}
function idcheck(){
var cname = document.getElementById("userid").value;
makeRequest('index_do.php','getReturnedText','post','userid='+cname+'&fmdo=user&dopost=checkuser')
}
好了继续下一步
第七步:我门继续修改reg_new.htm文件
查找 <tr>
<td width="17%" height="25" align="right">登陆用户名:</td>
<td width="83%" height="25"><input name="userid" type="text" id="userid" size="20" style="width:150;height:20">
* <a href="#" onClick="popUpWindow('index_do.php?userid=' + form2.userid.value+'&fmdo=user&dopost=checkuser',200,200,300,60);">[检查是否已被占用]</a></td>
</tr>
替换成(紫色部分)内容
<tr>
<td width="17%" height="25" align="right">登陆用户名:</td>
<td width="21%" height="25"><input name="userid" type="text" id="userid" size="20" style="width:150;height:20" class="in" onBlur="idcheck()" /> </td>
<td width="62%" height="25" align="left" valign="middle" id="idchecks" char>4-16个字符,英文小写、汉字、数字</td>
</tr>
好了 全部完工 上传看看效果吧
最后2个图片文件 自己去下载
下载后放到member\img目录下
发表评论



