method=post>
使用者名: | name="username"> * | |||
email: | * | |||
密碼: | οnkeyup="checkIntensity(this.value)" type="password" name="password"> id=password_notice >* | |||
密碼強度: |
| |||
确認密碼: | type="password" name="confirm_password"> * | |||
手機: | ||||
我已看過并接受《使用者協定》* | ||||
from_ck.js
JavaScript Code
//XMLHttpRequest
var xmlhttp = false;
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e2) {
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
xmlhttp = new XMLHttpRequest();
}
function Ajax(data){
xmlhttp.open("GET","user_ck.php?username="+document.getElementById("username").value,true);
xmlhttp.send(null);
document.getElementById('username_notice').innerHTML = process_request;//顯示狀态
xmlhttp.onreadystatechange=function(){
if (4==xmlhttp.readyState){
if (200==xmlhttp.status){
var responseText = xmlhttp.responseText;
if (responseText=="true" ){
ck_user("true");
}
else{
ck_user("false");
}
}else{
alert("發生錯誤!");
}
}
}
}
function chkUserName(obj){
if (checks(obj.value)== false)
{
obj.className = "FrameDivWarn";
showInfo("username_notice",msg_un_format);
change_submit("true");
}
else if(obj.value.length<1){
obj.className = "FrameDivWarn";
showInfo("username_notice",msg_un_blank);
change_submit("true");
}
else if(obj.value.length<3){
obj.className = "FrameDivWarn";
showInfo("username_notice",username_shorter);
change_submit("true");
}
else{
//調用Ajax函數,向伺服器端發送查詢
Ajax(obj.value);
}
}
//--------------使用者名檢測---------------------//
function ck_user(result)
{
if ( result == "true" )
{
document.getElementById('username').className = "FrameDivWarn";
showInfo("username_notice",msg_un_registered);
change_submit("true");//禁用送出按鈕
}
else
{
document.getElementById('username').className = "FrameDivPass";
showInfo("username_notice",msg_can_rg);
change_submit("false");//可用送出按鈕
}
}
function checks(t){
szMsg="[#%&'",;:=!^@]";
//alertStr="";
for(i=1;i
if(t.indexOf(szMsg.substring(i-1,i))>-1){
//alertStr="請勿包含非法字元如[#_%&'",;:=!^]";
return false;
}
}
return true;
}
//-----------EMAIL檢測--------------------------------//
function checkEmail(email)
{
if (chekemail(email.value)==false)
{
email.className = "FrameDivWarn";
showInfo("email_notice",msg_email_format);
change_submit("true");
}
else
{
showInfo("email_notice",info_right);
email.className = "FrameDivPass";
change_submit("false");
}
}
function chekemail(temail) {
var pattern = /^[w]{1}[w.-_]*@[w]{1}[w-_.]*.[w]{2,4}$/i;
if(pattern.test(temail)) {
return true;
}
else {
return false;
}
}
//--------------------密碼檢測-----------------------------//
function check_password( password )
{
if ( password.value.length < 6 )
{
showInfo("password_notice",password_shorter_s);
password.className = "FrameDivWarn";
change_submit("true");//禁用送出按鈕
}
else if(password.value.length > 30){
showInfo("password_notice",password_shorter_m);
password.className = "FrameDivWarn";
change_submit("true");//禁用送出按鈕
}
else
{
showInfo("password_notice",info_right);
password.className = "FrameDivPass";
change_submit("false");//允許送出按鈕
}
}
function check_conform_password( conform_password )
{
password = document.getElementById('password').value;
if ( conform_password.value.length < 6 )
{
showInfo("conform_password_notice",password_shorter_s);
conform_password.className = "FrameDivWarn";
change_submit("true");//禁用送出按
return false;
}
if ( conform_password.value!= password)
{
showInfo("conform_password_notice",confirm_password_invalid);
conform_password.className = "FrameDivWarn";
change_submit("true");//禁用送出按
}
else
{
conform_password.className = "FrameDivPass";
showInfo("conform_password_notice",info_right);
change_submit("false");//允許送出按鈕
}
}
//
function checkIntensity(pwd)
{
var Mcolor = "#FFF",Lcolor = "#FFF",Hcolor = "#FFF";
var m=0;
var Modes = 0;
for (i=0; i
{
var charType = 0;
var t = pwd.charCodeAt(i);
if (t>=48 && t <=57)
{
charType = 1;
}
else if (t>=65 && t <=90)
{
charType = 2;
}
else if (t>=97 && t <=122)
charType = 4;
else
charType = 4;
Modes |= charType;
}
for (i=0;i<4;i++)
{
if (Modes & 1) m++;
Modes>>>=1;
}
if (pwd.length<=4)
{
m = 1;
}
switch(m)
{
case 1 :
Lcolor = "2px solid red";
Mcolor = Hcolor = "2px solid #DADADA";
break;
case 2 :
Mcolor = "2px solid #f90";
Lcolor = Hcolor = "2px solid #DADADA";
break;
case 3 :
Hcolor = "2px solid #3c0";
Lcolor = Mcolor = "2px solid #DADADA";
break;
case 4 :
Hcolor = "2px solid #3c0";
Lcolor = Mcolor = "2px solid #DADADA";
break;
default :
Hcolor = Mcolor = Lcolor = "";
break;
}
document.getElementById("pwd_lower").style.borderBottom = Lcolor;
document.getElementById("pwd_middle").style.borderBottom = Mcolor;
document.getElementById("pwd_high").style.borderBottom = Hcolor;
}
//--------------注冊協定複選框狀态檢測---------------------//
function check_agreement(){
if (document.formUser.agreement.checked==false)
{
showInfo("agreement_notice",agreement);
change_submit("true");//允許送出
}
else
{
showInfo("agreement_notice",info_right);
change_submit("false");//允許送出按
}
}
//-------------處理注冊程式-----------------------------//
function register() {
if(document.formUser.username.value=="")
{
showclass("username","FrameDivWarn");
showInfo("username_notice",msg_un_blank);
document.formUser.username.focus();
return false;
}
else if(document.formUser.email.value=="")
{
showclass("email","FrameDivWarn");
showInfo("email_notice",msg_email_blank);
document.formUser.email.focus();
return false;
}
else if(document.formUser.password.value=="")
{
showclass("password","FrameDivWarn");
showInfo("password_notice",password_empty);
document.formUser.password.focus();
return false;
}
else if(document.formUser.confirm_password.value=="")
{
showclass("confirm_password","FrameDivWarn");
showInfo("conform_password_notice",confirm_password_invalid);
document.formUser.password.focus();
return false;
}
else if(document.formUser.agreement.checked==false)
{
//showclass("agreement","FrameDivWarn");
showInfo("agreement_notice",agreement);
document.formUser.agreement.focus();
return false;
}
}
//------------ 按鈕狀态設定-----------------------------//
function change_submit(zt)
{
if (zt == "true")
{
document.forms['formUser'].elements['Submit1'].disabled = 'disabled';
}
else
{
document.forms['formUser'].elements['Submit1'].disabled = '';
}
}
//------公用程式------------------------------------//
function showInfo(target,Infos){
document.getElementById(target).innerHTML = Infos;
}
function showclass(target,Infos){
document.getElementById(target).className = Infos;
}
var process_request = "
![](/image/loading.gif)
正在資料進行中...";
var username_empty = " × 使用者名不能為空!";
var username_shorter = " × 使用者名長度不能少于 3 個字元。";
var username_invalid = "- 使用者名隻能是由字母數字以及下劃線組成。";
var password_empty = " × 登入密碼不能為空。";
var password_shorter_s = " × 登入密碼不能少于 6 個字元。";
var password_shorter_m = " × 登入密碼不能多于 30 個字元。";
var confirm_password_invalid = " × 兩次輸入密碼不一緻!";
var email_empty = " × Email 為空";
var email_invalid = "- Email 不是合法的位址";
var agreement = " × 您沒有接受協定";
var mobile_phone_invalid = "- 手機号碼不是一個有效号碼";
var msg_un_blank = " × 使用者名不能為空!";
var msg_un_length = " × 使用者名最長不得超過15個字元";
var msg_un_format = " × 使用者名含有非法字元!";
var msg_un_registered = " × 使用者名已經存在,請重新輸入!";
var msg_can_rg = " √ 可以注冊!";
var msg_email_blank = " × 郵件位址不能為空!";
var msg_email_registered = " × 郵箱已存在,請重新輸入!";
var msg_email_format = " × 郵件位址不合法!";
var username_exist = "使用者名 %s 已經存在";
var info_can=" √ 可以注冊!";
var info_right=" √ 填寫正确!";