谁知道pb的登陆窗口怎么做?

谁知道pb的登陆窗口怎么做?,第1张

你首先要有一个登录的用户表,记录着登录的ID和密码

然后做一个登录的窗口,这个窗口应该好做吧?创建一个窗口,加两个singlelineedit控件,一个用来输入姓名,一个用来输入密码,放到窗口上。输入密码的,把PASSWORD属性选中,就会隐藏输入的内容了。

然后在主应用的open事件中,先照常写原来PB连接数据库的字符串,当判断连接数据库成功之后,打开您先创建的这个登录窗口比如叫w_login,打开后,用户就会在您创建的输入用户名和密码的地方输入登录的ID和密码。然后点击登录按钮。

那么您就在登录按钮中,做用户名密码的校验。

这里我们可以取到用户输入的用户ID和密码,sle_user.text, sle_pwd.text。

取到之后,到用户登录表做验证。比如这么写select count(*) into li_cnt from 登录表 where 登录ID = :ls_logid and 登录密码 = :ls_pwd

然后判断if li_cnt <= 0 then等于0,即表中没有符合记录的数据,那么说明这个用户名或者密码一定输入错误了,就提示用户输入错误。否则,open(w_main)就可以了。

连接数据库:

// Profile his

SQLCA.DBMS = "MSS Microsoft SQL Server"

SQLCA.Database = "数据库名称"

SQLCA.ServerName = "."

SQLCA.LogId = "sa"

SQLCA.AutoCommit = False

SQLCA.DBParm = ""

CONNECT USING SQLCA

IF SQLCA.SQLCode <>0 THEN

MessageBox('成功','数据库连接成功!')

ELSE

MessageBox('失败','数据库连接失败!')

END IF

//定义变量

String ls_id,ls_pass,ls_type

Long ll_number,i

ls_id = sle_user.Text

ls_pass = sle_pass.Text

//==============================================================================

// 判断用户名及用户密码是否正确,打开主窗口

//==============================================================================

IF ls_id = '' THEN

MessageBox('提示','用户代码为空,请重新输入!')

sle_user.SetFocus()

RETURN

END IF

SELECT count(*) INTO :ll_number FROM login Where id = :ls_id AND Password = :ls_pass

IF ll_number >0 THEN

SELECT Style INTO :ls_type FROM login Where id = :ls_id

gs_id = ls_id

gs_type = ls_type

Open(w_main)

Close(w_login)

ELSE

IF i <= 2 THEN

MessageBox('错误','密码错误,请重新输入!')

sle_pass.Text = ""

sle_pass.SetFocus()

i++

ELSE

MessageBox("警告!","输入用户口令的错误次数超过3次!")

Close(w_login)

END IF

END IF

1、ini配置文件大致格式

[db1]

server = 192.168.0.1

user = sa

passsword = 123

[db2]

server = 192.168.0.2

user = sa

passsword = 123

2、下拉菜单选项,比如是db1,db2

3、在下拉菜单的selectionchanged事件中,参考选中选项,读取ini参数,进行数据库连接即可,比如

string ls_sever,ls_user,ls_pw

ls_sever = ProfileString("PROFILE.INI", text, "server", "")

ls_user= ProfileString("PROFILE.INI", text, "user ", "")

ls_pw= ProfileString("PROFILE.INI", text, "passsword ", "")

//然后连接数据库即可


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9442300.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存