看了《如何令你的网站“动感十足”》一文后,是否令你怦然心动?是否已经急不可待地想构建属于你自己的动态网站?本文将以Active Server Pages为中心,向你全面展示制作动态商业网站的步骤和技巧并通过大量的实例,让你在不断的理论和实践之中笑傲“网络”……

上一章给大家简要介绍了建立动态网站的一些方法和制作工具,本章将以如何建立基于IIS的ASP动态网站为中心向大家一步一步地揭示动态商业网站设计的真正奥秘。为了使各位能够全面、细致地掌握ASP的开发技巧,本文今后将采取连载的形式,手把手地教你如何建立属于自己ASP动态网站。由于本文是作者根据自己的学习和实践经验并结合了一些外文资料而写成的,因此不免会有一些偏颇,希望各位见谅。如发现本文有何不当之处,请及时通知作者,谢谢。

  Microsoft Active Server Pages即我们所称的ASP,其实是一套微软开发的服务器端脚本环境,ASP内含于IIS3.0和4.0之中,通过ASP我们可以结合HTML网页、ASP指令和ActiveX元件建立动态、交互且高效的WEB服务器应用程序。有了ASP你就不必担心客户的浏览器是否能运行你所编写的代码,因为所有的程序都将在服务器端执行,包括所有嵌在普通HTML中的脚本程序。当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度。以下罗列了Active Server Pages所独具的一些特点: 1.使用VBScript、JScript等简单易懂的脚本语言,结合HTML代码,即可快速地完成网站的应用程序。
 2.无须compile编译,容易编写,可在服务器端直接执行。
 3.使用普通的文本编辑器,如Windows的记事本,即可进行编辑设计。
 4.与浏览器无关(Browser Independence),用户端只要使用可执行HTML码的浏览器,即可浏览Active Server Pages所设计的网页内容。Active Server Pages所使用的脚本语言(VBScript、Jscript)均在WEB服务器端执行,用户端的浏览器不需要能够执行这些脚本语言。
 5.Active Server Pages能与任何ActiveX scripting语言相容。除了可使用VBScript或JScript语言来设计外,还通过plug-in的方式,使用由第三方所提供的其他脚本语言,譬如REXX、Perl、Tcl等。脚本引擎是处理脚本程序的COM(Component Object Model)物件。
 6.Active Server Pages的源程序,不会被传到客户浏览器,因而可以避免所写的源程序被他人剽窃,也提高了程序的安全性。
 7.可使用服务器端的脚本来产生客户端的脚本。
 8.物件导向(Object-oriented)。
 9.ActiveXServerComponents(ActiveX服务器元件)具有无限可扩充性。可以使用VisualBasic、Java、VisualC++、COBOL等编程语言来编写你所需要的ActiveX Server Component。

  ASP的奇妙之处真是不胜枚举,下面就请各位系好安全带,我将带领大家进入ASP的梦幻世界。

  首先,让我们来看看运行ASP所需的环境:

