ASP与存贮过程

作者: 2011/6/8 15:22:29

本文章提供给大家一起学习分享,希望对正在学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

特别推荐

玩家留言 跟帖评论
查看更多评论