vf用户登陆问题

来源:百度知道 编辑:UC知道 时间:2024/05/22 06:23:55
我在做登陆界面command1的click事件时遇到一个问题,就是只有表中的第一个用户名和密码能运行成功,其他的用户名和密码均显示输入错误,代码如下use data\用户表
a=alltrim(thisform.text1.value)
b=alltrim(thisform.text2.value)

if((a==用户名)and(b==密码))
do form forms\main.scx
thisform.release
use
else
messagebox('输入信息有误,请重新输入',48,'信息窗口')
thisform.text1.value=''
thisform.text2.value=''
thisform.text1.setfocus
endif
use
请教高手这是什么问题,另外请问能教我下如何进行后续表单中的权限设置设计问题,就是不同的权限能显示不同的按键

你只比较了表中的第一个记录,当然就只有第一个用户名和密码能运行成功,应该这样改:
a=alltrim(thisform.text1.value)
b=alltrim(thisform.text2.value)

LOCAL llOK
llOK=.F.

LOCATE FOR ALLTRIM(用户名)==a
IF FOUND()
IF B==密码
llOK=.T.
ENDIF
ENDIF

IF llOK=.T.
USE
do form forms\main.scx
thisform.release
ELSE
messagebox('输入信息有误,请重新输入',48,'信息窗口')
thisform.text1.value=''
thisform.text2.value=''
thisform.text1.setfocus
endif

如果你要根据权限来设计,可以在表中增加一字段(权限),然后将登录的用户名、密码、权限等信息保存为全局变量或保存在顶层表单中的自定属性中,以后就可以根据这些信息来以程序的方法显示不同的属性了。如在对象的init事件中就可以根据用户的信息来设置一个对象的visible属性来让这个对象是否显示。思路就这样,具体设计看你自己。