当前位置: 首页 > 图文教程 > 网络编程 > ASP > 5个实用的ASP网站功能(GIB5)

ASP
自动清空站点目录下所有文件
ASPEMAIL通过Mdaemon的SMTP发信-recipient unknow处理办法
使用split分割多字符的字符串的方法
ASP调用oracle存储过程
ASP访问INTERBASE数据库
利用Session限制重复操作的简单方法
一个socket组件及其调用方法
ASP模仿asp.net的DataGrid
利用ASP技术实现文件直接上传功能
微软建议的ASP性能优化28条守则
温柔的杀手—跨站ASP Script攻击
aspjpeg组件高级使用方法介绍
asp+sqlserver 分页方法(不用存储过程)
Windows 2003上传文件不能超过200k解决方法
一个比较实用的asp函数集合类
WebClasses使注册变得容易
ASP对FoxPro自由表(DBF文件)的操作
HTTP_REFERER的工作方式
抓取动网论坛Email地址的一段代码
ASP+FSO+框架实现ASP生成htm并分页的方法(批量)

5个实用的ASP网站功能(GIB5)


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

  如果喜欢我就继续,如不喜欢就删掉吧。

5個實用網站功能速成

刊登於RUN!PC 1999/2月號

作者 喬篷科技 周世雄

本文重點

在前幾期的IIS 4.0專欄當中,我們看到了威力強大的IIS(Internet Information Server)4.0之30個特異功能、SSL與數位認證、如何使用ASP設計一個生動的網站、如何將Web資料庫化、IIS 4.0網站進階管理、如何將網站元件化、Transaction Server三層式架構技術速成、和SQL Server 7.0網站資料庫的技術等單元。本期將探討5個實用的ASP網站功能。

筆者為微軟台北廳、經銷商訓練、TechNet等研討會講師,和微軟之友、RUN!PC雜誌專欄作者,著作有「ASP網站熱門應用技術」、「微軟熱門Web技術速成班」等網站網頁設計十幾本電腦書籍。現任「喬篷科技」公司總經理,從事Internet、Intranet之Web資料庫應用設計、網站網頁規劃架設等服務。

IIS 4.0示範網站:www.asp.com.tw

連絡E-mail:[email protected]

 

5個實用的ASP網站功能

前幾期學會了如何將網站asp化、資料庫化、和元件化的「網站3化」後,本期將教您如何善用5個實用的ASP網站功能。

5個實用的ASP網站功能如下:


Transaction功能:「同生共死」的異動(Transaction)功能。


SSL功能:安全傳輸。


Message Queue功能:非同步處理功能。


中文全文檢索功能。


郵件傳送功能。

 

網站如何加入Transaction功能呢?

如何於您的網站加入異動(Transaction)功能呢?

IIS(Internet Information Server)與MTS(Microsoft Transaction Server)緊密整合,資料庫更動可以有「同生共死」的異動(Transaction)功能。

當asp程式中所有的資料庫更動都成功時,才算成功;有一個資料庫的更動失敗時,已經更動的資料庫資料將自動恢復(rollback),這就是所謂的異動(Transaction)功能。

譬如從甲帳戶匯款到乙帳戶時,若乙帳戶的資料庫更動失敗時,已經更動甲帳戶的資料庫資料將自動恢復(rollback)。數個資料庫的資料更動,不是「同生」,就是「共死」。

並不是所有資料庫都提供異動(Transaction)的功能,Access沒有提供,SQL Server和Oracle則提供異動(Transaction)的功能。

asp程式中異動(Transaction)功能的有效範圍為一個asp程式,換句話說,這個asp程式中所有的資料庫更動都具有異動(Transaction)功能。

如何於asp程式中告訴IIS要做異動(Transaction)功能的處理呢?

方法為於asp程式碼當中的第一行加入「TRANSACTION=Required」,告訴IIS這一個asp程式使用異動(Transaction)功能的處理方式,asp程式如下:

<%@ TRANSACTION=Required LANGUAGE="VBScript" %>

若此asp程式內所有程式(包括更新數個資料庫)執行成功時,將呼叫OnTransactionCommit()副程式。若執行失敗(包括更新任何一個資料庫失敗)時,將呼叫OnTransactionAbort()副程式。

您可以呼叫SetComplete方法表示執行成功,或呼叫SetAbort方法表示執行失敗。

譬如asp檔案如下:

<%@ TRANSACTION=Required LANGUAGE="VBScript" %>

...

<% Set obj1 = Server.CreateObject("testobj.cls1") %>

<% = obj1.data3t(1,10) %>

<%

Sub OnTransactionCommit()



end sub

Sub OnTransactionAbort()



end sub

%>

設計有Transaction功能的元件

如何設計有異動(Transaction)功能的元件呢?

方法為ActiveX DLL中使用asp的ObjectContext物件,譬如說於Visual Basic 的ActiveX DLL定義如下:

Dim objContext As ObjectContext

Set objContext = GetObjectContext()

執行成功時,呼叫SetComplete方法,執行失敗時呼叫SetAbort方法以釋放資源。

譬如說於Visual Basic 的ActiveX DLL,其Visual Basic程式碼如下:

Function data3t(input1, points)

On Error GoTo Error1

Dim objContext As ObjectContext

Set objContext = GetObjectContext()

...

objContext.SetComplete

Exit Function

Error1:

objContext.SetAbort

End Function