ASP程序设计实务课件_第1页
ASP程序设计实务课件_第2页
ASP程序设计实务课件_第3页
ASP程序设计实务课件_第4页
ASP程序设计实务课件_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

ASP程序设计实务

7.1数据格式化

7.1.1格式化日期数据格式:FormatDateTime(Date[,NamedFormat])

7.1.2格式化数值数据

格式:

FormatNumber(expression[,NumDigitsAfterDecimal[,IncludeLeadingDigit

[,UseParensForNegativeNumbers[,GroupDigits]]]])

7.1.3设置货币值格式

格式:

FormatCurrency(expression[,NumDigitsAfterDecimal[,IncludeLeadingDigit

[,UseParensForNegativeNumbers[,GroupDigits]]]])

7.1.4设置百分数格式

格式:

FormatPercent(expression[,NumDigitsAfterDecimal[,IncludeLeadingDigit

[,UseParensForNegativeNumbers[,GroupDigits]]]])7.2包含文件

7.2.1包含指令#include格式:<!--#includevirtual|file="filename"-->说明:参数

virtual或者

file表示包含文件的路径类型,filename

表示被包含文件的路径和文件名。1.使用Virtual关键字示例:<!--#includevirtual="/myapp/footer.inc"-->2.使用File关键字示例:<!--#includefile="headers\header1.inc"-->7.2.2包含文件的使用

1.使用包含文件的优点在开发Web应用程序时,将各个页面中功能类似的程序或代码段作为包含文件加以保存,待需要时再方便地将其包含到当前的页面中来,不仅可以做到因代码重用而大大提高编程效率,还可以使得各个页面外观一致、风格统一。例如,可将应用程序中大多数网页上都有的菜单或者导航条脚本代码保存为包含文件,并将其插入到所需的有关网页中。2.使用包含文件的注意事项l

一个ASP文件可以包含若干个不同的文件,也可以多次包含同一文件。l

被包含的文件还可以再包含其他的文件,只要

#include指令不导致循环。l

一个文件不能包含其自身。系统将检测出这种循环或嵌套错误,并停止处理所请求的ASP文件。l

系统在执行脚本命令之前将包含文件的内容插入进来。因此,不能使用脚本命令建立被包含的文件名。3.通过<SCRIPT>标记包含文件示例:

<SCRIPTLANGUAGE="VBScript"RUNAT=SERVERSRC="Utils\datasrt.inc"></SCRIPT>7.3管理会话

开发一个成功的

Web应用程序所面临的挑战之一是:当客户从应用程序中的某一页面转到另一页面时,如何在整个访问或会话期间维护该客户的信息。HTTP是一种无状态协议,即站点的Web服务器将对网页的每个

HTTP请求都当作独立的请求,服务器不保留与以前的请求有关的任何信息。ASP针对管理会话信息时所遇到的问题提供了特有的解决方案。使用

ASP的Session对象以及服务器生成的特定客户ID,使得开发者可以创建更智能的、用于标识每个来访客户的应用程序,并收集应用程序用来跟踪客户选择项的信息。7.3.1启动和结束会话

会话有以下几种开始方式:l

新客户对应用程序中的某个ASP文件发出请求,并且此应用程序的

Global.asa文件中包含

Session_OnStart过程。l

客户在

Session对象中保存了一个值。l

如果服务器接收到的请求中没有包含有效的

SessionIDCookie,就将自动启动新的会话。说明:如果在某一指定时间内,客户没有请求或刷新应用程序中的网页,会话就将自动结束。7.3.2SessionIDCookies

当客户第一次请求特定应用程序内的ASP文件时,Web服务器将为该客户生成一个SessionID。这是通过复杂算法产生的一个数值,SessionID唯一标识每个客户的会话。新会话开始时,Web服务器将这个SessionID作为Cookie存储到客户端。

7.3.3存储或删除Session对象数据

1.存储Session对象数据示例:<%Session("FirstName")="Jeff"Session("LastName")="Smith"%>

2.使用Session对象数据示例:Welcome<%=Session("FirstName")%>

3.删除单个Session对象数据示例:<%IfSession.Contents("Purchamnt")<=75ThenSession.Contents.Remove("Discount")EndIf%>

4.删除所有Session对象数据示例:Session.Content.RemoveAll()7.3.4使用Cookie

1.设置Cookie2.获取Cookies3.设置Cookie路径4.保留使用Cookies的状态7.3.5无会话ASP网页

无会话ASP网页可以消除潜在的、非常耗时的会话活动,从而提高Web服务器的响应能力。通过ASP脚本代码可以创建“无会话”网页。可以使用这种无会话网页推迟创建客户的会话跟踪,直到需要时才创建。无会话网页将不执行下列任务:l

执行Session_OnStart过程。l

