Database 版 (精华区)
发信人: sleep (休息休息), 信区: Database
标 题: VFP密码设置程序的编写
发信站: 哈工大紫丁香 (2000年12月04日14:04:11 星期一), 站内信件
VFP密码设置程序的编写
为了保密的需要,每个应用系统都必须编写一个密码验证程序,以防止非法操作者,
由于本人以前在电脑报刊看过一些用FOXPRO2.*编写的密码设置程序,觉得太繁锁,现特用
用VFP5.0编写一个简单的密码设置程序,希望大家用此与以前用FOXPRO2.*编写的相比较,看看
有什么不同,具体说明如下。
一、建立密码资料数据表(INPASS.DBF),字段如下:
NAME: CHAR 4 操作员
PASSWORD: CHAR 4 密码
二、编写密码验证表单:
1、建立两LABEL,NAME分别为LABEL1,LABEL2,建立两TEXTBOX,NAME分别为
TXTUSER,TXTPASSWORD,建立两个按钮,NAME分别为CMDOK,CMDCAECEL
2、在TXTUSER的LOSTFOCUS事件下录入如下代码:
PUBLIC oword
SELE 3
USE inpass
SET order to NAME
SEEK thisform.txtuser.value
IF found()
oword=c->PASSWORD
ELSE
=messagebox("无此用户!",48,"提示窗口")
thisform.txtuser.value=''
ENDIF
(代码说明:先在INPASS.DBF中搜索此操作员是否存在,若存在,才可输入密码)
3、在TXTPASSWORD的LOSTFOCUS事件中录入如下代码:
IF empty(thisform.txtpassword.value)
thisform.cmdok.enabled=.f.
ELSE
thisform.cmdok.enabled=.t.
ENDIF
(代码说明:以上代码是控制CMDOK是否可用)
4、在CMDOK的CLICK事件中录入如下代码:
IF allt(thisform.txtpassword.value)=oword
Release thisform
USE
DO slgymain.mpr (密码正确,运行SLGYMAIN.MPR)
ELSE
=messagebox("口令不正确!请重新输入!",64,"提示窗口")
thisform.txtpassword.value=''
thisform.txtpassword.setfocus()
ENDIF
(代码说明:录入的操作员存在后,再到INPASS.DBF中检查此操作员对应的密码,
操作员及密码正确后,就可进入系统了)
5、在CMDCANCEL事件中录入如下代码:
thisform.release
Clea event
QUIT
以上的程序代码少而精,比用2.*编写同样的程序简洁多了,各位可在此基础上加以改进,如可在此
程序下加入密码录入次数限制,或增加操作员的操作等级等,也是很简单的,
如有不明之处,可与我讨论。(e-mail:cokies@990.net.http://dlhome.yeah.net)
--
※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: 202.118.227.121]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.490毫秒