我是设置一个登陆界面 需要用户名和密码
用数据库表里的数据和输入的数据做对比 如果数据表里有这个用户而且密码正确的话 则跳转到另一个窗体
如果没有这个用户就会提示用户名密码错误 
但现在小弟弄完之后不管打什么都提示用户名密码错误
不知道是哪的问题 哪位高手能帮小弟看看这段代码
Private Sub Command1_Click()
Dim cnn As ADODB.Connection
Dim my_recordset As ADODB.Recordset
Dim connect_string As String
Dim username As String
Dim usepw As String
Set cnn = New ADODB.Connection
Set my_recordset = New ADODB.Recordset
connect_string = "DSN=SQLSERVER1;UID=sa;PSW=1"
cnn.Open connect_string
username = "select user_name from login"
userpw = "select user_password from login"    If Text1 = username And Text2 = userpw Then
       LoginSucceeded = True
        Me.Hide
        Form2.Show
    Else
        MsgBox "无效的密码,请重试!", , "登录"
        Text2.SetFocus
        SendKeys "{Home}+{End}"
    End IfEnd Sub

解决方案 »

  1.   

    楼主,你在哪找的,这代码能运行???你数据库连接语句确定对吗?你定义myrecordset,用了吗?   ……
       '连接上数据库以后
       dim sql as string
       sql = "select * from 系统管理 where 用户名='" & txtuser.Text & "'"
       myrecordset.Open sql, cnn
       If myrecordset.EOF = True Then
          MsgBox "没有这个用户", vbOKOnly + vbExclamation, ""
          txtname.SetFocus
       End If
       If Trim(myrecordset.Fields(1)) = Trim(txtpwd.Text) Then'检验密码是否正确
              ……
              myrecordset.Close
              Unload Me
              Form2.Show '进入你的主页面
       Else
             MsgBox "密码不正确", vbOKOnly + vbExclamation, ""
             txtpwd.SetFocus
             conn.Close        
       End If
    下班了,该回去了……先这样吧   不知你数据库怎么设置的,你看着改一下吧
      

  2.   


    username = "select user_name from login" 
    userpw = "select user_password from login" 
    '你都没查,只写个查询语句,当然不行了
    connect_string = "DSN=SQLSERVER1;UID=sa;PSW=1"
    'ODBC方式连接字符串也是错误的MSDN 
    关于
    adodb.connection.connectionstring
    adodb.recordset
    都去看下吧 整个都是错的 
      

  3.   

    '参考下面这段:
        If Trim(txtcUserName.Text) = "" Then
            MsgBox "请输入登录用户!", 48, "提示"
            Screen.MousePointer = vbDefault
            txtcUserName.SetFocus
            Exit Sub
        End If
        
        StrSql = " select cUserCode,cUserName,cUserpwd,bUserAdmin,bUserFbd from t_users " _
               & " where cUserCode='" & Trim(txtcUserName.Text) & "'"
        If ar_Tmp.State <> adStateClosed Then ar_Tmp.Close
        ar_Tmp.Open StrSql, g_strDBConn, adOpenKeyset, adLockReadOnly
        If ar_Tmp.RecordCount = 0 Then
            MsgBox "登录用户或密码错误!", 48, "提示"
            Screen.MousePointer = vbDefault
            ar_Tmp.Close
            Exit Sub
        Else
            If Not (IsNull(ar_Tmp!cUserPwd) Or ar_Tmp!cUserPwd = "") Then
                If Trim(ar_Tmp!cUserPwd) <> Trim(txtcPassword.Text) Then
                    MsgBox "登录用户或密码错误!", 48, "提示"
                    If ar_Tmp.State <> adStateClosed Then ar_Tmp.Close
                    Screen.MousePointer = vbDefault
                    Exit Sub
                End If
            Else
                If Trim(txtcPassword.Text) <> "" Then
                    MsgBox "登录用户或密码错误!", 48, "提示"
                    If ar_Tmp.State <> adStateClosed Then ar_Tmp.Close
                    Screen.MousePointer = vbDefault
                    Exit Sub
                End If
            End If
            
            g_strUserCode = ar_Tmp!cUserCode
            g_strUserName = ar_Tmp!cUserName
            '是否系统管理员
            If ar_Tmp!bUserAdmin = True Then
                g_blnUserAdmin = True
            Else
                g_blnUserAdmin = False
            End If
        End If
        If ar_Tmp.State <> adStateClosed Then ar_Tmp.Close
      

  4.   

    用户名输入 :select user_name from login
    密码  输入 :select user_password from login就能跳到另一个窗体了,哈哈