从此长大

杂 谈 赏 析
网 站 建 设
网 络 技 术
情 感 美 文
影 音 娱 乐
生 活 频 道
留 言 本
主 题 社 区

站 内 服 务
综合查询
心灵涂鸦板
祈愿漂流瓶
列车查询
网站信息
我的呵呵

您现在的位置:首页 / 代码助手 /


ASP代码编写标准


2005-10-7 0:49:10 编辑:阿志 来源:来源网络

一、通用源代码格式规则
1.1 开发工具

推荐使用Microsoft ? 公司的Visual InterDev 来书写ASP 代码,使用Macromedia ? 公司的Dreamweaver 来书写HTML代码,也可以使用UltraEdit、ASPEdit 2000等开发工具。

1.2 缩进空格

缩进空格是指在每一级有两到四个空格。不要在源代码中保留TAB字符,这是因为TAB字符会随着不同用户的不同设置和不同的资源管理工具(打印、文档、版本控制等)而代表不同的宽度。

1.3 数据合法性检查

所有表单提交页面中,表单上必须填写项目和填写项目中非法输入的判断都在页面中用javascript在客户端判断,如果必须和服务器端数据比较才能判断输入项目是否正确不在此例。
所有提交的信息(GET方式及POST方式)都必须在服务器端重新进行数据合法性校验,并过滤非法字符(& ; ` ' \ " | * ? ~ < > ^ ( ) [ ] { } $ \n \r),例如,将"'"替换成"''" (两个单引号)号(替换字符串的工作将统一使用公共的CheckInputString(str) 函数);而对于数字型变量,要检查输入的数据是否全为数字(javascript中使用isFinite或isNaN, VbScript中使用IsNumeric)。

1.4 参数传递

建议使用POST方法,而不推荐使用GET方法;
严禁使用GET方法、SESSION或其它方式传递SQL语句;
禁止使用GET方式传递大量的查询字符串,特别是未经编码的汉字,HTTP协议传送表单域比查询字符串效率要高,而且带有一个大的查询字符串的页面在某些浏览器上会失效;
禁止使用SESSION、COOKIE传递非会话期间必要的参数。

1.5 URL

包含头文件,页面的链接,提交的页面,用到的图片,如果引用的是如“include”、“image”等公共部分,必须使用绝对路径,即以虚根目录“/”开始的路径,以提高运行效率。例如:
<A HREF="/index.asp">
<IMG SRC="/images/logo.gif”>

在一个相对独立的模块内部,可以使用相对路径,以提高可移植性。但是,禁止使用“..”返回上一级目录,即禁止使用类似“../images/logo.gif”的URL。相对路径如下书写:
<A HREF="index.asp">
<IMG SRC="images/logo.gif”>

确保在指向目录的 URL 中使用后斜杠 (/)。如果您省略了后斜杠,浏览器就会向服务器发出请求,只是为了告诉服务器,它在请求目录。浏览器就会发出第二个请求,将斜杠附加到 URL 后面,只有此后,服务器才能以该目录的默认文档或目录列表(如果没有默认文档且启用了目录浏览的话)响应。附加斜杠可省去第一个、无用的住返。为便于用户阅读,可以省略显示名称中的后斜杠。
例如,写:
<A HREF=http://msdn.microsoft.com/workshop/” TITLE=”MSDN WebWorkshop”>http://msdn.microsoft.com/workshop </A>
这也适用于指向 Web 站点上主页的 URL:使用下面的:<A HREF=http://msdn.microsoft.com/”>,而不使用 <A HREF=http://msdn.microsoft.com”/>。

1.6 日期

在使用、判断和显示日期时,一定要确定年为4位。统一定义为
长日期格式为: XXXX年XX月XX日
短日期格式为:XXXX-XX-XX
在ASP输出时必须使用FormatDateTime()函数进行格式化,前端输入时统一使用XXXX-XX-XX格式,并在后端使用isDate()进行检验。

二、HTML
2.1 标记

HTML 对大小写不敏感,但为改善可读性,规定大写所有标志、属性,小写属性值,属性值外必须加引号,如:<TABLE BORDER=”0” CELLSPACING=”0” CELLPADDING=”0” ALIGN=”left”>

2.2 META 标记

所有中文页面,必须在“<HEAD> … </HEAD>”头中加入如下META标记:
<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=GB2312">
该META标记描述本页使用的语言。浏览器根据此项,就可以选择正确的语言编码,而不需要读者自己在浏览器里选择。GB2312是指简体中文,ISO-8859-1是指英文,而台湾BIG5内码的主页则是用BIG5。

在首页和各频道首页应加入如下META标记:
<META NAME="keywords" CONTENT="yourkeyword">
  <META NAME="description" CONTENT="your homepage's description">
  该META标记声明本页的关键字和描述。在页面里加上这些定义后,一些搜索引擎就能够让读者根据这些关键字查找到你的主页,了解你的主页内容。

在每次都需要重新生成的,不需要用户缓存的页面,应加入如下META标记:
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
该META标记强制性调用网上的最新版本。浏览器为了节约时间,在本地硬盘上保存一个网上文件的临时版本。在你要重新调用时,直接显示硬盘上的文件,而不是网上的。如果你想让用户每次都看到最新的版本,就加上这句话。

2.3 统一样式表引用

为了使整个网站的风格样式统一,必须统一使用公共的层叠样式列表,即在每个HTML文件的“<HEAD> … </HEAD>”头中加入:
<LINK REL="stylesheet" TYPE="text/css" HREF="/style/default.css">

如果项目相对比较独立,应该使用自己的CSS定义,增加可移植性。

2.4 TITLE设定

所有中文页面TITLE设置需遵照如下标准:
YourDomain.com+空格+本页内容描述

所有英文页面TITLE设置需遵照如下标准:
YourDomain.com+空格+ -+空格+本页内容描述

2.5 表单

2.5.1 文本框:文本框(<INPUT TYPE=”text” NAME=”” …>)的宽度(SIZE属性)以数据库中相对应的字段长度为参考,并参照邻近文本框的宽度,以美观为原则确定;文本框的最大内容长度(MAXLENGTH属性)以数据库中相对应的字段长度为标准确定。

2.5.2 表单提交:必须使用POST方法,而不允许使用GET方法。

2.6 表格

2.6.1 高度和宽度的定义:应直接在单元格属性内用象素数定义,尽量不要用百分比定义,也不要用空白图去撑这个单元格。如特殊情况要求,只宜用百分比对单元格指定宽度,因为Netscape不支持百分比定义的高度。

2.6.2 空单元格:所有需要指定背底色或边框色的空单元格请一定要在该单元格内插入 ,如果该单元格的高度<9或宽度<5时,请用img目录下的none.gif。无背底色和边框色的空单元格,仅仅是用来定位时,请这样写:<TD HEIGHT="??" WIDTH="???"></TD>

2.7 图片

<IMG>标签必须使用WIDTH和HEIGHT属性来定义图片的尺寸,以加快浏览器显示页面的速度。对于一般的非占位用的图片,必须使用ALT属性来定义其文本显示。

2.8 注释

使用注释声明每一子块区的开始和结束,注释语句使用英文。如:
<!— User Login In Zone -->
… …

三、javascript
3.1 标记
javascript是一种对大小写敏感的语言,语言的关键字按照javascript的要求书写,关键字小写,函数、对象使用固定的大小写。

3.2 函数/过程

用户自定义的函数应放在文件的<HEAD></HEAD>部分,以确保用户在与页面其他部分进行交互之前,所有函数都已装载,且准备就绪。页面加载时的动作也应写成函数/过程,在BODY的OnLoad事件中触发。

3.3 字符串串联

避免在循环语句中使用字符串串联。
建议使用+=运算符,即,使用s += ”某字符串”,而不要使用s = s + ”某字符串”。

3.4 事件处理器

事件处理器嵌在HTML标记之中,应声明脚本类型,如:onMouseOver=”java script:window.status=’大家好’;return true”>

3.5 注释

使用“//”来注释后面一行内的语句,使用“/* …… */”来注释成块的语句。另外,脚本要使用HTML的注释标记“
</SCRIPT>

四、VbScript
4.1 常量/变量、函数/过程的命名

常量和变量命名应以代表其含义、功能的单词组成,每个单词的开始字母大写,其余字母小写,循环变量i,j,k可以例外。对于频繁使用的或长的项,推荐使用标准缩略语以使名称的长度合理化。
对于变量来说,如果该变量是一个过程级(过程,子过程或函数过程中的)的变量,应在其前面使用“m_”的前缀来表示它是一个局部变量。例如: m_blnCalcInProgress。局部变量应单独在函数或过程中定义。
应该给变量加前缀来指明它们的数据类型。按照处理变量的方式(而不是其实际数据类型)在 ASP 代码中声明变量。例如:
前缀 使用的变量 变量示例
bln Boolean blnSuccess
cur Currency curAmount
dbl Double dblQuantity
dat Date and Time datDate
flt Float fltRatio
lng Long lngMilliseconds
int Integer intCounter
str String strName
arr Array arrUsers()
obj COM Object objPipeline

函数及过程的命名应遵循以上基本规则,并以一个动词起首

4.2 语句

大写或首字母大写IF, THEN, ELSE和END IF等VBScript语句。

4.3 字符串连接

为保持一致性并达到更有自述性的脚本目标,使用字符串连接符(&)代替加号(+)。

4.4 注释

使用注解解释难以理解的或复杂的代码。行内注释应该在相应代码后面显示两个空格。在新的一行上开始的注释应该与前一行对齐。建议使用单引号 (')代替 Rem 关键字,在没有代码的行上加注释可以使用Rem 关键字。注释语句尽量使用英文。

[1] [2] 下一页


  • 上一篇:每个ASP程序员必备的知识
  • 下一篇:CSS入门

  • 每个ASP程序员必备的知识

  • 参与评论(条评论)

    您的姓名:  您的Email:
    评论内容:
    250字内
    发表评论:   发表评论须知 →
  • 尊重网上道德,遵守中华人民共和国有关法律法规;
  • 承担一切因您的行为导致的民事或刑事法律责任;
  • 本站管理人员有权保留或删除留言中的任意内容;
  • 本站有权在网站内转载或引用您的评论;

  • 网站简介 |版权隐私 | 服务信息 | 广告服务 | 联系我们 | 帮助手册 | 网站地图 |

    Copyright@2004 kin2144@163.com