手机
当前位置:查字典教程网 >编程开发 >ASP教程 >ASP常用的几个功能模块
ASP常用的几个功能模块
摘要:1,经常写些系统,那么一般都是从登录程序开始,每接一个系统就写一次登录,好麻烦。干脆直接做个登录验证函数吧,对我来说,大都情况可以胜任了:)...

1,经常写些系统,那么一般都是从登录程序开始,每接一个系统就写一次登录,好麻烦。

干脆直接做个登录验证函数吧,对我来说,大都情况可以胜任了:)

[code]

<%

Functionchk_regist(requestname,requestpwd,tablename,namefield,pwdfield,reurl)dimcn_name,cn_pwdcn_name=trim(request.form(""&requestname&""))cn_pwd=trim(request.form(""&requestpwd&""))ifcn_name=""orcn_pwd=""thenresponse.Write("<scriptlanguage=javascript>alert(""请将帐号密码填写完整,谢谢合作。"");history.go(-1)</script>")endifSetrs=Server.CreateObject("ADODB.Recordset")sql="Select*from"&tablename&"where"&namefield&"=''"&cn_name&"''"rs.opensql,conn,1,1ifrs.eofthenresponse.Write("<scriptlanguage=javascript>alert(""没有该会员ID,请确认有没有被申请。"");history.go(-1)</script>")elseifrs(""&pwdfield&"")=cn_pwdthensession("cn_name")=rs(""&namefield&"")response.Redirect(reurl)elseresponse.Write("<scriptlanguage=javascript>alert(""提醒,您的帐号和密码是不吻合。注意数字和大小写。"");history.go(-1)</script>")endifendifrs.closeSetrs=NothingEndFunction%>

[code]

参数说明:

chk_regist(requestname,requestpwd,tablename,namefield,pwdfield,reurl)

requestname为接受HTML页中输入名称的INPUT控件名

requestpwd为接受HTML页中输入密码的INPUT控件名

tablename为数据库中保存注册信息的表名

namefield为该信息表中存放用户名称的字段名

pwdfield为该信息表中存放用户密码的字段名

reurl为登录正确后跳转的页

引用示例如下:

<%callchk_regist("b_name","b_pwd","cn_admin","cn_name","cn_pwd","admin.asp")%>

2,经常有可能对某个事物进行当前状态的判断,一般即做一字段(数值类型,默认值为0)

通过对该字段值的修改达到状态切换的效果。那么,我又做了个函数,让自己轻松轻松。

<%Functionpvouch(tablename,fildname,autoidname,indexid)dimfildvalueSetrs=Server.CreateObject("ADODB.Recordset")sql="Select*from"&tablename&"where"&autoidname&"="&indexidrs.Opensql,conn,2,3fildvalue=rs(""&fildname&"")iffildvalue=0thenfildvalue=1elsefildvalue=0endifrs(""&fildname&"")=fildvaluers.updaters.closeSetrs=NothingEndFunction%>

参数说明:

pvouch(tablename,fildname,autoidname,indexid)

tablename该事物所在数据库中的表名

fildname该事物用以表明状态的字段名(字段类型是数值型)

autoidname在该表中的自动编号名

indexid用以修改状态的对应自动编号的值

引用示例如下:

<%dowhat=request.QueryString("dowhat")p_id=cint(request.QueryString("p_id"))ifdowhat="tj"andp_id<>""thencallpvouch("cn_products","p_vouch","p_id",p_id)endif%><%ifrs("p_vouch")=0then%>>推荐<%else%>>取消推荐<%endif%>

3,为很多中小企业写站点,一般产品展示是个大项目,那么做成的页面也就不同。

要不就是横排来几个,要不就是竖排来几个,甚至全站要翻来覆去的搞个好几次,麻烦也很累。

索性写个函数能缓解一下,于是就成了下面

<%functionshowpros(tablename,topnum,fildname,loopnum,typenum)Setrs=Server.CreateObject("ADODB.Recordset")sql="Selecttop"&topnum&"*from"&tablenamers.Opensql,conn,1,1ifrs.eofandrs.bofthenresponse.Write("暂时无该记录")elseresponse.Write("")fori=1tors.recordcountif(imodloopnum=1)thenresponse.write""endifselectcasetypenumcase"1"response.Write("")response.Write(rs(""&fildname&""))response.Write("")response.Write("方式1之"&i&"记录")''此处的“方式1”可以替换显示为其余字段的值response.Write("")''如果字段比较多,继续添加新个表格行来显示response.Write("")case"2"response.Write("")response.Write(rs(""&fildname&""))response.Write("")response.Write("")response.Write("方式2之"&i&"记录")response.Write("")response.Write("")endselectif(imodloopnum=0)thenresponse.write""endifrs.movenextnextresponse.Write("")endifrs.closeSetrs=Nothingendfunction%>

参数说明:showpros(tablename,topnum,fildname,loopnum,typenum)

whichpro为选择何类型的产品种类

topnum表示提取多少条记录

fildname表示调试显示的字段,具体应用的时候可以省去该参数,在函数内部直接使用

loopnum表示显示的循环每行的记录条数

typenum表示循环显示的方法:目前分了两类,横向并列、纵向并列显示同一数据记录行的不同记录

引用示例如下:

<%ifrequest.form("submit")<>""thentopnum=request.form("topnum")loopnum=request.form("loopnum")typenum=request.form("typenum")elsetopnum=8loopnum=2typenum=1endif%><%callshowpros("cn_products",topnum,"p_name",loopnum,typenum)%>

【ASP常用的几个功能模块】相关文章:

MSXML4.0 版中的新增功能

ASP中常用的变量命名规则

ASP通用模板类

asp 常用的字符串处理函数

改进 ASP 的字符串处理性能

asp实现sql的备份与恢复

ASP与PHP的不同之处

ASP常用函数:CheckBoxScript()

用ASP创建MDaemon用户的代码

ASP万用分页程序

精品推荐
分类导航