Chào mừng đến với Diễn đàn lập trình - Cộng đồng lập trình.
Trang 1 của 2 12 CuốiCuối
Kết quả 1 đến 10 của 11
  1. #1

    Form Login khi chạy thì báo lỗi INPUT String was not in a correct form?

    Mình làm thử form login, và kiểm tra như thế này.
    Vẫn đăng nhập được, nhưng mà thông báo thếm lỗi "INPUT String was not in a correct form"
    database của mình UserName( nvarchar(20)) và Password(nvarchar(20);


    Mã:
     private void btnLogin_Click(object sender, EventArgs e)
            {
                
                if (txtUserName.Text.Length == 0 & txtPassword.Text.Length == 0) MessageBox.Show("Please input your username and password");
                else
                    if (txtUserName.Text.Length == 0) MessageBox.Show("You have to input your username");
                    else
                        if (txtPassword.Text.Length == 0) MessageBox.Show("You have to input your password");
                        else
                        {
                            string sql = "select UserName from tlbUserID where Password ='" + txtPassword.Text + "' and UserName ='" + txtUserName.Text + "'";
                            //DataAccess.ConnectToData();
                         
                            try
                            {
                               UserNameLogin = DataAccess.ExecuteScalar(sql);
    
    
                                if (UserNameLogin.Length > 0)
                                {
                                    UserMaintain UserMaintain = new UserMaintain();
                                    UserMaintain.Show();
                                    
                                }
                                else
                                {
                                    MessageBox.Show("Error in User Name or Password 1, please check again");
                                }
                           }
                          
                           
                            catch (System.Exception ex)
                            {
                                MessageBox.Show(ex.Message);
                                //UserNameLogin = "";
                            }
                        }
            }
    và lớp DataAccess có phương thức ExecuteScalar();
    Mã:
    ublic static string ExecuteScalar(string sql)
            {
                string a;
                SqlConnection conn = ConnectToData();
                SqlCommand cmd = new SqlCommand(sql, conn);
                conn.Open();
                a= Convert.ToString(cmd.ExecuteScalar());
                conn.Close();
                cmd.Dispose();
                return a;
            }
    Giúp mình fix cái lỗi này, mình đang cần lắm.

  2. #2
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Lần sau nên ghi rõ lỗi của bạn xuất hiện tại dòng nào, debug xem giá trị các biến để tìm hiểu trước, chẳng hạn như chuỗi sql bạn thiếu dấu nháy đơn '

  3. #3
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Bạn coi lại câu này thử:

    string sql = "select UserName from tlbUserID where Password ='" + txtPassword.Text +

  4. #4
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi Yin Yang
    Bạn coi lại câu này thử:
    Đằng sau vẫn còn mà, tại bạn xem không kỹ thì phải.

  5. #5
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Mã:
       string sql = "select UserName from tlbUserID where Password ='" + txtPassword.Text + "' and UserName ='" + txtUserName.Text + "'"
    bạn xem lại câu này vì do bạn đặt tên bảng trùng với tên trường ý mà lỗi này lần trước mình cũng mắc phải nên có kinh nghiệm rồi lần sau bạn thử chạy câu truy vấn sql trước khi cho vào chương trình nhé kinh nghiệm xương máu đấy

  6. #6
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Mã:
    string sql = "select UserName from tlbUserID where Password ='" + txtPassword.Text + "' and UserName ='" + txtUserName.Text + "'";
    mình nghĩ phải thêm cả Password khi select:

    select UserName, Password from tlbUserID where Password =

  7. #7
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi cham3cham
    Mã:
    string sql = "select UserName from tlbUserID where Password ='" + txtPassword.Text + "' and UserName ='" + txtUserName.Text + "'";
    mình nghĩ phải thêm cả Password khi select:

    select UserName, Password from tlbUserID where Password =
    Nhưng mà theo mình biết thì phương thức executeScalar() trả lại 1 đối tượng.

  8. #8
    Ngày tham gia
    Sep 2015
    Đang ở
    24 Rạch Bùng Binh , P10,Q3 , HCM
    Bài viết
    0
    Bạn thử debug và đưa nội dung câu sql lúc lỗi lên đây xem

  9. #9
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi thangemhamhochoi
    Mã:
       string sql = "select UserName from tlbUserID where Password ='" + txtPassword.Text + "' and UserName ='" + txtUserName.Text + "'"
    bạn xem lại câu này vì do bạn đặt tên bảng trùng với tên trường ý mà lỗi này lần trước mình cũng mắc phải nên có kinh nghiệm rồi lần sau bạn thử chạy câu truy vấn sql trước khi cho vào chương trình nhé kinh nghiệm xương máu đấy
    Mình đã sửa lại database rồi, nhưng mà vẫn bị lỗi thế này chẳng hiểu tại sao, vẫn đăng nhập okie, nhưng mà vẫn báo lỗi như cũ.

  10. #10
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi Yin Yang
    Bạn thử debug và đưa nội dung câu sql lúc lỗi lên đây xem
    Chuơng trình vẫn chạy bình thường, báo MessageBox như mình nói, bấm OK rồi lại chạy bình thường. Thế mới bực mình.

 

 
Trang 1 của 2 12 CuốiCuối

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •