以文本方式查看主题

-  搭建论坛  (http://bbs.diylsoft.com:8118/starforum/index.asp)
--  数据库交流  (http://bbs.diylsoft.com:8118/starforum/list.asp?boardid=6)
----  [讨论]数据库登陆窗口设计思路  (http://bbs.diylsoft.com:8118/starforum/dispbbs.asp?boardid=6&id=32112)

--  作者:萝卜特二
--  发布时间:2012-7-9 0:46:54
--  [讨论]数据库登陆窗口设计思路

我没有真正的去做实例只是把自己的思路说说

 

主要是用SQL语句进行判断

 

步骤

1 在按钮单击事件中,执行ADO查询构件的SQL语句

 

“SELECT * FROM USELIST WHERE USERNAME = *** AND PASSWORD = ***”

 

2 判断 ADO查询构件反馈的记录数量与1 的关系

 

小于1: 证明 用户名或者密码错误

 

等于1:说明用户名和密码对应正确

 

然后 进入主窗口

 

另外一种是 分段查询

 

先执行查询用户名USENAME 是否含有 输入内容

 

然后再判定查询出的唯一记录中的PASSWORD字段中的密码是否与输入内容相同

 

这样做的好处是 可以分别指出用户名 密码的正确与否

 

然后用来判断的步骤较多容易逻辑弄混

 

明天上实例

================实例代码==========

参数> 自定义.字符:"{select * from 用户表 where 用户 = \'"
参数> 窗口2.行编辑1.属性:(当前编辑内容)
参数> 自定义.字符:"\' and 密码 = \'"
参数> 窗口2.行编辑2.属性:(当前编辑内容)
参数> 自定义.字符:"\'}"
参数> 运算.以上各项进行字符串:<连接>
设置> 窗口2.ADO查询1.属性:(SQL命令)
参数> 自定义.布尔:"<真>"
设置> 窗口2.ADO查询1.属性:(活动)

 

 

特别注意 SQL语句中的空格 和 半角全角的区分

 

另外 字段类型如果为TEXT的话是不能使用 “=”进行判断 而是需要使用 “like”

说明下 后面的直接可以用执行方法既可


 

 


--  作者:xiaoxuesheng
--  发布时间:2012-7-9 7:03:39
--  
不指出为好,可增加"猜测"的难度.
--  作者:众方志诚
--  发布时间:2012-7-9 8:12:52
--  

这个要看项目需要和客户要求。灵活掌握就可以了,登录过程中要先判断系统的时间及日期格式是否符合软件要求,再就是加入授权信息,看是不是合法用户,最好设置系统管理员和用户管理员及一般(分类)操作员,可查询的仅限一般(分类)操作员,管理员不自动显示。如为了客户方便,建议用户名和密码分开判断,如为了安全,则建议用户名和密码同时判断。灵活掌握吧。登录界面建议有操作员代码、操作员名称、登录密码三项。其中操作员名称建议由系统自动查询显示。


--  作者:萝卜特二
--  发布时间:2012-7-9 16:30:26
--  
以下是引用众方志诚在2012-7-9 8:12:52的发言:

这个要看项目需要和客户要求。灵活掌握就可以了,登录过程中要先判断系统的时间及日期格式是否符合软件要求,再就是加入授权信息,看是不是合法用户,最好设置系统管理员和用户管理员及一般(分类)操作员,可查询的仅限一般(分类)操作员,管理员不自动显示。如为了客户方便,建议用户名和密码分开判断,如为了安全,则建议用户名和密码同时判断。灵活掌握吧。登录界面建议有操作员代码、操作员名称、登录密码三项。其中操作员名称建议由系统自动查询显示。

我不会给登陆用户的默认名字显示

就是自己填写 呵呵


--  作者:众方志诚
--  发布时间:2012-7-9 22:04:00
--  
个人有个人的想法的办法。互相学习,共同进步