社区
ASP
帖子详情
高手进来帮帮忙!!!!
ipsoft
2003-08-21 04:32:26
小弟想学习写论坛。如果谁有写论坛的资料请共享一下。
有写留言本的资料也可以。越详细越好。谢谢!!!!
...全文
70
6
打赏
收藏
高手进来帮帮忙!!!!
小弟想学习写论坛。如果谁有写论坛的资料请共享一下。 有写留言本的资料也可以。越详细越好。谢谢!!!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
WQ771211
2003-08-21
打赏
举报
回复
由于HTTP的“无记忆”特点
1、关键是论坛用户ID在网页中的处理,我是把“用户ID+随机数”生成一个userKey字段存在数据库中,在客户端可以存在<input type=hidden>中,也可以存在window.name中(我用这种)
用户下次登陆时userKey会变
2、要使网页马上“过期”,让人每次看到的网页都是最新的
<%
Response.Expires=-1
Response.ExpiresAbsolute=Now()-1
Response.CacheControl="no-cache"
%>
xiejunhua
2003-08-21
打赏
举报
回复
就是aspsky 好了不过刚开始建议看简单的好以免头晕。
xupiao
2003-08-21
打赏
举报
回复
很多書上都有
lions911
2003-08-21
打赏
举报
回复
为了规范程序代码编写,提高代码可读性,降低后期维护成本,提高办公效率,建议以后编写的程序按以下几条规范进行:
一、 统一VBSCRIPT和ASP程序编写规范:
(一)变量命名规则:
由于在ASP和VBSCRIPT中因为不需要声明变量,同时不能声明变量的类型,但为了提高代码的可读性,养成好的开发习惯,对于本系统开发的变量命名统一规则如下:
1. 使用Dim、Public、Private声明变量;
例如:Dim iStudentNum
2. 变量类型的体现:
a、 整型变量:以小写字母i开头,后面跟变量标示符,英文单词的第一个字母大写。
例如:下面声明一个存储数据库记录多少的变量
Dim iResordsetNumber
b、 单精度实体变量:以小写字母f开头,后面跟变量标示符,英文单词的第一个字母大写。
c、 双精度实体变量:以小写字母d开头,后面跟变量标示符,英文单词的第一个字母要大写。
d、 字符型变量:以小写字母s开头;
e、 布尔型变量:以小写字母b开头;
f、 数组变量:数组类型+“_”+“Array”+“_”+“变量标示符”
例如:定义一个存储学生成绩的数组(存储单精度实体类型变量)
Dim f_Array_StudentMark
3. 变量标示符要符合标示符标准,同时容易理解,尽量使用英文单词来代替,尽量避免使用缩写或简写。
例如:存储校友通讯录的字符串变量定义为:
Dim sSchoolfellowAddressList;
虽然这样定义在输入的时候比较麻烦,但是,它大大提高了程序的可读性,见其变量命名就知其意。在做变量查找的时候也比较方便。 速度和性能总是不能两全,为了方便后者我们也就只有牺牲速度。
4.在变量定义后面加变量功能定义的注释。
(二)常量命名规则:
类型体现和上面一样,不一样的地方是,所有后面的标示符全部大写,例如:
定义一个存储语言种类的的字符型常量:
Const sLANGUAGE_TYPE=”Chinese”
(三)功能函数、过程命名规则:
1. 使用Function声明函数,用Sub声明过程;
2. 函数名或过程名的第一个字母大写,且后面的每个单词第一个字母大写。
例如:
Function CheckValidityOfInput(sStuentMark)
‘此处写代码
…………
End Function
3. 函数名或过程名要容易读,简单明了。
4. 在函数前面加注释,说明函数功能、参数说明、创建日期、修改日期、修改原因、创建人、修改人等相关信息。
(四)代码缩进标准:
为了提高代码的美观型和易读性,在此提出代码编写的版面格式:区间与区间之间以一个<Tab>为间距。
例如:
‘***********************************************************
‘功能:检测输入字符串中的单引号,如果有则把原来的一个单引号变成两
‘ 个单引号,两个变成四个,依次类推,从而避免SQL语句执行错误。
‘创建人:XXXX
‘创建时间:2002-7-6
‘修改时间:
‘修改原因:
‘修改人:
‘输入参数说明:sInputString:需要进行单引号检测的字符串
‘***********************************************************
Function CheckValidityOfInput(sInputString)
Dim iCirculationControl ‘控制循环
Dim sApartString ‘分离字符检测
Dim iLenOfInput ‘输入字符长度
iLen= Len(Trim(sInputString))
For iCirculationControl = 1 To iLen
If Mid(sInputString, iCirculationControl, 1) <>"'" Then
sApartString = sApartString & _
Mid(Trim(sInputString), iCirculationControl , 1)
Else
sApartString = sApartString & "''"
End If
Next
CheckValidityOfInput = sApartString
End Function
二、 统一JavaScript程序编写规范:
JavaScript的命名规则和上面大部分相同,唯一不同的地方是:变量使用Var来声明,在声明结束后以分号(;)结束。
函数的代码要求层次清楚,该写在下一行的地方尽量往下一行写,不要在一行中完成所有代码,这样看起来不容易,检查错误也特别费时。
在写函数的时候记着加注释内容,以便以后维护时快速了解程序功能。
下面是一个JavaScript程序:
<Script Language=”JavaScript”>
//***********************************************************************
//功能:对Form中的Text,Password,TextArea对象进行单引号处理,解决由于单引号
// 起的系统错误。
//创建人:XXXX
//创建时间:2002-7-8
//修改时间:
//修改原因:
//修改人:
//**********************************************************************
function CheckElement()
{
var sNeedCheck=""; //检测属于INPUT标签的内容
var iControlInput=0; //控制循环
var iLocationInput=0; //控制位置
var iLengthInput=0; //存储字符串长度
var sCheckingInput=""; //正在检测的字符
var sReplaceInput=""; //替换字符
var sHaveCheckInput=""; //已经检测的字符
var objInput; //存储INPUT对象;
var objTextArea; //存储TextArea对象
var iControlTextArea=0;
var iLocationTextArea=0;
var iLengthTextArea=0;
var sCheckingTextArea="";
var sReplaceTextArea="";
var sHaveCheckTextArea="";
//检测页面中的Text和Password对象中的单引号
for (i = 0; i < document.all.tags('INPUT').length; i++){
objInput = document.all.tags('INPUT')[i];
if(objInput.type=='text'|| objInput.type=='password'){
sNeedCheckInput=obj.value;
iLengthInput=sNeedCheckInput.length;
for(iControl=0;iControl<iLength;iControl++){
sCheckingInput=sNeedCheckInput.charAt(iControl);
if(sCheckingInput==”’”)
sReplaceInput=”’’”;
else
sReplaceInput=sCheckingInput;
sHaveCheckInput=sHaveCheckInput+sReplaceInput;
}
}
objInput.value=sHaveCheckInput;
}
//检测页面中的TextArea对象中的单引号
for (i = 0; i < document.all.tags('TEXTAREA').length; i++){
objTextArea = document.all.tags('TEXTAREA')[i];
if(objTextArea.type=='text'|| objTextArea.type=='password'){
sNeedCheckTextArea=obj.value;
iLengthTextArea=sNeedCheckTextArea.length;
for(iControl=0;iControl<iLength;iControl++){
sCheckingTextArea=sNeedCheckTextArea.charAt(iControl);
if(sCheckingTextArea==”’”)
sReplaceTextArea=”’’”;
else
sReplaceTextArea=sCheckingTextArea;
sHaveCheckTextArea=sHaveCheckTextArea+
sReplaceTextArea;
}
}
objTextArea.value=sHaveCheckTextArea;
}
}
</Script>
三、 系统性能提高,代码规范:
1.在ASP页面内,凡是使用CreageObject()创建的对象(Com、Recordset等),对于这些变量,应当在该页结束进行对象释放:即
Set 对象变量名=Nothing
2.数据库打开以后在不用的时候(通常是本页最后面),需要对连接进行关闭;
3.对于SQL语句,存储过程,尽量避免使用*来取所有字段,为了代码的易读性,SQL关键字要求全部大写,字段部分小写。
例如:
SELECT name,age,birthday,telephone,address FROM SchoolFellow.Address WHERE name=’xxxx’ ORDER BY birthday DESC
4.在ASP页中所有属性值尽量使用双引号括起来,特别是有属性Value的值,不要因为省时间而把双引号去掉(有的地方虽然可以去掉,程序不会出现错误,但,在有的地方去掉双引号会引来更多的麻烦。)
例如:
<INPUT type=”text” id=”ClassID” name=”ClassID” value=”<%=sClassID%>”>
在这个例子中,如果把Value属性值的单引号去掉,如果数据库中出来的值有空格,空格后面还有值,结果,显示的内容只有空格前面的内容,而后面的内容就会丢失。这只是其中一种情况,其他还有很多未知情况发生。
5. 配对标签问题:对于象<a></a>之类的标签,要注意检查配对的位值,有没有结束标志。
6. 对于需要输入字符串,且需要使用SQL语句的地方,需要进行单引号处理,调用/include/CheckQ.asp中的两个方法(一个是客户端处理,一个是服务器端处理,根据需要进行调用,安全性要求高的地方多数情况下采用服务器端处理。)之一。
7. 为了提高安全性,能使用ASP编写的代码,尽量采用ASP编写,在服务器端运行,不让用户看到代码。
8. 对于安全性要求特别高的地方,建议采用三层结构:使用VB或Delphi编写商业逻辑层代码(COM),尽量把数据库的连接部分封装到组件中,提高安全性能,通过组件和数据库交流。
9. 对于网站的安全性,应该采用好的断口扫描软件,查看网站已经打开的断口,把不安全的断口给关闭。
四、 养成写开发文档的习惯:
对于每一个页面设计(前接页,后接页),包括功能说明,页面设计,页面名称,存放位置等,应当有相应的文档记载。对于发生改动的地方,需要保留原来的部分(注释或备份),并说明备份文件存放的地方,改动时间,修改人。
对于程序部分,应该有相应的设计流程,改动的时候,也需要设计改动流程图,以便以后进行对比,和查找问题所在位置,以及问题的严重性分析。
注:以上,只是参考方案,若需要执行,尝需细节化,由于时间仓促,若有不当之处,敬请提出宝贵意见,谢谢。
zhaobohao
2003-08-21
打赏
举报
回复
www.aspsky.net... 自己去看看吧,,别看花眼了...哈哈..
pp4u
2003-08-21
打赏
举报
回复
www.aspsky.com找动网论坛
VBA
高手
进阶课程
爱好excel 的公式和VBA编程,Access数据库,VB和VB.NET,自己开发有作品《VBA代码宝》、visual studio开发的《大表格工具箱》、发票凑数器、进销存模板表格、出入库、领用单、图书管理系统的模板表格等诸多VBA功能及技巧,熟悉VBA数组、字典、正则,函数公式,SQL、VB等,拥有多年编程经验,实际案例,职场应用,应有尽有,升职加薪不是梦,学会excel函数、VBA、ACCESS数据库等办公技能,能极大地缩短工作时间,达到高效率工作,希望能跟大家一起学习进步!
Java客流分析_java编程一地铁客流仿真模拟软件。
高手
大神
进来
帮帮忙
啊~
java编程一地铁客流仿真模拟软件。
高手
大神
进来
帮帮忙
啊~功能包括交通线路各车站多种典型日客流函数的自动生成、修正、取值、图形显示等。模拟输入早上6点到晚上11点各个时间段的进站人数,出站人数。站点不用过多 5个就行其中包括6个客流函数,上行的进、出;下行的进、出。上行,下行转站。每个站点最大容纳的客流量。点击该站点图标,比如说A,就可以显示出各时间段客流量人数。根据客流方案,用三种颜色表示出改时...
高手
请
进来
帮个忙(转)
高手
请
进来
帮个忙(转)[@more@]为什么每次我安装到这一步我就安装不下去了勒~进不了~系统是怎么回事~!请
高手
帮忙讲解一二Sample Text400) {this.resized=true; this.width=400;...
C语言课程设计一维数组排序,C语言课程设计麻烦
高手
进来
帮帮忙
谢谢啦!~~~要源代码求一维数组 爱问知识人...
给个例子,把3个问题都写在一个里了,下面的3个函数分别对应3个问题的解。#include "stdio。h"#define N 5int arry1[N];int arry2[N][N];void arryInit(){int i, j;for (i = 0; i < N; i++){arry1[i] = i;for (j = 0; j < N; j++){arry2[i][j] = ...
iar错误errore46:IAR中的错误,
高手
进来
下!Error[e]:Segme
摘要: IAR中的错误,
高手
进来
下! Error[e]:SegmentCODE(size:xbalign:x)istoolongforsegmentdefinition.Atleastxabytesneeded.The...这是说明你的码量超出了你预设... 问:求助,zigbee中IAR错误 FatalError:Failed to identify device.Check conn
ASP
28,391
社区成员
357,060
社区内容
发帖
与我相关
我的任务
ASP
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
复制链接
扫一扫
分享
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章