easyasp mysql_EasyASP v1.5发布(包含数据库操作类,原clsDbCtrl.asp)

EasyASP v1.5发布(包含数据库操作类,原clsDbCtrl.asp)

更新时间:2008年10月24日 00:30:57   作者:

EasyASP是一个方便快速开发ASP的类,其中包含了一个数据库控制类(原clsDbCtrl.asp,对原代码作了优化和修改,包含对数据库的各类操作及存储过程的调用,全部封装在Easp.db中,使用起来会更方便,调用也更简单)。

而Easp类中提供了大量实用的ASP通用过程及方法,可以简化大部分的ASP操作。目前只提供了VBScript版,JScript版将来可能会提供。

EasyASP v1.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中,所以只需要在页首引入该文件,如:

或:

(2) 该类已经实例化,无需再单独实例化,直接使用Easp.前缀调用即可,如:

Easp.wn("Test String") 或 Easp.db.AutoId("Table:ID")

(3) 如要同时操作多个数据库,请实例化新的easpdb对象,如:

Dim db2 : Set db2 = New EasyASP_db

db2.dbConn = db2.OpenConn(0,dbase,server)

2、参数约定:

(1) 数组参数:由于VBScript没有arguments属性,不能使用动态参数,所以,在本类涉及到数据库数据的代码中,使用了Array(数组)来达到这一效果。本类中的部分参数可以使用数组(参数说明中有注明),但使用数组时应参照以下格式:

Array("Field1:Value1", "Field2:True", "Field3:100")

对,有点像json的格式,如果涉及到变量,那就这样:

Array("Field1:" & Value1, "Field2:" & Value2, "Field3:" & Value3)

可以这样说,本类中的几乎所有与数据库字段相关的内容都可以用以上的数组格式来设置条件或者是获取内容,包括调用存储过程要传递的参数。而这个类里最大的优点就是在使用时不用去考虑字段的类型,在字段后跟一个冒号,接着跟上相应的值就行了。如果你经常手写ASP程序的话,你很快就会感受到运用这种方式的魅力,除了数据类型不用考虑之外,它也很方便随时添加和删除条件。这里举个例子说明这个用法:

比如添加新记录的方法:

Easp.db.AddRecord "Table", Array("FieldsA:测试数据","FieldsB:"&Now(),"FieldsC:True")

参数只有两个,一个是表名,另一个就是这样的数组参数。如果要改变数据库结构,则修改上面的程序代码就非常简单了。

(2) 共用参数(用特殊符号分隔): 也是考虑到要尽量减少参数,如果有些参数在很多时候都可以没有的话,那就没有必要专门为它增加一个参数。在本类里采用了特殊符号如冒号(:)分隔一个参数中的多个值来达到传递多个参数的效果。举几个例子说明一下,同时也可以预览一下采用本类的一些优势:

比如建立MSSQL数据库连接对象的方法:

Set Conn = Easp.db.Open(0,"Database","User:Password@ServerAddress")

很一目了然对不对,这里就用:和@分隔了几个参数而放在同一个参数里了。另外如果是Access数据库有密码则在第3个参数中输入就行了,没有其它参数了。

再比如获取记录集的方法:

Set rs = Easp.db.GetRecord("Table:FieldsA,FieldsB,FieldsC:20","ID > 10","ID Desc")

其中第1个参数中包含了表名,要取的字段和要取的记录数,因为字段和记录数很多时候是可以省略的,所以俺索性把参数也省略了,这样要记的参数要少很多滴。

再比如本类里有一个GetUrl()的获取本页面地址的方法,很多地方都见过是吧,但是本类里这个方法带一个参数,通过这个参数可以取得很多结果,看例子:

比如本页面的实际地址为:

http://www.domain.com/news/index.asp?type=public&feed=on&page=23

接下来是使用不同参数返回的结果:

