ASP网页编程之[原创] EasyASP v1.5简化ASP开辟,包括...
想法是和程序员的想法不一样的.至于为什么.大家去想一想.跟心理学有关的EasyASPv1.5简化ASP开辟,包括数据库操纵类EasyASP是一个便利疾速开辟ASP的类,个中包括了一个数据库把持类(原clsDbCtrl.asp,对原代码作了优化和修正,包括对数据库的各种操纵及存储历程的挪用,全体封装在Easp.db中,利用起来会更便利,挪用也更复杂)。而Easp类中供应了大批有用的ASP通用历程及办法,能够简化年夜部分的ASP操纵。今朝只供应了VBScript版,JScript版未来大概会供应。具体申明请下载匡助手册,内里有十分具体的利用办法申明及源码典范。
源码下载:http://easyasp.googlecode.com/files/EasyASP.v1.5.rar
匡助手册下载:http://easyasp.googlecode.com/files/EasyASP.v1.5.Manual.rar
后续更新请存眷:http://easyasp.googlecode.com
=================================================================
EasyASPv1.5(2008-10-22更新)
新增功效:
1、将数据库把持类(原clsDbCtrl.asp)封装进Easp类,均经由过程Easp.db挪用,也可自力利用。
2、新增MSSQL存储历程挪用办法,可天真挪用存储历程并前往前往值、纪录集及出参。
3、新增db.CreatConn办法,能够依据自界说的毗连字符串联接数据库。
4、新增db.Json办法,能够将数据库纪录集按Json格局输入。
5、新增db.Rand和db.RandStr办法,能够天生一个不反复的随机数大概随机字符串
6、新增数据库操纵各办法的简写办法,更勤俭誊写代码工夫。
7、在Easp类中新增大批的有用办法,如平安猎取值、防Sql注进、服务器端表单考证等。
别的更新:
1、优化db.AutoId主动猎取编号,效力进步20倍以上,数据量越年夜越分明。
2、修正db.OpenConn数据库毗连办法,更切合一样平常形貌习气。
3、修正db.GetRecord取纪录集办法,参数更少。修改前提利用数组报错的Bug。
4、修正并优化db.DeleteRecord删除纪录办法,今朝只要两个参数了。
5、修正了毛病调试办法,增添Debug全局属性把持毛病显现。
更新申明:
之前写了一个clsDbCtrl.asp数据库把持类,收到一些反应,另有伴侣发来邮件告知我一些改善的办法,很感激他们。而我在原帖的跟帖中看到一条留言说“有记参数的工夫,SQL语句早都写完了”,更是间接指出了个中的为难,切实其实,只管VBS没有arguments属性,但用太多的参数也不是个好主张。以是我花了些工夫把这个类的很多代码都重写了一下,在包管功效只能更强不克不及更弱的条件下,一个办法最多只要3个参数了。别的新增添了一个挪用MSSQL存储历程的办法,能够天真的挪用存储历程并依据必要前往一个或多个纪录集、输入参数及前往值,固然,吸收教导了,这个办法只要两个参数。如今都封装在这个新的名叫EasyASP的家伙中了,望文生义,不过是想统统都复杂点。
别的另有一个更为难的,那就是VBScript并非面向工具的言语,以是这个类实在说穿了也只是一些历程和办法的封装,便利利用罢了,以是个中年夜部分的办法和历程都能够提出来独自利用。固然,假如有必要,也能够把它封装成wsc大概dll组件利用。
=================================================================
利用申明
=================================================================
1、利用办法:
(1)Easp类的一切挪用都已包括在easp.asp中,以是只必要在页首引进该文件,如:
QUOTE:<!--#includefile="inc/easp/easp.asp"-->
或:
QUOTE:<!--#includevirtual="/inc/easp/easp.asp"-->
(2)该类已实例化,无需再独自实例化,间接利用Easp.前缀挪用便可,如:
QUOTE:Easp.wn("TestString")或Easp.db.AutoId("Table:ID")
(3)如要同时操纵多个数据库,请实例化新的easpdb工具,如:
QUOTE:Dimdb2:Setdb2=NewEasyASP_db
db2.dbConn=db2.OpenConn(0,dbase,server)
2、参数商定:
(1)数组参数:因为VBScript没有arguments属性,不克不及利用静态参数,以是,在本类触及到数据库数据的代码中,利用了Array(数组)来到达这一效果。本类中的部分参数可使用数组(参数申明中有说明),但利用数组时应参照以下格局:
QUOTE:Array("Field1:Value1","Field2:True","Field3:100")
对,有点像json的格局,假如触及到变量,那就如许:
QUOTE:Array("Field1:"&Value1,"Field2:"&Value2,"Field3:"&Value3)
能够如许说,本类中的几近一切与数据库字段相干的内容都能够用以上的数组格局来设置前提大概是猎取内容,包含挪用存储历程要传送的参数。而这个类里最年夜的长处就是在利用时不必往思索字段的范例,在字段后跟一个冒号,接着跟上响应的值就好了。假如你常常手写ASP程序的话,你很快就会感觉到使用这类体例的魅力,除数据范例不必思索以外,它也很便利随时增加和删除前提。这里举个例子申明这个用法:
好比增加新纪录的办法:
QUOTE:Easp.db.AddRecord"Table",Array("FieldsA:测试数据","FieldsB:"&Now(),"FieldsC:True")
参数只要两个,一个是表名,另外一个就是如许的数组参数。假如要改动数据库布局,则修正下面的程序代码就十分复杂了。
(2)共用参数(用特别标记分开):也是思索到要只管削减参数,假如有些参数在良多时分都能够没有的话,那就没有需要专门为它增添一个参数。在本类里接纳了特别标记如冒号(:)分开一个参数中的多个值来到达传送多个参数的效果。举几个例子申明一下,同时也能够预览一下接纳本类的一些上风:
好比创建MSSQL数据库毗连工具的办法:
QUOTE:SetConn=Easp.db.Open(0,"Database","User:Password@ServerAddress")
很一览无余对不合错误,这里就用:和@分开了几个参数而放在统一个参数里了。别的假如是Access数据库有暗码则在第3个参数中输出就好了,没有别的参数了。
再好比猎取纪录集的办法:
QUOTE:Setrs=Easp.db.GetRecord("Table:FieldsA,FieldsB,FieldsC:20","ID>10","IDDesc")
个中第1个参数中包括了表名,要取的字段和要取的纪录数,由于字段和纪录数良多时分是能够省略的,以是俺干脆把参数也省略了,如许要记的参数要少良多滴。
再好比本类里有一个GetUrl()的猎取本页面地点的办法,良多中央都见过是吧,可是本类里这个办法带一个参数,经由过程这个参数能够获得良多了局,看例子:
好比本页面的实践地点为:
QUOTE:http://www.domain.com/news/index.asp?type=public&feed=on&page=23
接上去是利用分歧参数前往的了局:
QUOTE:办法前往了局
GetUrl("")http://www.domain.com/news/index.asp?type=public&feed=on&page=23
GetUrl(0)/news/index.asp
GetUrl(1)/news/index.asp?type=public&feed=on&page=23
GetUrl("page")/news/index.asp?page=23
GetUrl("-page")/news/index.asp?type=public&feed=on
GetUrl(":")/news/?type=public&feed=on&page=23
GetUrl(":-feed,-page")/news/?type=public
无需更多申明了吧,呵呵。本类中天真利用共用参数的中央另有良多,这也是EasyASP的一年夜特征,人人本人看手册吧。
3、办法和属性概览:
(1)数据库操纵:
属性:
Easp.db.dbConn(读写)设置和猎取以后数据库毗连工具
Easp.db.DatabaseType(只读)查询以后利用的数据库范例
Easp.db.Debug(读写)设置和查询毛病调试开关
Easp.db.dbErr(只读)查询毛病信息
办法:
Easp.db.OpenConn依据模板创建数据库毗连工具
Easp.db.CreatConn依据自界说字符串创建数据库毗连工具
Easp.db.AutoID依据表名猎取主动编号
Easp.db.GetRecord依据前提猎取纪录集
Easp.db.wGetRecord输入猎取纪录集的SQL语句
Easp.db.GetRecordBySQL依据自界说SQL语句猎取纪录集
Easp.db.GetRecordDetail猎取某一纪录的具体信息
Easp.db.AddRecord增加一条新的纪录
Easp.db.wAddRecord输入增加新纪录的SQL语句
Easp.db.UpdateRecord依据前提更新纪录
Easp.db.wUpdateRecord输入更新纪录的SQL语句
Easp.db.DeleteRecord依据前提删除纪录
Easp.db.wDeleteRecord输入删除纪录的SQL语句
Easp.db.ReadTable依据前提猎取指定字段数据
Easp.db.Json依据纪录集天生Json格局数据
Easp.db.doSP挪用一个存储历程并前往多种数据
Easp.db.Rand天生一个不反复的随机数
Easp.db.RandStr天生一个不反复的随机字符串
Easp.db.C封闭纪录集并开释资本
(2)字符串处置:
Easp.w输入字符串
Easp.wn输入字符串和一个HTML换行("<br/>")
Easp.we输入字符串并停止程序
Easp.isN判别字符串是不是为空值
Easp.js输入JavaScript代码
Easp.alert弹出js动静框并前往上页
Easp.alertUrl弹出js动静框并跳转到新页
Easp.jsEncode转换字符串为平安的JavaScript字符串
Easp.CutString截取字符串并以自界说标记取代被截部分
Easp.HtmlEncodeHTML加码函数
Easp.HtmlDecodeHTML解码函数
Easp.HtmlFilter过滤HTML标签
Easp.RandStr天生指定长度的随机字符串
Easp.R猎取Request值并转换为SQL平安字符串
Easp.Ra平安猎取Request值并在毛病时弹出js动静框
Easp.Test依据正则表达式考证数据正当性
(3)工夫日期处置:
Easp.DateTime格局化工夫日期
Easp.DiffHour前往一个日期工夫变量和如今比拟相差的小时数
Easp.DiffDay前往一个日期工夫变量和如今比拟相差的天数
Easp.GetScriptTime依据工夫戳前往准确到毫秒的剧本实行工夫
(4)数字处置:
Easp.Rand天生一个随机数
Easp.toNumber转换数字为指定小数位数的格局
Easp.toPrice转换数字为泉币格局
Easp.toPercent转换数字为百分比格局
(5)Cookie及Application处置:
Easp.SetCookie设置一个Cookies值
Easp.GetCookie猎取一个Cookies值
Easp.RemoveCookie删除一个Cookies值
Easp.SetApp设置一个Application值
Easp.GetApp猎取一个Application值
Easp.RemoveApp删除一个Application值
(6)别的:
Easp.IfThen判别三元表达式
Easp.rr服务器端跳转页面
Easp.GetUrl猎取以后页面的URI地点
Easp.GetIP猎取会见者IP
Easp.noCache设置页面不缓存
Easp.close封闭工具并开释资本
Easp.CheckForm服务器端表单考证分歧法弹出js动静框
Easp.CheckDataFrom考证提交数据来历
Easp.CheckDataFromA考证数据来历分歧法例弹出js动静框
Easp.CheckSql防SQL注进强考证
Easp.CheckSqlA防SQL注进强考证分歧法例弹出js动静框
在实现ERP等高端的ASP应用时,用户需要提供核心的经营资料,需要ASP商有很高的信用度。楼上说交互性不好,太牵强了吧。在微软提供的一套框架中,利用asp做网站,开发效率高,使用人数少,减少不必要的开销。交互性是互动方式,是有开发人员决定的。 运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。 如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助: 作为IE上广为流传的动态网页开发技术,ASP以它简单易学博得了广大WEB程序爱好这的青睐,而且它对运行环境和开发品台的不挑剔,以及有大量有效的参考手册,极大的推广了它的发展。 代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。 他的语法和设计思路和VB完全相同,导致很多ASP的书都留一句“相关内容请参考VB的相关教材....”更糟糕的是,相当多的ASP教程混合了Javascript,VBscript等等脚本语言,搞的初学者。 如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助: ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码,能产生和执行动态、交互式、高效率的站占服务器的应用程序。
页:
[1]