Microsoft Internet Information Server version3.0/4.0 on WindowsNT Server
Microsoft Peer WebServices Version3.0 on WindowsNT Workstation
Microsoft Personal Web Server on Windows95/98
  正如前文所述,与一般的程序不同,.asp程序无须编译,ASP程序的控制部份,是使用VBScript、JScript等脚本语言来设计的,当执行ASP程序时,脚本程序将一整套命令发送给脚本解释器(即脚本引擎),由脚本解释器进行翻译并将其转换成服务器所能执行的命令。当然,同其他编程语言一样,ASP程序的编写也遵循一定的规则,如果你想使用你所喜爱的脚本语言编写ASP程序,那么你的服务器上必须要有能解释这种脚本语言的脚本解释器。当你安装ASP时,系统提供了两种脚本语言:VBsrcipt和JScript,而VBscript则被作为系统默认的脚本语言。你也可以根据自己的喜好改变系统默认的脚本语言,关于如何改变系统默认的脚本语言请看《在ASP中使用脚本语言》一文。
  ASP本身并不是一种脚本语言,它只是提供了一种使镶嵌在HTML页面中的脚本程序得以运行的环境。但是,要学好ASP又必须掌握它的语法和规则。现在就让我们开始一步一步地认识并学习Active Server Pages。

  ASP程序其实是以扩展名为.asp的纯文本形式存在于WEB服务器上的,你可以用任何文本编辑器打开它,ASP程序中可以包含纯文本、HTML标记以及脚本命令。你只需将.asp程序放在WEB服务器的虚拟目录下(该目录必须要有可执行权限),就可以通过WWW的方式访问ASP程序了。要学好ASP程序的设计,必须掌握脚本的编写,那么究竟什么是脚本呢?其实脚本是由一系列的脚本命令所组成的,如同一般的程序,脚本可以将一个值赋给一个变量,可以命令WEB服务器发送一个值到客户浏览器,还可以将一系列命令定义成一个过程。要编写脚本,你必须要熟悉至少一门脚本语言,如VBScript。脚本语言是一种介乎于HTML和诸如JAVA、Visual Basic、C++等编程语言之间的一种特殊的语言,尽管它更接近后者,但它却不具有编程语言复杂、严谨的语法和规则。如前所述ASP所提供的脚本运行环境可支持多种脚本语言,譬如:JScript、REXX、PERL等等,这无疑给ASP程序设计者提供了广泛的发挥余地。ASP的出现使得广大WEB设计者不必在为客户浏览器是否支持而担心,实际上就算你在同一个.asp文件中使用不同的脚本语言,你都无须为此担忧,因为所有的一切都将在服务器端进行,客户浏览器得到的只是一个程序执行的结果,而你也只需在.asp中声明使用不同的脚本语言即可。下面是一个典型的在同一.asp文件中使用两种脚本语言的例子:

  这是各位在本文中接触的第一个真正的ASP程序,千万不要被“”符号搞糊涂,这其实是标准的ASP定界符,而“”之间的就是脚本语言。ASP不同于脚本语言,它有自己特定的语法,所有的ASP命令都必须包含在之内,如:,ASP通过包含在中的表达式将执行结果输出到客户浏览器,如:就是将前面赋给变量test的值English发送到客户浏览器中,而当变量test的值为Mathematics时,以下程序:
   This weekend we will test.

  在客户浏览器中则显示为:
   This weekend we will test Mathematics.

  学习ASP最好的方法莫过于亲自动手编写,为了在最短的时间内使各位掌握ASP的程序设计技巧,本文将采取实例分析法,通过一系列的实例让各位在实践中学习ASP。建立一个ASP页面,你所需的只是打开一个文本编辑器,如:Notepad,然后跟我开始动手编写第一个ASP程序。下面我们将建立一个自动监测浏览时间并根据不同时段动态显示不同页面内容的ASP程序,请将以下代码剪贴到你的文本编辑器中,并存为test1.asp:

=#00:00:00# Then%>
早上好,今天天气不赖啊!
=#12:00:00# Then%>
下午好!

哈喽!今晚你有没有去IRC聊天!

  将test1.asp保存在WEB服务器的虚拟目录(如:aspsamp/)下,并在浏览器中用HTTP的方式进行浏览,如:http://yourcomputername/aspsamp/test1.asp,你将会新奇地发现,你的页面真的活起来了。虽然,这只是一个非常简单的实例,而且这一功能完全可以通过JavaScript完成,但是不难发现使用ASP要比JavaScript简洁、迅速得多,而且运用此法,你完全可以轻而易举地令你的网页在不同的时段展示不同的风格。此例中的“Time”实际上是一个VBScript内置的显示系统当前时间的函数,由于系统默认的脚本语言是VBScript,因此当你在ASP命令中调用该函数时,脚本引擎会自动将其转换成当前的系统时间。接下来我们将给test1.asp添加一点色彩,在标识中添加“bgcolor="”即变为,并在标记前添加如下语句:
