|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
缺点:安全性不是太差了,还行,只要你充分利用系统自带的工具;唯一缺点就是执行效率慢,如何进行网站优化以后,效果会比较好。用户办理复杂、好用、开辟效力初等等是ASP的长处,可是其体系操纵方面如文件操纵
等则是对照微小的。要想完成这方面的功效,只要接纳挪用组件的举措。
FileSystemObject工具就是一个例子。ASP安装后,该工具就在体系中注册了。
不外其功效也十分一样平常,只能操纵文本范例的文件。不外也能够满意我们的一些
必要了。头几天我的一个同事的一个伴侣在网上请求了一个撑持ASP的空间,想
完成诸如用户注册、信息修正、用户刊出等功效,又不想用数据库来完成,由于
要举行一年夜堆的设置。实在使用FileSystemObject操纵文本文件就能够完成。
完成的思绪是:为每项信息创建一个文本文件,如姓名、性别、岁数等。所
有效户的统一个信息项都保留在绝对应的文件中。如每一个用户的姓名信息都保留
在姓名文件中。而且每一个用户的信息都以特别的标记入手下手和停止,读失信息时就
依据这些标记举行定位。比方入手下手标记用“`用户名`”,停止标记用“`e`”。
只需不是经常使用的字符串,就能够作为定位的标记。别的,另有两个文件是必不成
少的:那就是用户名、暗码文件。判别用户是不是存在、用户上岸等就是使用这两
个文件完成的。上面先容的就是自己的详细完成代码。
在程序编写前我先弄了弄了一个大众的函数单位fun.inc,这内里是一些对照
通用的函数,供别的的ASP文件包括并挪用。
起首是些用户信息的函数,包含用户名、文件名、用户信息三个参数,都是
字符串范例,个中用户信息还能够是多行。代码以下:
SubWriteUser(UserName,FileName,UserInfo)
Dimfs,f
Setfs=CreateObject("Scripting.FileSystemObject")
Iffs.FileExists(FileName)=FalseThen
fs.CreateTextFile(FileName)
EndIf
以增加体例翻开文件
Setf=fs.OpenTextFile(FileName,8)
用户信息入手下手标记
f.WriteLine("`"&UserName&"`")
f.WriteLine(UserInfo)
用户信息停止标记
f.WriteLine("`e`")
f.Close
Setf=Nothing
Setfs=Nothing
EndSub
读用户信息的函数只必要两个参数:用户名和文件名,用户的信息作为函数
的前往值,完成的思绪就是寻觅入手下手、停止标记,并把它们之间的信息前往。代
码以下:
FunctionReadUser(UserName,FileName)
Dimi
Dims
Dimret
Dimfs,f
Setfs=CreateObject("Scripting.FileSystemObject")
iffs.FileExists(FileName)=falsethen
Setfs=Nothing
ReadUser=""
ExitFunction
endif
以只读体例翻开文件
Setf=fs.OpenTextFile(FileName,1)
DoWhilef.AtEndOfStreamTrue
s=f.ReadLine
Ifs="`"&UserName&"`"Then
s=f.ReadLine
ret=""
DoWhiles"`e`"
ifret=""then
ret=ret+s
else
ret=ret+Chr(13)&Chr(10)+s
endif
s=f.ReadLine
Loop
ExitDo
EndIf
Loop
f.Close
Setf=Nothing
Setfs=Nothing
ReadUser=ret
EndFunction
上面是删除用户信息的函数,一样包含用户名和文件名两个参数。程序逐行
读取对应文件,假如别的用户的信息,则保留在一个字符串变量中,不然不举行
保留,然后用变量的内容重写该文件。代码以下:
SubDeleteUser(UserName,FileName)
Dimi
Dims
Dimtmp
Dimfs,f
Setfs=CreateObject("Scripting.FileSystemObject")
iffs.FileExists(FileName)=falsethen
Setfs=Nothing
ExitSub
endif
Setf=fs.OpenTextFile(FileName,1)
tmp=""
DoWhilef.AtEndOfStreamTrue
s=f.ReadLine
Ifs"`"&UserName&"`"Then
iftmp=""then
tmp=tmp+s
else
tmp=tmp+Chr(13)&Chr(10)+s
endif
Else
DoWhiles"`e`"
s=f.ReadLine
Loop
EndIf
Loop
f.Close
Setf=fs.CreateTextFile(FileName,True)
f.WriteLinetmp
f.Close
Setf=Nothing
Setfs=Nothing
EndSub
修正用户信息函数和写用户信息函数一样,带有效户名、文件名、用户信息
三个参数,只不外该函数的用户信息是更新后的信息。程序的完成和删除用户的
历程差未几,删除用户不保留要删除用户的信息到变量,修正用户则把更新后信
息保留到变量中取代本来的信息。代码以下:
SubModifyUser(UserName,FileName,NewUserInfo)
Dimi
Dims
Dimtmp
Dimfs,f
Setfs=CreateObject("Scripting.FileSystemObject")
iffs.FileExists(FileName)=falsethen
Setfs=Nothing
ExitSub
endif
Setf=fs.OpenTextFile(FileName,1)
tmp=""
DoWhilef.AtEndOfStreamTrue
s=f.ReadLine
Ifs"`"&UserName&"`"Then
iftmp=""then
tmp=tmp+s
else
tmp=tmp+Chr(13)&Chr(10)+s
endif
Else
DoWhiles"`e`"
s=f.ReadLine
Loop
iftmp=""then
tmp=tmp+"`"&UserName&"`"
else
tmp=tmp+Chr(13)&Chr(10)+"`"&UserName&"`"
endif
tmp=tmp+Chr(13)&Chr(10)+NewUserI</p>优点:简单易学、开发速度快、有很多年“历史”,能找到非常多别人做好的程序来用、配合activeX功能强大,很多php做不到的asp+activeX能做到,例如银行安全控件 |
|