为了兑现我对大家的承诺,我们现在立即就将“借助数据库和ASP程序”编写出来的,可以同时适用于IIS和PWS的安全网页看个仔细。 先睹为快,还是让我们首先就来看看该ASP程序(password.asp)。 < % Function CheckPassword( Name, Password ) Dim conn, param, rs Set conn = Server.CreateObject("ADODB.Connection") param = "driver={Microsoft Access Driver (*.mdb)};" conn.Open param & ";dbq=" & Server.MapPath("book2.mdb") sql = "Select * From key Where Name='" & Name & "' And Password = '" & Password & "'" Set rs = conn.Execute( sql ) If rs.EOF Then '如果没有数据记录存在 CheckPassword = False Else CheckPassword = True End If End Function %> '编写一Function函数,利用这个函数向数据库book2.mdb传入Name和Password(即用户名和密码);然后利用Select指令从key数据表中选取具有与函数传入的Name和Password相吻合的数据记录;最后用If...Then...Else语句来判断数据表key中是否存在有符合条件的数据记录,并据此,给Function返回相应的结果。 < % If IsEmpty(Session("Passed")) Then Session("Passed") = False '判断上网者的Session("Passed")是否为空,即是否没有Session信息,如果是的话则说明上网者是第一次启动以下的程序。 Head = "请输入您的姓名和密码" Name = Request("Name") Password = Request("Password") If Name = "" Or Password = "" Then Head = "请输入您的姓名和密码" '因为是初来者,所以Name = Request("Name")和Password = Request("Password")都等于空字符串,Session("Passed") = False,语句:If Not Session("Passed")(见下面)成立,于是将输入“用户名称及密码”的页面(见下图)显示出来。 ElseIf Not CheckPassword( Name, Password ) Then Response.write "用户名称或密码错误" Response.end '如果上网者输入的“用户名称及密码”不正确的话,则显示说明信息:"用户名称或密码错误" Else Session("Passed") = True End If '当然,当上网者输入的“用户名称及密码”是正确的话,则Session("Passed")将等于 True。 If Not Session("Passed") Then |