Chào các bạn, như tiêu đề mình gặp vấn đề phần lấy dữ liệu username và password trong database
Source code của mình : Phần truy vấn cơ sở dữ liệu:
void main()
{
public String getSinlgeEntry(String userName)
{
SQLiteDatabase db=this.getReadableDatabase();
String password="";
Cursor c=db.query("Login", null, " username=?", new String[]{userName}, null, null, null);
if(c.moveToFirst())
do {
password=c.getString(2);
}
while (c.moveToNext());
return password;
}
}
Đây là hàm main của mình
void main()
{
public class MainActivity extends AppCompatActivity {
Database db = new Database(MainActivity.this);
ArrayList<Login> arrlogin = new ArrayList<>();
EditText et_name;
EditText et_pass;
Button confirm,set;
TextView tv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
et_name=(EditText)findViewById(R.id.editText4);
et_pass=(EditText)findViewById(R.id.editText5);
confirm=(Button)findViewById(R.id.button);
tv=(TextView)findViewById(R.id.textView);
set=(Button)findViewById(R.id.button3);
set.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
show();
}
});
confirm.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String username=et_name.getText().toString();
String password=et_pass.getText().toString();
String passconfirm=db.getSinlgeEntry(username);
tv.setText(passconfirm);
if(password.equals(passconfirm)){
Toast.makeText(MainActivity.this, "Dang nhap thanh cong", Toast.LENGTH_SHORT).show();
}
else{
Toast.makeText(MainActivity.this, "Dang nhap that bai", Toast.LENGTH_SHORT).show();
}
}
});
}
public void show(){
final Dialog dialog = new Dialog(this);
dialog.setContentView(R.layout.dong_login);
final EditText etusername=(EditText)dialog.findViewById(R.id.editText);
EditText etpass=(EditText)dialog.findViewById(R.id.editText2);
Button btn=(Button)dialog.findViewById(R.id.button2);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String id=etusername.getText().toString().trim();
String pass=et_pass.getText().toString().trim();
Login lg= new Login(id,pass);
db.themuser(lg);
dialog.dismiss();
}
});
dialog.show();
}
}
}
Cứ mỗi lần mình thêm dữ liệu ví dụ username hathanhdung pass123456 lúc khi đăng nhập thì nó báo đang nhập thất bại rồi add thêm một dòng nữa ví dụ thanhdung123 pass 456789 thì nó cũng đăng nhập thất bại nhưng khi mình điền thanhdung123 pass 123456(mật khẩu của dòng trên) thì nó lại chấp nhận moi mọi người giúp đỡ!!!