最近,领导又要求做一个简单的薪金查询小平台。还好,我虽然对ASP和设计不是精通,但还是有点熟悉。以前,也修改过几个系统和做过几个小程序。这一次已经不是第一次了,所以做起来不会无从下手。看来,积累基础知识和实战应用确实很有好处。
好了,废话不多说了,入正题。由于公司是域环境,所以在很多时候,用户的安全性与管理性非常方便。此次,也是一样,web开发,域用户验证,此次数据源是Excel表,因为,这样人事每月录入数据比较方便。
第一步,域用户验证,用户登录界面。logon.asp
<html>
<body>
<table width="600" height="200" border="0">
<tr><td>
<form action="chkusr.asp" method="post">
<div ><span class="STYLE1">域用户:
<input width="145" name=id type=text value="<%=request.cookies("id")%>">
<br>
<br>
域密码:
<input width="150" type=password name=pwd>
<br>
<br>
<table width="600" height="200" border="0">
<tr><td>
<form action="chkusr.asp" method="post">
<div ><span class="STYLE1">域用户:
<input width="145" name=id type=text value="<%=request.cookies("id")%>">
<br>
<br>
域密码:
<input width="150" type=password name=pwd>
<br>
<br>
登录域:
<input width="150" type=password name=domain>
<br>
<br>
</span>
<input name=sub type=submit value="提交">
</div>
</form>
</td>
</tr>
</table>
<input width="150" type=password name=domain>
<br>
<br>
</span>
<input name=sub type=submit value="提交">
</div>
</form>
</td>
</tr>
</table>
</body>
</html>
</html>
第二步,用户验证。chkusr.asp
<html>
<body>
<script language=javascript RUNAT="SERVER">
function logonDoADLogon(p_strDomain, p_strUserID, p_strPWD)
{ //return true;
var f_oIADS, f_oUser, f_oContainer;
var f_blnRet = true;
try
{
var f_oIADS = GetObject('WinNT:');
f_oContainer = f_oIADS.OpenDSObject('WinNT://' + p_strDomain, p_strDomain + "\\" + p_strUserID, p_strPWD, 0);
delete f_oContainer;
delete f_oIADS;
}
catch (e)
{
return false;
}
try
{
var objUser = GetObject("WinNT://" + p_strDomain + "/" + p_strUserID );
delete objUser;
}
catch(e){
return false;
}
return true;
}
</script>
<%
id=trim(request("id"))
Response.Cookies("id")=id
pwd=trim(request("pwd"))
domain=trim(request("domain"))
if logonDoADLogon(domain,id,pwd) then
%>
<script language="javascript">
window.location.href="12.asp"
function logonDoADLogon(p_strDomain, p_strUserID, p_strPWD)
{ //return true;
var f_oIADS, f_oUser, f_oContainer;
var f_blnRet = true;
try
{
var f_oIADS = GetObject('WinNT:');
f_oContainer = f_oIADS.OpenDSObject('WinNT://' + p_strDomain, p_strDomain + "\\" + p_strUserID, p_strPWD, 0);
delete f_oContainer;
delete f_oIADS;
}
catch (e)
{
return false;
}
try
{
var objUser = GetObject("WinNT://" + p_strDomain + "/" + p_strUserID );
delete objUser;
}
catch(e){
return false;
}
return true;
}
</script>
<%
id=trim(request("id"))
Response.Cookies("id")=id
pwd=trim(request("pwd"))
domain=trim(request("domain"))
if logonDoADLogon(domain,id,pwd) then
%>
<script language="javascript">
window.location.href="12.asp"
</script>
<%
else %>
<script language="javascript">
alert("用户名或密码错,请重新输入!");
window.history.back(-1);
</script>
<%end if%>
<%
else %>
<script language="javascript">
alert("用户名或密码错,请重新输入!");
window.history.back(-1);
</script>
<%end if%>
</body>
</html>
</html>
判断用户与密码是否正确,如果正确页面跳转到12.asp,如果错误,提示错误信息,确定后,回到登录界面。
转载于:https://blog.51cto.com/sandy/169214