=#00:00:00# Then
bgc="silver"
Else If Time=#12:00:00# Then
bgc="navy"
Else
bgc="red"
End If
%>

  如此一来,当用户在不同的时段访问你的页面时,他们将会看到不同的页面背景色。我们可以做的事情还有很多,譬如你想知道在凌晨至十二点之间浏览你页面的客户的姓名,并向他或她问好,那么下面的这段程序将能助你达成心愿。首先你需要在页面中设置表单,将以下HTML代码剪贴到“=#00:00:00# Then%>”之后:

欢迎光临我的主页,请填写以下信息:

FirstName:

LastName:

Title:Mr.
Ms.

  然后在以上HTML代码后面添加如下ASP命令:

title=request.form("title")
if title="mr" then
%>
欢迎您Mr.。

欢迎您Ms.。

欢迎您。

  保存文件test1.asp,并在浏览器中以HTTP方式进行浏览,如果此时的系统时间在凌晨0:00:00和中午12:00:00之间的话,浏览器将显示如下画面:

  这其实是一个在Internet和Intranet上常见的功能,即当用户在浏览器端填写完表单后,通过调用一个通用网关程序将用户数据传送到服务器,由服务器进行处理后再将结果返还给客户浏览器。过去为了实现这样的功能必须编写一个独立于HTML之外的CGI程序,并通过HTML进行调用,撇开CGI编写复杂等缺点不谈,CGI的执行效率也是一个大问题,每一个表单(form)均须执行一个可执行文档,当多人同时上线使用时,多个文档同时执行,将大大降低WEB服务器的执行速度,如今ASP提供了与HTML完全相融的编程环境,显然要比使用CGI便捷得多。

  在本期的最后让我们再来看看ASP的循环功能,譬如你希望当客户在晚间7:00至凌晨0:00:00浏览你的页面时,在页面中央显示6个笑脸表示问候,那么你只需要将以下命令剪贴到“Good Evening!”后面即可:

  这是一个最最基本的循环语句,它将一个笑脸图片重复调用六次并显示在页面上。当然此例的效果完全可以用HTML做到,但是不难发现使用ASP大大缩短了代码的重复编写,使得程序具有良好的可阅读性。另外,当你制作一个诸如根据用户投票来给所评测的对象评定星级的评测站点时,使用此法,你就完全不需要为每一个星级制作一幅图片。如果一个对象被评为4星级,那只需将一颗星的图片循环显示4次,以此类推即可。当然,当工作量较小的时候你不会感觉到ASP的好处,然而一旦数据量巨增,你将会深刻的体会到ASP动态网站给你带来的前所未有的轻、爽感受!

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10294527/viewspace-124371/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10294527/viewspace-124371/

