PDA

View Full Version : سوال: اشکال در کد login



nima_8m
سه شنبه 23 آبان 1391, 19:15 عصر
اساتید مشکل این کد کجاست و چطوری برطرفش کنم که خطا نداشته باشه
به U و P ایراد میگیره

If con.State = ConnectionState.Open Then
con.Close()
End If

con.Open()
cb = New OleDbCommand("select * from id", con)
dr = cb.ExecuteReader
Dim u, p As String
While dr.Read
u = dr(0)
p = dr(1)
End While
If (txt1.Text.Equals(u) And txt2.Text.Equals(p)) Then
Me.Hide()
frmmain.Show()
Else
MsgBox("نام کاربری و یا کلمه عبور معتبر نیست")
End If
con.Close()

con در یک ماژول تعریف شده و مشکلی ندارد
اینم پیغام خطا

Warning 1 Variable 'u' is used before it has been assigned a value. A null reference exception could result at runtime. D:\VB.NET\Exchange\Exchenge\Exchenge\Login.vb 23 30 Exchenge

mhq1368
چهارشنبه 24 آبان 1391, 00:12 صبح
سلام
به این صورت بنویسید شاید درست شد

con.Open()
da = New SqlDataAdapter("select * from u", con)
da.Fill(ds, "u")
If (TextBox1.Text = "") And (TextBox2.Text = "") Then
MessageBox.Show("رمز عبور ونام کاربری وارد نشده", "خطا", MessageBoxButtons.OK, MessageBoxIcon.Error)
Exit Sub
End If
If TextBox1.Text = "" Then
MessageBox.Show("نام کاربری وارد نشده", "خطا", MessageBoxButtons.OK, MessageBoxIcon.Error)
Exit Sub
End If
If TextBox2.Text = "" Then
MessageBox.Show("رمز عبور واردنشده", "خطا", MessageBoxButtons.OK, MessageBoxIcon.Error)
Exit Sub
End If

Dim dr1 As DataRow = ds.Tables(0).Rows.Item(0)
Dim dr As DataRow = ds.Tables(0).Rows.Item(0)
If ((Trim(dr.Item("pas")) <> TextBox2.Text) And (Trim(dr1.Item("uname")) <> TextBox1.Text)) Then
MessageBox.Show(" نام کاربری و رمز عبور اشتباه است", "خطا", MessageBoxButtons.OK, MessageBoxIcon.Error)
Exit Sub
End If

If Trim(dr1.Item("uname")) <> TextBox1.Text Then
MessageBox.Show("نام کاربری اشتباه است", "خطا", MessageBoxButtons.OK, MessageBoxIcon.Error)
Exit Sub
End If

If Trim(dr.Item("pas")) <> TextBox2.Text Then
MessageBox.Show("رمز عبور اشتباه است", "خطا", MessageBoxButtons.OK, MessageBoxIcon.Error)
Exit Sub
End If

Form2.Show()
Me.Hide()
con.Close()

Hossis
چهارشنبه 24 آبان 1391, 10:23 صبح
خطا مال این خط هست
Dim u, p As String
که شما این جوری بنویس
Dim u As String=""
Dim p As String=""
بعدش در این خط
select * from id
مطمئنید که نام جدول, ID هست؟؟ فکر کنم شما نام یک فیلد رو نوشتید.

nima_8m
چهارشنبه 24 آبان 1391, 22:20 عصر
جناب hossis
مرسی از راهنماییت مشکل حل شد
Dim u As String=""
Dim p As String=""
مشکل از این بود