关于PB登陆验证的代码,帮我找找问题啊谢谢

来源:百度知道 编辑:UC知道 时间:2024/07/08 00:08:27
yhb是我数据库中建的表,用户类型是yh密码类型是pswd,为什么每次都提示密码错误,是检索数据库那段语句没执行,
if sle_uname.text = "" then
//pop a message box
messagebox("系统提示","请输入用户名",Exclamation!)
//sle_1 get the focus
sle_uname.setfocus()
elseif sle_pwd.text = "" then
//pop a message box
messagebox("系统提示","请输入密码",Exclamation!)
//sle_2 get the focus
sle_pwd.setfocus()
else
G_USER = sle_uname.text
G_PWD =sle_pwd.text

//取出数据库用户口令表格中对应用户的口令
SELECT pswd INTO :CORRECT_PSWD FROM yhb
WHERE yh=:G_USER;
//将数据库中保存的口令和用户输入的口令作比较

IF G_PWD = CORRECT_PSWD THEN
messagebox("登陆成功","欢迎管理员 ")
//输入正确,打开主窗口
OPEN(wgy)
CLOSE(用户)

ELSE
MESSAGEBOX("警告","输入的用户口令有误,请重新输入")
END IF

end if

看代码没有什么明显的错误,你可以调试一下,看select那句是否成功执行,以及成功执行后变量的值,你可以调试一下,插入一个断点,一句一句执行,执行完select查询,你可以看一下sqlca变量的情况,如果出错sqlca.SQLErrText会有出错说明,还有就是要看sqlca.SQLNRows是否为1表示查询到一条记录

G_USER =trim(sle_uname.text)
G_PWD =trim(sle_pwd.text)
把字符串前后空白删除就OK了
别的没毛病

我认为只要学会调试和查看帮助,就可以解决遇到的大部分问题。