发送sessionIDCookie。l

创建Session对象。l

访问由

<OBJECT>标记创建的内置Session对象或会话范围对象。l

与其他会话请求连接执行。

可使用下列命令将ASP页面配置为无会话网页:<%@EnableSessionState=False%>7.4处理事务7.4.1关于事务所谓事务(Transaction)是一种服务器端的操作,无论此操作包含多少步骤(例如订购、货物调拨以及付帐等),它都应该是要么全部成功,要么全部失败。网络应用程序开发者可以创建在事务范围内运行的服务器端脚本,这样,如果脚本的某个部分出错,整个事务都将中止。事务处理方式主要用于保证数据库更新的可靠性。当对数据库进行许多相关联的更改或同时更新多个数据库时,必须确保所有更改都被准确执行。假如发生任何更改的失败,则必须恢复到对数据库操作前的原始状态。7.4.2在网页中使用事务

1.声明事务性网页2.使用ADO事务3.使用DBMS事务7.4.3编写事务事件

就脚本程序本身而言,是无法确定某个事务是成功还是失败的。但是,开发者可以利用ObjectContext对象提供的OnTransactionCommit和

OnTransactionAbort事件来编写在事务提交或中止时可供调用的事件过程。7.4.4声明完成或放弃事务ASP的ObjectContext对象提供有SetAbort方法和SetComplete方法,SetAbort方法可用来宣告放弃当前的事务,因而系统不再对数据源进行更新;SetComplete方法则用来宣告当前的事务已完成,从而保存对数据源的更新。7.4.5事务处理的其他事项

1.事务组件的注册2.对象作用域3.队列事务7.5错误类型与出错信息

7.5.1错误类型1.语法错误语法错误是一种经常遇到的错误,它是由于脚本语句的语法不正确引起的。例如,命令拼写错误、空格或标点符号错误,以及传递给函数的参数数目不对等都可能产生此类错误。如果语法不正确,脚本代码便将无法执行。2.运行时错误运行时错误发生在脚本开始执行之后,它是由于脚本命令试图执行不可能的操作而引起的一类错误。例如以0作为除数(这是一种非法的数学运算),就将产生运行时错误。

3.逻辑错误逻辑错误是最难以发现的错误,它是由于键入错误或程序逻辑上的缺陷引起的。逻辑错误的特点是:脚本能够运行,但产生的结果不正确。例如,如果服务器端脚本需要对列表中的值进行排序,但在脚本中本该使用小于符号(<)的地方错误地使用了大于符号(>),从而导致排序结果不正确。

7.5.2出错信息

1.出错示例:

<%OptionExplicitStrWelcome="欢迎来到新世纪网站!"Response.WriteStrWelcome%>2.常见HTTP错误:l

HTTP错误

400 表示请求无效l

HTTP错误

403 表示禁止访问l

HTTP错误

404-1 表示找不到站点l

HTTP错误

405 表示禁止访问资源l

HTTP错误

500 表示内部服务器错误l

HTTP错误

500-100 表示脚本出现问题,无法运行。

7.5.3用Err对象显示错误

为了使得脚本程序在出错时能够自动跳过出错代码而继续执行下面的语句,并能够运行后续的有关代码来处理出现的错误,可以使用MicrosoftVBScript提供的OnErrorResumeNext语句和Err对象。OnErrorResumeNext语句可以不顾运行时产生的错误,使程序接着从产生错误的语句之后继续执行;而Err对象则可用来判断发生了什么错误,并从该对象提供的一系列属性值获得各种具体的错误信息。

示例:<%OptionExplicitOnErrorResumeNextStrWelcome="欢迎来到新世纪网站!"Response.WriteStrWelcomeIfErr.Number<>0Then Response.Write"程序发生错误,已停止执行。"&"<br>" Response.Write"错误代码:"&Err.Number&"<br>" Response.Write"错误描述:"&Err.Description&"<br>" Response.Write"错误对象或名称:"&Err.Source&"<br>"EndifResponse.Write"<p><ahref='Default.htm'>[返回首页]</a>"%>7.6ASP脚本调试

MicrosoftDevelopmentEnvironment是一个强大的调试工具,可以帮助用户快速定位错误,并能使用交互方式测试服务器端脚本。使用它可以实现:l

每次运行服务器端脚本的一行语句。l

在执行服务器端脚本期间,打开有关窗口,监视变量、属性或数组元素的值。l

在脚本的特定语句行,使用调试器或脚本命令设置断点以暂停执行服务器端脚本。l

跟踪服务器端脚本的运行过程。7.6.1调试基础

1.调试工具可帮助发现下列错误:l

编译错误l

运行时错误l

逻辑错误2.MicrosoftDevelopmentEnvironment的调试窗口:l

立即窗口l

监视窗口l

局部窗口l

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论