อยากได้โค้ด asp classic เช็ค username จากดาต้าเบส Access ผมได้หาจาก google แล้วไปเจอที่เวปนี้ http://www.codeproject.com/KB/ajax/availabilityasp.aspx แล้วโหลดมาทดลองแต่ไม่สามารถใช้ได้ ขึ้น Error Asychronous Error ตลอดทั้งๆ ที่ใช้ดาต้าเบสของเค้าที่ให้มา เป็นโค้ด Ajax กับ asp รบกวนช่วยดูให้หน่อยนะครับ
Source Code http://www.codeproject.com/KB/ajax/availabilityasp/sourcecode.zip
Code (HTML)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="javascript">
function put(param)
{
//document.form1.username.value=param
document.form1.username.value=""
document.form1.username.value=param
document.getElementById("Available").innerHTML = "";
}
function OnChangedUsername()
{
if(document.form1.username.value == "")
{
document.form1.btnCheckAvailability.disabled = true;
document.getElementById("Available").innerHTML =""
}
else
{
document.form1.btnCheckAvailability.disabled = false;
}
}
function OnCheckAvailability()
{
if(window.XMLHttpRequest)
{
oRequest = new XMLHttpRequest();
}
else if(window.ActiveXObject)
{
oRequest = new ActiveXObject("Microsoft.XMLHTTP");
}
oRequest.open("POST", "available.asp", true);
oRequest.onreadystatechange = UpdateCheckAvailability;
oRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
oRequest.send("strCmd=availability&strUsername=" + document.form1.username.value);
}
function UpdateCheckAvailability()
{
if(oRequest.readyState == 4)
{
if(oRequest.status == 200)
{
document.getElementById("Available").innerHTML = oRequest.responseText;
}
else
{
document.getElementById("Available").innerHTML = "Asychronous Error";
}
}
}
function validate(form1)
{
//****************************************************
if (form1.username.value.length<1)
{
alert("Please enter username!");
form1.username.focus();
form1.username.select();
return(false);
}
else if ((form1.username.value.indexOf("*")!=-1)||(form1.username.value.indexOf("!")!=-1)||(form1.username.value.indexOf("@")!=-1)||(form1.username.value.indexOf("$")!=-1)||(form1.username.value.indexOf("%")!=-1)||(form1.username.value.indexOf("^")!=-1)||(form1.username.value.indexOf("#")!=-1)||(form1.username.value.indexOf("=")!=-1)||(form1.username.value.indexOf("-")!=-1)||(form1.username.value.indexOf("[")!=-1)||(form1.username.value.indexOf("]")!=-1)||(form1.username.value.indexOf("{")!=-1)||(form1.username.value.indexOf("}")!=-1)||(form1.username.value.indexOf("+")!=-1)||(form1.username.value.indexOf("~")!=-1)||(form1.username.value.indexOf("?")!=-1)||(form1.username.value.indexOf("|")!=-1)||(form1.username.value.indexOf(">")!=-1)||(form1.username.value.indexOf("<")!=-1)||(form1.username.value.indexOf(" ")!=-1))
{
alert("Special characters and spaces are not allowed" );
form1.username.focus();
form1.username.select();
return(false);
}
else if (form1.username.value.length>30)
{
alert("Username must be less than thirty characters!")
form1.username.focus();
form1.username.select();
return(false);
}
}
</script>
</head>
<body>
<form method="post" id="form1" name="form1" onsubmit="return validate(this)">
<p><b>Enter desired username</b>
<input name="username" class="feeds1" size="20" value="" onkeyup="OnChangedUsername();" />
<input name="button" type="button" disabled="disabled" id="btnCheckAvailability" onClick="OnCheckAvailability();" value="Check Availability" />
</p>
<div id="Available"></div>
</form>
</body>
</html>
Code (ASP)
<%
Dim vPath, pPath, ConString
set con=server.CreateObject("adodb.connection")
set rs=server.CreateObject("adodb.recordset")
vPath = "users.mdb" 'use this one if database is in root of cart folder
pPath = Server.MapPath( vPath )
ConString = "PROVIDER=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE=" & pPath & ";" & "JET OLEDB:Database Password=foo"
con.open ConString
strCmd = trim(Request.Form("strCmd").Item)
strUsername = trim(Request.Form("strUsername").Item)
select case strCmd
case "availability"
strSQL = "select uname from customers where uname='" & strUsername & "'"
rs.Open strSQL,con,1,3
if rs.EOF then
Response.Write("<font color=green><b>The User ID, <font color=blue>" + strUsername + "</font> is available</font>")
else
Response.Write("<font color=red>The User ID, <font color=blue>" + strUsername + "</font> , has already been taken.</font>")
Response.Write("<br><font color=red>Please enter a new User ID or choose a recommended one.</font>")
Response.Write("<table border=0 width=100% cellspacing=0 cellpadding=0>")
Response.Write("<tr bgcolor=#FED967><td>Recommended User IDs:")
Response.Write("<table><tr class='ss'>")
Response.Write("<td>")
Response.Write("<input type=radio name=r1 value="&Left(strUsername,2) & Left(strUsername,2)&" onclick=javascript:put(this.value)>"&Left(strUsername,2)& Left(strUsername,2)&"<br>")
Response.Write("<input type=radio name=r1 value="&strUsername & Left(strUsername,2)&" onclick=javascript:put(this.value)>"&strUsername & Left(strUsername,2)&"<br>")
Response.Write("<input type=radio name=r1 value="&Left(strUsername,2) & strUsername &" onclick=javascript:put(this.value)>"&Left(strUsername,2)& strUsername&"<br>")
Response.Write("</td></tr></table>")
Response.Write("</tr></td>")
Response.Write("</table>")
end if
case else
Response.Write("Invalid command: " + strCmd)
end select
rs.close
set rs = Nothing
%>
Tag : - - - -