1、打开sql企业管理器,在里面建立数据库userinfo,完成后再在这个数据库中建立表user,再建立字段username、password,字段类型(varchar),最后给这个数据库加个用户user,设置好密码。向表中输入两条记录或更多,用来测试
2、打开userinfo ------- 存储过程------右击-----新建存储过程(getUserlogin)-----删除文本框中的内容,贴粘上以下代码:
CREATE PROCEDURE dbo.getUserlogin
@UserName varchar(40),
@UserPass varchar(40) output
as
set nocount on
begin
if @UserName is null return
select @UserPass=password
from dbo.[user]
where username=@UserName
return
end
GO
3、conn.asp
<%
dim conn,connstr
set conn = server.createobject("adodb.connection")
connstr="Provider=SQLOLEDB.1;Persist Sercurity Info=True;User ID=user;pwd=123456;Initial Catalog=userinfo;Data Source=(local);"
conn.open connstr
set rs=server.CreateObject("adodb.recordset")
%>
4、用户登录窗口 index.htm
<form name="form1" method="post" action="login.asp">
<input type="text" name="username"><br>
<input type="password" name="password"><br>
<input type="submit" value=" 登 录 ">&nbsp;<input type="reset" value="重置">
</form>
5、login.asp
<!--#include file="conn.asp"-->
<%
username=request("username")
password=request("password")
'**调用带有输入输出参数的存储过程**
DIM MyComm,UserName
Set MyComm = Server.CreateObject("ADODB.Command")
MyComm.ActiveConnection = conn
MyComm.CommandText = "getUserlogin" '指定存储过程名
MyComm.CommandType = 4 '表明这是一个存储过程
MyComm.Prepared = true '要求将SQL命令先行编译
'声明参数
MyComm.Parameters.append MyComm.CreateParameter("@UserName",200,1,40,username)
MyComm.Parameters.append MyComm.CreateParameter("@UserPass",200,2,40)
MyComm.Execute
'取得出参
UserPass = MyComm(1)
If password=userpass Then
response.write "登录成功"
Else
response.write "登录失败"
End if
Set MyComm = Nothing
%>
6、IIS中运行index.htm,看看效果
原创文章,转载请注明来源,作者,谢谢