Foxtable(狐表)用户栏目专家坐堂 → 登录窗口验证登录问题


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

主题:登录窗口验证登录问题

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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/9/8 9:55:00 [只看该作者]

问题出在这里:

 

cmd.CommandText = "Select * From {医师资料} Where [姓名] = '" & UserName & "' "

 

你的医生资料表,似乎没有姓名列,只有用户名列。


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


加好友 发短信
等级:幼狐 帖子:180 积分:1582 威望:0 精华:0 注册:2011/8/30 10:28:00
  发帖心情 Post By:2011/9/8 10:02:00 [只看该作者]

恩。这里我发现了改正了。可还是出现ystem.NullReferenceException错误 还有一个索引超出数组界限的问题。是不是select在搜索的时候 sql里的行数比狐表里的多,返回的时候有错?

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


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/9/8 10:09:00 [只看该作者]

呵呵,编程要严谨的,如果没有符合条件的行,dt.DataRows(0)肯定要出错的。

 

这样改一下代码:

 

 

Dim dr As DataRow
Dim dt As DataTable
Dim UserName As String=Forms("登录窗口").Controls("txtname").Value
Dim cmd As New SQLCommand
cmd.C
If UserName =" " Then
    Messagebox.show("请输入用户名!","提 示",MessageBoxButtons.OK,MessageBoxIcon.Information)
End If
cmd.CommandText = "Select *  From {医师资料} Where [用户名] = '" & UserName & "' "
output.show(cmd.commandtext)
dt = cmd.ExecuteReader
If dt.DataRows.count > 0 Then
    dr = dt.DataRows(0)
    If Forms("登录窗口").Controls("txtpwd").Value = dr("密码")  Then
        DataTables("FMFM量表分值转换表").load
        DataTables("精细运动能力测试量表").load
        DataTables("脑瘫").load
        Forms("登录窗口").Close
    Else
        Messagebox.show("密码错误!","提 示",MessageBoxButtons.OK,MessageBoxIcon.Information)
    End If
Else
    messagebox.show("用户名错误","提示",MessageBoxButtons.OK,MessageBoxIcon.Information)
End If


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


加好友 发短信
等级:幼狐 帖子:180 积分:1582 威望:0 精华:0 注册:2011/8/30 10:28:00
  发帖心情 Post By:2011/9/8 10:39:00 [只看该作者]

谢谢老大, 吸收经验了! 下个月差不多要买开发版了,现在往脑子里猛填资料中..头有点大哈..

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