动态网站设计十八般武艺——ASP篇(一)(转)相关推荐

  1. 动态网站设计十八般武艺——ASP篇(七)(转)

    教学纲要 在上一篇中作者给大家详细介绍了ASP内建对象之一Request的使用方法,相信各位通过一系列的实践已经能够熟练掌握,本篇将继续给大家介绍ASP的另一个内建对象Response. 最近,有很多 ...

  2. 动态网站设计十八般武艺——ASP篇(十四)(转)

    最近仍有不少朋友来信问我,ASP是否只能在Microsoft IIS上运行,是否可以在非NT平台上运作?本来这个问题我已经回答过很多遍了:我只是听说过有某种可以支持的软件,却从没见过.但一些热情的朋友 ...

  3. 动态网站设计十八般武艺——ASP篇(十)(转)

    通过前九篇的理论和实践,相信大家已经对ASP有了系统的了解,虽然至今为止,我们只学了ASP的4个内建对象,但已经完全能够写出一些实用的小程序了.今天,作者将继续给大家讲解最后一个ASP内建对象--Se ...

  4. 动态网站设计十八般武艺—— ASP 篇(十七)(转)

    上一篇中给大家着重谈了"ADO 存取数据库时如何分页显示"的问题,有位朋友来信给我指出我在计算页面总数时忽略了 Recordset 对象的一个重要参数"PageCount ...

  5. asp实训报告摘要_个人网站实训报告---asp.NET 动态网站设计

    个人网站实训报告---asp.NET 动态网站设计 网站开发技术实训报告 学生姓名 学 号 学 院 专 业 计算机应用技术计算机应用技术 题 目 asp.NET asp.NET 动态网站设计动态网站设 ...

  6. asp. net sqlsever旅游管理系统动态网站设计制作作业成品

    模板说明: asp. net sqlsever旅游管理系统动态网站设计制作作业成品.前台: 新闻动态/旅游风景/旅游攻略(列表详情).留言 发布 查看.用户注册登录退出.后台: 用户管理(查看 删除) ...

  7. 雾霾环保主题动态网站设计作业

    应用行业: 大学生动态网页作业成品 模板风格: 简单大气 附带服务: 简单解答 模板说明: asp.net+sql雾霾环保主题动态网站设计作业一共有1个页面,网站的开发工具是vs2010,使用的数据库 ...

  8. 动态网站设计与开发总结

    接触到了动态网站设计与开发这门课程.老师先引入了动态网站,之后引导我们安装Web服务器--Tomcat和第一个Web项目,接着有Intellij创建Web项目,在Intellij上面创建动态页面,我们 ...

  9. php动态网站考试题,PHP动态网站设计与开发期末考试A卷

    第 1 页 共 2 页 株洲职业技术学院 2012-2013学年第一学期 课程名称 PHP 动态网站设计与开发(三 ) 代码 100934 期 末 考试 A 卷 闭卷 适用班级: 网络1101 一.考 ...

最新文章

  1. 30岁学python编程_朋友问我,你都30岁了学编程来得及吗
  2. JDK,JRE,JVM,JIT
  3. 10、自学——Linux的学习进度与任务【用户和用户组相关操作】
  4. Dom4j 学习笔记
  5. 利用 VMware vRealize - 构建和优化云管理
  6. 数据结构与算法--代码完整性案例分析
  7. Objective-C基础语法高速入门
  8. 【C++grammar】继承与构造test1代码附录
  9. 获取要素集中字段的唯一值
  10. 推荐系统国内外团队介绍
  11. MogDB/openGauss 手动部署(非OM工具)单机、主备、主备级联架构
  12. Partition does not end on cylinder boundary
  13. sigmoid函数求导_吴恩达老师课程笔记系列第 28节 - 逻辑回归之代价函数 (4)
  14. cocos2dx学习笔记(一)在cocos2dx 中使用spine骨骼动画
  15. erp java 开源_华夏ERP完整开源版J2EE代码
  16. Fedora 14 yum 报错: Cannot retrieve repository metadata (repomd.xml) for repository
  17. 锂电池注液工艺视觉定位方案指南
  18. 品质生活最前端 ACCESS品牌管理集团协同VTN会员商城打响品质购物节
  19. Marshmallow 的用法
  20. 解决RuntimeException: Parcel android.os.Parcel@*: Unmarshalling unknown type code * at offset * 异常

热门文章

  1. ROS学习笔记(1):发布者和订阅者
  2. 系统调用recv的实现
  3. 2021年中国A股上市企业市值百强排行榜:贵州茅台股价重回2000元/股,百济神州登陆A股科创板(附年榜TOP100详单)
  4. 深度:一年举办10000场中老年文娱活动,链接5000个社区,社区天天乐如何成为老年行业中的快公司?
  5. 善领电子狗 计算机无法识别,[已解决]如何修复USB设备无法轻松识别
  6. vCenter日志相关
  7. 有道词典在安装copytranslator后竟无法打开,是巧合还是冲突,还是我在这个过程中有错误操作? 用户组的知识
  8. 人类史上最伟大的PPT,马斯克的39页火星计划PPT
  9. 如何用自己电脑访问公司内网
  10. BDE卸载时问题解决 Could not open INSTALL.LOG file