Foxtable(狐表)用户栏目专家坐堂 → [求助]重新定向数据源后登录失败


  共有1631人关注过本帖树形打印复制链接

主题:[求助]重新定向数据源后登录失败

帅哥哟,离线,有人找我吗?
cd_tdh
  11楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3106 积分:20733 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2017/2/24 10:28:00 [只看该作者]

狐狸爸爸,全部代码如下

Dim bm As WinForm.ComboBox = e.Form.Controls("部门")
Dim zh As WinForm.TextBox = e.Form.Controls("账号")
Dim mm As WinForm.TextBox = e.Form.Controls("密码")

If bm.Value ="" Then
    MessageBox.Show ("请选择机构或部门!","提示",MessageBoxButtons.OK,MessageBoxIcon.Warning)
    Return
End If
If zh.Value ="" Then
    MessageBox.Show ("请输入账号!","提示",MessageBoxButtons.OK,MessageBoxIcon.Warning)
    Return
End If
If mm.value = "" Then
    MessageBox.Show ("密码不能为空!","提示",MessageBoxButtons.OK,MessageBoxIcon.Warning)
    Return
End If
MessageBox.Show(1)
'判断部门账号是否一致
Dim cmd  As New SQLCommand
 Dim dt As DataTable
 cmd.C

Dim dr As DataRow
dr = DataTables("账号密码").Find("账号 = '" & zh.text & "'")
_UserName = dr("账号") 
_UserGroup = dr("部门") 
_UserPassword = dr("密码")  
MessageBox.Show(2)
If dr Is Nothing Then
    msgbox("账号不存在")
    Return
End If
Dim bmyz As String = dr("部门")
If bm.value <> bmyz  Then
    MessageBox.Show ("账号与部门不一致!","提示",MessageBoxButtons.OK,MessageBoxIcon.Warning)
    Return
End If
MessageBox.Show(3)
'分机构/部门加载表中的行数据
Dim fdr As DataRow = DataTables("账号密码").Find("账号 = '" & zh.text & "'")
If fdr IsNot Nothing Then
    Dim mms As String = fdr("密码")
    If  mm.value= mms  Then
    MessageBox.Show(4)   
'判断是否通过审核,标记为-1时,提示未通过审核,为1时直接登录
Dim bj As WinForm.TextBox = e.Form.Controls("标记")
        If bj.value = "-1" Then
            MessageBox.Show ("您未通过管理员审核,请与管理员联系!","提示",MessageBoxButtons.OK,MessageBoxIcon.Warning)
            Return
        End If
        If bj.value = "1" Then
            Forms("管理员登录").close
        Else
            Forms("管理员登录").close
            MainTable = Tables("主界面")
            Forms("主窗口").open
            Forms("导航窗口上").open
            Forms("导航窗口").open
        End If
        Else
        MessageBox.Show ("密码错误,请重新输入!","提示",MessageBoxButtons.OK)
        Return
    End If
End If

 


 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/2/24 10:29:00 [只看该作者]

认认真真看上面的那几楼。

 

1、合并表数据

 

2、添加为空的判断


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47449 积分:251065 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2017/2/24 10:30:00 [只看该作者]

基本逻辑混乱,你的代码:

Dim dr As DataRow
dr = DataTables("账号密码").Find("账号 = '" & zh.text & "'")
_UserName = dr("账号")  
_UserGroup = dr("部门") 
_UserPassword = dr("密码")  
If dr Is Nothing Then
    msgbox("账号不存在")
    Return
End If

应该改为:

Dim dr As DataRow
dr = DataTables("账号密码").Find("账号 = '" & zh.text & "'")
If dr Is Nothing Then
    msgbox("账号不存在")
    Return
End If
_UserName = dr("账号")  
_UserGroup = dr("部门") 
_UserPassword = dr("密码")  

肯定要先判断是否存在帐号,才去取值啊,这样才能避免出错。

[此贴子已经被作者于2017/2/24 10:31:20编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
cd_tdh
  14楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3106 积分:20733 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2017/2/24 10:32:00 [只看该作者]

恩恩,我直接都觉得有点乱,找到问题所在了,重新定向后,表数据清空了,重新注册账号后就没问题了,感谢有点色老师和狐狸爸爸指导,几个月没整了,都忘记完了。

 回到顶部
总数 14 上一页 1 2