none
VB.NET程序登陆界面验证用户权限代码 RRS feed

  • 问题

  •  我在做一个简单的系统我使用的开发平台是Microsoft Visual Studio .NET 2003

    .其中有一个功能就是一个登陆窗口验证用户能否有权限登陆进我的系统.我连接的是SQL数据库.
      现在系统能够实现添加删除修改等功能其中一个不足的地方
      就是查询功能的不足也正是因为这个原因我的用户登陆界面的验证用户是否有权限登陆系统的代码也不能完善
      下面是我一个查询按钮的代码我只设置了一个主键字段的查询条件是否满足.也就是说当其他字段所对应的TextBox1.Text的内容存在而这一个主键字段所对应的TextBox1.Text的内容为空时查询失败.
      ①我不知道该如何改进.完善查询条件代码
       ②我不知道如何将用户的登陆信息与数据库进行比较从而判断用户是否有权限登陆系统

    数据库名是yingdiezulin  查询的那个主键字段名是ydbh  查询所对应的表名是yingdiexinxi  所有字段是ydbh ypmc yplx ypgj ydlx rksj sfycj 绑定的窗口控件是两个TextBox五个ComboBox以及一个DateTimePicker1

    谢谢大家的支持!! 我在这里感谢大家了!
    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
            If TextBox1.Text = "" Then
                MessageBox.Show("影片编号不能为空", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information)
                Exit Sub
            End If
            Dim objSqlConnection As New SqlConnection
            'Dim objSqlDataAdapter As New SqlDataAdapter("select ydbh='" & TextBox1.Text & "'from yingdiexinxi where ydbh='" & TextBox1.Text & "' ", objSqlConnection)
            Dim objSqlDataAdapter As New SqlDataAdapter("select * from yingdiexinxi where ydbh='" & TextBox1.Text & "' ", objSqlConnection)
            Dim ds As New DataSet
            objSqlConnection.ConnectionString = "workstation id=SSWJ;packet size=4096;integrated security=SSPI;data source=.;persist security info=False;initial catalog=yingdiezulin"
            objSqlDataAdapter.Fill(ds, "yingdiexinxi")
            DataGrid1.DataSource = ds

    2008年5月16日 15:07

答案

  • 我的意思简单的就是说

    我想实现验证用户输入的验证代码也就是当用户输入的用户名与密码不对时弹出提示信息用户输入错误
    但是这段代码应该添加到上面的哪段下面呢?或者怎样修改上面的代码呢?

     

    谢谢!

     

    2008年5月18日 9:45
  • Code Snippet

     

    Dim objSqlConnection As New SqlConnection 
    objSqlConnection.ConnectionString = "workstation id=SSWJ;packet size=4096;integrated security=SSPI;data source=.;persist security info=False;initial catalog=yingdiezulin

               

    Dim objSqlDataAdapter As New SqlDataAdapter("select * from 用户表 where 姓名='" + TextBox1.Text.Trim() + "' and 密码='" + TextBox2.Text.Trim() + "'", objSqlConnection)
            Dim ds As New DataSet 

                objSqlDataAdapter.Fill(ds, "yingdiexinxi") 

                If ds.Tables(0).Rows.Count = 0 Then
                    MessageBox.Show("用户名密码错")
                Else
                    MessageBox.Show("用户名密码对")

     

     


    2008年5月18日 12:56
    版主

全部回复

  • 不太明白你的意思?是不是要多条件查询

     

    Code Snippet

     

    Dim objSqlDataAdapter As New SqlDataAdapter("select * from yingdiexinxi where ydbh='" & TextBox1.Text & "'  and ypmc='" & TextBox2.Text & "' ", objSqlConnection)

     

     

     

    2008年5月17日 7:04
    版主
  • 我的意思简单的就是说

    我想实现验证用户输入的验证代码也就是当用户输入的用户名与密码不对时弹出提示信息用户输入错误
    但是这段代码应该添加到上面的哪段下面呢?或者怎样修改上面的代码呢?

     

    谢谢!

     

    2008年5月18日 9:45
  • Code Snippet

     

    Dim objSqlConnection As New SqlConnection 
    objSqlConnection.ConnectionString = "workstation id=SSWJ;packet size=4096;integrated security=SSPI;data source=.;persist security info=False;initial catalog=yingdiezulin

               

    Dim objSqlDataAdapter As New SqlDataAdapter("select * from 用户表 where 姓名='" + TextBox1.Text.Trim() + "' and 密码='" + TextBox2.Text.Trim() + "'", objSqlConnection)
            Dim ds As New DataSet 

                objSqlDataAdapter.Fill(ds, "yingdiexinxi") 

                If ds.Tables(0).Rows.Count = 0 Then
                    MessageBox.Show("用户名密码错")
                Else
                    MessageBox.Show("用户名密码对")

     

     


    2008年5月18日 12:56
    版主