 |
|
สร้างหน้า create new user แต่พอกดปุ่มแทนที่จะขึ้น Msgbox ว่าบันทึกสำเร็จ กลับไปขึ้นของคำสั่งอื่น |
|
 |
|
|
 |
 |
|
Code (VB.NET)
Dim objConn As SqlConnection
Dim objCmd As SqlCommand
Dim strSQL As String
Sub BindData()
Dim strConnString As String
strConnString = "Server=localhost\SQLExpress;Database=Myweb;Trusted_Connection=True;"
objConn = New Data.SqlClient.SqlConnection(strConnString)
objConn.Open()
Dim intNumRows As Integer
strSQL = "SELECT COUNT(*) FROM Username WHERE Username = '" & txtUsername.Text & "' "
objCmd = New SqlCommand(strSQL, objConn)
intNumRows = objCmd.ExecuteScalar()
If intNumRows > 0 Then
MsgBox("Username already exist .", MsgBoxStyle.OkOnly, "Warning!!")
Else
End If
strSQL = "INSERT INTO Username (Name,Surname,Username,Password,ConfirmPassword,Email)" & _
" VALUES ('" & txtName.Text & "','" & txtSurname.Text & "','" & txtUsername.Text & "' " & _
" ,'" & txtPassword.Text & "','" & txtConfirmPassword.Text & "','" & txtEmail.Text & "') "
objCmd = New SqlCommand
With objCmd
.Connection = objConn
.CommandText = strSQL
.CommandType = CommandType.Text
End With
'** Check Password กับ ConfirmPassword ว่าตรงกันไหม **'
Dim sqlPass As String = ""
sqlPass = "SELECT COUNT(*) FROM Username"
sqlPass &= " WHERE (Password = '" & txtPassword.Text & "')"
sqlPass &= " AND (ConfirmPassword = '" & txtConfirmPassword.Text & "')"
objCmd = New SqlCommand(strSQL, objConn)
sqlPass = objCmd.ExecuteScalar()
If sqlPass = 0 Then
lblStatus.Text = "Password is not correct ."
Else
End If
Try
objCmd.ExecuteNonQuery()
Catch ex As Exception
MsgBox("บันทึกสำเร็จ", MsgBoxStyle.OkOnly, "Complete")
End Try
objConn.Close()
objConn = Nothing
End Sub
Protected Sub Button1_Click1(ByVal sender As Object, ByVal e As System.EventArgs)
BindData()
End Sub
ปัญหาหน้านี้เยอะมากมายเลยค่ะ รบกวนด้วยนะคะ หน้าสุดท้ายแล้ว ^^
- พอเราเพิ่มข้อมูลแล้ว หากชื่อซ้ำคำสั่งการเช็ค Username ขึ้นถูกแล้ว
แต่ Msgbox ไม่ยอมเด้งขึ้นหน้าจอ กลับไปรออยู่ที่ TaskBar
- เวลาพิมพ์ Pwd ในการสมัครใหม่ไม่ตรงกัน
มีการเตือนจริง แต่ข้อมูลก็ยัง Insert ไปใน DB อยู่ดี
- พอเพิ่มข้อมูลที่ถูกต้องหมด ชื่อไม่ซ้ำ
Pwd ตรงกัน แต่พอกดปุ่มบันทึก MsgBox ยืนยัน "บันทึกสำเร็จ" กลับไม่ขึ้น
แต่ข้อความจากคำสั่งที่ใช้เช็ค Pwd : "Password is not correct " กลับมาขึ้นแทน
- สุดท้ายคือ เวลาบันทึก ดันบันทึกข้อมูลซ้ำกัน 2 ครั้งอ่ะค่ะ
เยอะแยะจิงๆ ขอโทดด้วยนะคะ ToT*
Tag : .NET, VBScript, Web (ASP.NET), VB.NET, VS 2005 (.NET 2.x)
|
|
 |
 |
 |
 |
Date :
2010-09-15 22:59:49 |
By :
arpraew |
View :
1230 |
Reply :
2 |
|
 |
 |
 |
 |
|
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
เวลาเขียนโปรแกรมหาหนังยางมารัดผมนะคะ รวบให้แน่นๆ
ใจเย็นๆแล้วตรวจดูดีๆค่ะ ไม่ยากเท่าไหร่หรอก
|
 |
 |
 |
 |
Date :
2010-09-16 02:23:37 |
By :
blurEyes |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
Code (VB.NET)
If intNumRows > 0 Then
MsgBox("Username already exist .", MsgBoxStyle.OkOnly, "Warning!!")
Else ' <---- ถ้า Username มันไม่ซ้ำก็เอาคำสั่ง Insert มาใส่ตรงนี้ ไม่งั้นมันก็เซฟหมดสิครับ
End If
แล้วเรื่องของConfirm Password ไม่ต้องเก็บลงฐานข้อมูลก็ได้ครับ
แค่เช็ค If txtPass.Text = txtComfirmPass.Text ก่อน แล้วค่อยเก็บ txtPass ตัวนั้นลงฐานข้อมูล
ลองไล่ดูใหม่อีกทีครับ แก้ตัวนึงได้เดี๋ยวตัวอื่นๆก็ได้เองแหละครับ
|
 |
 |
 |
 |
Date :
2010-09-16 09:22:14 |
By :
3rds |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|