首页 服务器 编程 必备知识 搜索引擎
站内搜索
最近浏览
推荐文章
热文排行

ASP使用存储过程


 

 

CREATE PROCEDURE login_verify

(

@community_id int, --拿值

@username varchar(20),

@password varchar(40),

@result tinyint output

)

 

AS

 

set nocount ON

 

declare @service_deadline_date smalldatetime,@community_setting_max_online_count int ---定义一个变量为 短日期格式

 

select @community_setting_max_online_count=community_setting_max_online_count,@service_deadline_date=service_deadline_date from community_info where community_id=@community_id --这里是求最大登录人数

 

if datediff(d,@service_deadline_date,getdate())>10 --其实这个是限制用户的使用期,求当前日期与库中的记录日期如时大于10,则返回@result =11

begin

set @result=11 --超过使用期

return

end

 

if (select count(*) from online_user where =@community_setting_max_online_count">community_id=@community_id)>=@community_setting_max_online_count --根据库中的记录设定与当前人数比较

begin

set @result=10 --超出在线人数限制 --返回@result=10

return

end

 

declare @stamia int,@last_update_stamia_date smalldatetime,@level_id int --定义变量 整型 短日期型 整型

declare @userid int ,@user_role int

select @userid=userid,@user_role=user_role,@stamia=stamia,@last_update_stamia_date=last_update_stamia_date,@level_id=level_id from user_info where username=@username and password=@password and community_id=@community_id and user_type=0

 

--从用户信息表中,将一些信息写入到定义的三个变量中

 

if @userid is not null ----如果@userid 不变null

begin --用户名和密码校验成功

set @result=1 --检验成功

return

end

else

begin

set @result=0 ---登录失败

end

 

set nocount OFF

 

GO

 

我们给上面的过程取个名login_verify叫做

 

写成是ASP代码中调用安全认证的地方

 

'''事先已经定义好conn

 

Set cmd.ActiveConnection=conn

cmd.CommandText="login_verify"

cmd.CommandType=&H0004

 

@community_id int, --拿值

@username varchar(20),

@password varchar(40),

@result int

 

cmd.Parameters.Append cmd.CreateParameter("@community_id",3)

cmd.Parameters.Append cmd.CreateParameter("@username ",200)

cmd.Parameters.Append cmd.CreateParameter("@password",200)

 

cmd("@community_id")=session("community_id")

cmd("@username")=request("userid")

cmd("@password")=request("userid")

 

cmd.execute

 

dim result

 

result=cmd("@result")

 

conn.close

 

if trim(result)="1" then

 

 

'''''''''''''登录成功的提示与操作

else

 

''''''''''''''''''''''登录失败的提示与操作

end if

[wangjy17908]
添加时间:2007-10-05
版权所有(C)2005-2015