方法 返回结果

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换行("
")

Easp.we 输出字符串并终止程序

Easp.isN 判断字符串是否为空值

Easp.js 输出JavaScript代码

Easp.alert 弹出js消息框并返回上页

Easp.alertUrl 弹出js消息框并跳转到新页

Easp.jsEncode 转换字符串为安全的JavaScript字符串

Easp.CutString 截取字符串并以自定义符号代替被截部分

Easp.HtmlEncode HTML加码函数

Easp.HtmlDecode HTML解码函数

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消息框

下载地址https://www.jb51.net/codes/7450.html

相关文章

1a1b05c64693fbf380aa1344a7812747.png

ASP高亮类...2006-08-08

4f55910a645b073bc4fc65dc10dc14bd.png

ASP中一个用VBScript写的随机数类...2006-08-08

0ea3c7666119d5615e582f823fb3fad6.png

newasp中下载类...2006-10-10

4f96a78db829b1556ff16de21e013c7a.png

一个简单的asp数据库操作类...2006-08-08

8cc1031babc6aff2319f1c6af8544aa0.png

asp的通用数据分页类...2007-03-03

0c932a99bb7b6f23c937db507070cc7b.png

ASP实现缓存类无错版...2007-08-08

cca732bf65a93ed2ec0ac80c638460fe.png

我们常常看到别的程序语言中中都有类的说明,PHP,VB,C++,这个在VBScript中的类的说明,我是第一次听到,我们的日常工作就是网站开发,在这个里面多多少少搞出点经验,像模像样也能自诩为内行,所以我就来分享一下我所知道的这个新的东东2006-08-08

2d9f31f2af7b675a3d153d2b7f1035a7.png

本篇文章主要介绍了asp下生成目录树结构的类,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2007-11-11

b452cee8ec5cd9e58ab98eba17281e59.png

在VBScript中使用类...2006-08-08

f4838ec7e2d4da28e0b57d4e852dadd4.png

统计有多少行JS代码和ASP代码...2006-09-09

最新评论

EasyASP是一个方便快速开发ASP,其中包含数据库控制Easp.db,具有同时对一个或多个数据库进行各操作、调用MSSQL存储过程及记录集分页等功能。EasyASP同时提供了大量实用的ASP通用过程及方法,可以简化大部分的ASP操作EasyASP目前提供下载的是VBScript版。 EasyASP 2.1 GB2312 更新日志: 新增Easp.Include方法,完美实现了ASP的动态包含,且支持ASP源码中无限级层次的<!--#include...-->。 新增Easp.GetInclude方法,用于获取ASP文件运行的结果或获取html文件等文本文件的源码。 新增Easp.Charset属性,用于设置Easp.Include方法和Easp.getInclude方法载入文件的编码。 新增Easp.ConfirmUrl方法,用于输出确认信息框并根据选择进行Url跳转。 新增Easp.HtmlFormat方法,用于对html文本进行简单的格式化(仅转换空格和换行为可见)。 新增Easp.RegReplaceM方法,用于正则替换的多行模式。 新增Easp.RegMatch方法,用于正则匹配的编组捕获。 新增Easp.IsInstall方法,用于检测系统是否安装了某个组件。 [db]新增Easp.db.QueryType属性,可设置用ADO的RecordSet还是Command方式获取记录集。 [db]新增Easp.db.GetRandRecord方法,用于取得指定数量的随机记录集。 [db]新增Easp.db.Exec方法,用于执行SQL语句或者返回Command方式查询的记录集。 优化Easp.DateTime方法,格式化为时间差时的显示更人性化。 优化Easp.RandStr和Easp.db.RandStr方法,提供更强大更人性化的随机字符串和随机数生成功能。 修正Easp.GetUrlWith方法第一个参数为空时生成的新URL出错的Bug。 修正Easp.GetApp方法无法获取缓存数据的Bug。 修正Easp.AlertUrl跳转前会继续执行服务器端代码的Bug。 修正v2.1beta版中Easp.JsEncode和Easp.db.Json方法会报“型不匹配”错误的Bug。 修正v2.1beta版中Easp.RandStr和Easp.db.RandStr的一个Bug。 [db]优化Easp.db.AddRecord方法,现在仅当指定了ID字段的名称时才返回新增的记录ID号。(影响以前版本) [db]修正分页下拉框中页面数量小于jumplong配置时出现负数的Bug。 EasyASP的特点: [数据库] 能方便的实现一个或多个数据库的增、删、改等控制操作。 [数据库] 对数据库字段进行操作时可以不用考虑字段值数据型的差别(如文本字段不用加单引号)。 [数据库] 自带记录集分页和调用存储过程分页功能,拥有功能丰富的可完全自定义配置及调用。 [数据库] 能方便的执行带各种参数的MSSQL存储过程并返回多个值或多个记录集。 [数据库] 完善的数据库操作容错功能,能即时输出出错SQL语句方便调试。 [数据库] 在使用已经存在的数据库连接对象时能自动判断数据库型。 [数据库] 专为Ajax设计的数据获取方式及输出Json格式数据。 [数据库] 能有效防止SQL注入。 [ASP] 自带大量的ASP通用过程及方法,简化大部分ASP操作。 [ASP] 完美实现ASP文件的动态载入,并支持无限级的ASP生include。 [ASP] 自带数据型验证及服务器端表单验证功能。 [ASP] 能轻松实现页面地址获取并对URL参数进行过滤以及替换。 [工具] 具有专为EasyASP开发的适用于Dreamweaver CS3 和 CS4 的代码高亮及代码提示扩展插件。 [工具] 具有完善的帮助手册及大量应用实例。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值