当前位置: 首页 > 图文教程 > 网络编程 > ASP > 存贮过程

ASP
ASP技巧:在Access数据库中重命名表
用ASP编程实现网络内容快速查找
比较ASP生成静态HTML文件的几种方法
ASP实例:实现邮件发送普通附件和嵌入附件
如何用ASP实现去掉三个最高分和三个最低分
ASP实例:Access为后台数据库的网站统计系统
用标签替换的方法生成静态网页
例程:用ASP判断文件地址是否有效
学ASp动态网页必备:常用的38个函数
ASP教程:初次接触学习ASP脚本程序
ASPJPEG水印中关于文字水印的帮助文档(中英文对照)
ASP例子:ASP把汉字转化为拼音的函数
ASP教程:学习ASP应用Cookies的技巧
ASP入门:认识ASP程序所使用的几种脚本语言
初学者的ASP教程:常用ASP内置函数
ASP初级教程之ASP对表单和用户输入的处理
学习ASP文件引用的方法
用ASP编写更人性化的弹出窗口程序
谈谈学习ASP动态网页制作技术的编程心得
用ASP程序实现网站在线人数统计

ASP 中的 存贮过程


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 16 ::
收藏到网摘: n/a

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