若相依 发表于 2015-1-16 23:18:15

ASP网站制作之浅谈Asp程序的编写和调试――给初学者

ASP是依赖组件的,能访问数据库的组件好多就有好多种,再有就是你微软的工具可是什么都要收钱的啊!程序|初学良多伴侣以为Asp不是很勤学,我以为实在有了必定的编程基本,再加上那末一点点技能,进门是不难的(不外要做好也不是很简单,要良多的相干常识――甚么SqlServer数据库言语啦,数据布局啦(这些都是在优化Asp的算法时分要熟习的)。
在这只和人人谈谈我团体是怎誊写和调试Asp的,但愿能给年夜有一点匡助……
Asp剧本的誊写:

1、注重辨别分明html语法和VBScript语法。由于Asp是夹杂利用Html语法和VBScript语法的(固然,我全体写成VBScript语法也能够,不外那样的程序那难浏览)。最好利用一些能标示html标志和VBScript标志的编纂工具,好比UltraEdit甚么的。
我学得编纂器的工具栏菜单不必太多,有一样平常的功效就好了,由于工具菜单一多,编纂地区一定会变得较小,这是我们不但愿看到的(你总不但愿为了找出一个If的停止语句Endif而翻来翻往吧。这大概是我之前利用记奇迹来编写Asp剧本的缘故原由吧――呵呵,记事本的编纂地区较年夜嘛……

2、誊写程序时利用缩进
誊写程序时利用缩进能够削减良多不用要的语法毛病。以避免实行你的asp程序的时分提醒“短少end”甚么甚么的……
一般教唆用缩进誊写指的是对流把持语句利用缩进,假如我不说,你也应当晓得有哪些流把持语句吧:
If……Else……Endif
For……Next
DoWhile……Loop
Selectcase……Case……CaseElse……EndSelect
ForeachelementIngroup……Next
等等……
好比写成上面如许查错就便利多了:
If前提then
语句
dowhile前提
语句
loop
else
语句
endif

3、熟习一些省略的写法,好比:
If前提then
语句
Endif
可简写成If前提then语句
注重:前面不克不及再写else和endif。
等等……

4、只管熟习你要利用的剧本言语。

5、备用一些经常使用的教程(好比VBScript言语参考甚么的),以备查用。

6、拼写要非常当心


Asp剧本的调试:
1、在你编纂完成必定功效的Asp剧本时,起首得有一个明晰的思绪,只需是:要完成甚么功效,完成的关头是甚么、语句流如何把持等……固然小的项目(好比一个复杂的留言本体系)纷歧定要写出来,但最少要胸有定见。

2、假如要利用数据库的话,得先依据你的项目功效计划数据库布局

3、不要比及全部Asp剧本全体编写终了时才入手下手调试。一样平常都是一边编写一边调试(假如你看我做的话就是开两个窗口:一个编纂器,一个IE,在编纂中改一下剧本,再到IE窗口革新一下)。
假如你的剧本有几百行那末多,即便你只是将一段准确的剧本输出到文件内里,也难保不会堕落。而这么长的剧本文件是很难调试的,一旦呈现毛病,你很难找出究竟那里出了成绩――即便是语法毛病。

4、调试语法毛病的时分,常常接纳“截短法”来做。
好比堕落提醒为“第236行毛病,短少end”,如许长的代码,你很难晓得究竟短少的是谁人If的end大概是select的end……
好比上面一段程序:

一年夜堆语句
if

else
(这里有一年夜堆语句)
endif
我一般的做法是截往括号中的部分,然后再试运转,再慢慢将截往的部分放归去(这出格合用于调试他人编纂的剧本)。


5、标志调试办法
偶然为了晓得程序实行到了哪一个中央,一般在程序里加进一些标志,好比response.write"abc",然后将这句挪动地位,如许就可以断定程序究竟有无实行到我但愿到的中央。
在调试轮回的时分,经常必要输入轮回把持变量的值到扫瞄器以匡助调试。
一些因为是变量值引发的毛病,好比数据库毗连或纪录集翻开毛病,一般在堕落语句的后面输入sql语句以确认sql语句没有毛病。出于这个思索,我一般利用sql="语句"/setrs=execute(sql)来取代间接运转setrs=execute("语句"),由于当我的语句堕落时,我能够很便利地在后面来个response.writesql来检察sql语句究竟有无成绩。

6、在调试表单时,关于password表单项,一般先将它酿成text,等调试好了后才改成password。

7、监督变量法
在调试一些变量对照多的剧本时,好比谈天室调试时,因为大批利用到application和session变量,一般要做些帮助的剧本来检察application和session变量,如许就便利多了。

8、以少代多法
调试global.asa文件的逻辑毛病是对照贫苦的,出格是session.onend和application.onend事务。
applicatoin.onstart事务调试不难――由于当你第一次翻开扫瞄器的时分,假如global.asa文件有语法毛病的时分,扫瞄器会提醒你甚么中央堕落了。但很不幸地,session.onend就看不到提醒了。为了确认你的session.onend究竟有无实行,一般在application.onstart设置一个标志变量,然后在session.ond事务中将
这个变量改成变一个值,如许就能够等session超时后检察该标志变量有无被改动,假如没有改动就证实你的session.onend没有实行。
关于application.onend的调试,你能够把那部分代码拿到一个asp文件中,给它必定的前提(好比它利用了甚么变量,然后满意它的前提看看有无到达预的效果。不外一般application.onend都不会太庞大(庞大了调试通不外呗)。

9、只管给一些数据库毗连串全体的参数,以避免引发不用要的贫苦。
固然一些参数不是必需的,但仍是全体给它较好。我已经试过因为没有给一个Access的数据库毗连字符串充足的参数而引发古怪乖僻的成绩:修正了毗连文件后,革新一次可失掉准确的了局,再来革新一次就不可了,乃至呈现了“没法指出的毛病”。

10、不要急于举行毛病处置On_orror。由于毛病自己能够帮我们调试剧本,你一旦屏障了毛病,很简单不晓得究竟那里堕落了。

11、削减逻辑毛病的一个最好的办法是有一个明晰的思绪,他人是很难帮上你的。
因而假如你在BBS上问一个逻辑毛病,回覆者起首的回覆就是:“你的源代码呢?”,因而除非你是为了注水,不然在BBS上问一个象如许“为何我的纪录集是空的”的成绩是没成心义的。

此文只合适于一些初学者浏览。

请会见我的团体主页http://swuse.yeah.net,配合会商Asp
</p>asp是基于web的一种编程技术,可以说是cgi的一种。它可以完成以往cgi程序的所有功能,如计数器、留言簿、公告板、聊天室等等。

小魔女 发表于 2015-1-17 22:41:39

ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码,能产生和执行动态、交互式、高效率的站占服务器的应用程序。

若天明 发表于 2015-1-18 07:03:14

ASP的语言不仅仅只是命令格式差不多,而是包含在<%%>之内的命令完全就是VB语法。虽然ASP也是做为单独的一个技术来提出的,但他就是完全继承了VB所有的功能。

admin 发表于 2015-1-21 11:24:08

掌握asp的特性而且一定要知道为什么。

山那边是海 发表于 2015-1-30 17:05:41

下面简单介绍一下我学习ASP的方法,希望对想学习ASP的朋友有所帮助...

第二个灵魂 发表于 2015-2-6 14:16:56

Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点)

仓酷云 发表于 2015-2-16 10:44:09

Request:从字面上讲就是“请求”,因此这个是处理客户端提交的东东的,例如Resuest.Form,Request.QueryString,或者干脆Request("变量名")

再现理想 发表于 2015-3-11 23:28:51

它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。

透明 发表于 2015-3-19 16:04:06

那么,ASP.Net有哪些改进呢?

柔情似水 发表于 2015-3-28 22:30:17

ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象,这就明显产生以下几个问题:
页: [1]
查看完整版本: ASP网站制作之浅谈Asp程序的编写和调试――给初学者