佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

查看: 1294|回复: 5

如何用VB。NET 把一个FORM TEXTBOX 的 字PASS 去 另外一个FORM

[复制链接]
发表于 17-3-2006 01:06 AM | 显示全部楼层 |阅读模式
ERROR MSGAn unhandled exception of type 'System.FormatException' occurred in system.data.dll

Additional information: Input string was not in a correct format.



Source Code
Dim objReader As OleDb.OleDbDataReader = OleDbCommand1.ExecuteReader()

显示objReader = nothing

谢谢个位高手了

[ 本帖最后由 Zhixuen 于 18-3-2006 03:02 AM 编辑 ]
回复

使用道具 举报


ADVERTISEMENT

 楼主| 发表于 17-3-2006 03:53 AM | 显示全部楼层
对不起问题OK 了。 因为我没关好CONNECTION。。。
现在我又有一个问题。。。
以下是我的CODE

STAFFID 和 PASSWORD 我 SET CHAR 在DATABASE

可是奇怪的是为什么我成功LOGIN 但PASSWORD AND ID CORRECT。
比如我的STAFFID 是 CHIA
但当我KEY IN ID WITH 我 KEY IN ID WITH CHIA123 也算对吗?? 不过问题不出在PASSWORD 那里 ?

SQL --> COMMAND 1 : SELECT Staff.* FROM Staff WHERE (StaffId = ?)

      COMMAND 2 :SELECT Password FROM Staff WHERE (StaffId = ?) AND (Password = ?)

source code

OleDbConnection1.Open()


        OleDbCommand1.Parameters("StaffId").Value = txtLogin.Text

        Dim objReader As OleDb.OleDbDataReader = OleDbCommand1.ExecuteReader()

        If objReader.HasRows = True Then

            OleDbCommand2.Parameters("StaffId").Value = txtLogin.Text
            OleDbCommand2.Parameters("Password").Value = txtpass.Text
            OleDbConnection1.Close()
            OleDbConnection1.Open()
            objReader = OleDbCommand2.ExecuteReader()


            If objReader.HasRows = True Then

                form.lblUserid.Text = txtLogin.Text

                Me.Hide()
                form.Show()
                form1.Show()

            Else
                MessageBox.Show("password provided unmatch", "retry", MessageBoxButtons.OK)
                txtpass.Focus()
                txtpass.Text = ""

            End If
        Else
            MessageBox.Show("Username provided unmatch", "retry", MessageBoxButtons.OK)
            txtLogin.Focus()
            txtLogin.SelectAll()

        End If

        objReader.Close()
        OleDbConnection1.Close()
回复

使用道具 举报

发表于 17-3-2006 09:24 AM | 显示全部楼层
为什么你要先检查 id, 然后再检查 id 和 password? 为什么不一次性检查 id 和 password?
回复

使用道具 举报

 楼主| 发表于 17-3-2006 10:41 PM | 显示全部楼层
原帖由 goatstudio 于 17-3-2006 09:24 AM 发表
为什么你要先检查 id, 然后再检查 id 和 password? 为什么不一次性检查 id 和 password?

啊 !!! 没想到
这样应该可以了瓜??
谢谢goatstudio的帮忙 :)
OleDbConnection1.Open()
        DataSet11.Clear()
        Dim newRow As DataRow = DataSet11.Staff.NewRow
        Me.OleDbDataAdapter1.SelectCommand.CommandText = "SELECT StaffId, Position, Password FROM Staff where StaffId = '" + txtLogin.Text + "' AND Password = '" + txtpass.Text + "'"

        Me.OleDbDataAdapter1.Fill(DataSet11)
                If Me.BindingContext(DataSet11, "Staff").Count > 0 Then
            Me.Hide()
            form.Show()
            form1.Show()

        Else
            DataSet11.Clear()
            Me.OleDbDataAdapter1.SelectCommand.CommandText = "SELECT StaffId, Position, Password FROM Staff where StaffId = '" + txtLogin.Text + "'"
            Me.OleDbDataAdapter1.Fill(DataSet11)
            If Not Me.BindingContext(DataSet11, "Staff").Count > 0 Then
               
                MessageBox.Show("Username provided unmatch", "retry", MessageBoxButtons.OK)
                txtLogin.Focus()
                txtLogin.SelectAll()
            Else
                DataSet11.Clear()
                Me.OleDbDataAdapter1.SelectCommand.CommandText = "SELECT StaffId, Position, Password FROM Staff where Password = '" + txtpass.Text + "'"
                Me.OleDbDataAdapter1.Fill(DataSet11)
                If Not Me.BindingContext(DataSet11, "Staff").Count > 0 Then
                    MessageBox.Show("password provided unmatch", "retry", MessageBoxButtons.OK)
                    txtpass.Focus()
                    txtpass.Text = ""
                End If

            End If
        End If

DataSet11.Clear()
OleDbConnection1.Close()
还有更好的吗?
回复

使用道具 举报

 楼主| 发表于 18-3-2006 03:05 AM | 显示全部楼层

新的问题,希望大家能帮帮小弟

新的问题,希望大家能帮帮小弟



如何用VB。NET 把一个FORM  TEXTBOX 的 字PASS 去 另外一个FORM
我可以PASS 进MIDFORM 但不可以PASS 进CHILD 。。。
回复

使用道具 举报

发表于 18-3-2006 01:14 PM | 显示全部楼层
其实有很多方法pass value to another form。。。
1)你开一个class.vb的file,然后你declare public Txtname as string,然后在你原本的form,Txtname=textbox1.text。。。就可以了
2)最简单,session("Txtname")=textbox1.text
回复

使用道具 举报

Follow Us
您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

ADVERTISEMENT



ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2023 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 22-9-2024 06:55 AM , Processed in 0.097272 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表