어플 사용 중입니다. 사용자가 edittext 필드에 사용자 이름을 입력하는 로그인 페이지가 있습니다. 그런 다음 모든 사용자 이름이있는 테이블의 항목과 사용자 이름을 비교하는 내 databasehelper 클래스의 함수로 전달됩니다. 여기 로그인 사용자 유효성 확인
내가 내 databasehelper 클래스의 검증을 위해 쓴 기능입니다 : 내가 디버깅 할 때public String verify_user(String is_user)
{
String verify = " ";
String check = " ";
SQLiteDatabase fg = this.getReadableDatabase();
Cursor c = fg.query(Login_Table, null, null, null, null, null, null);
int iuser = c.getColumnIndex(colUsername);
for(c.moveToFirst() ; !c.isAfterLast();c.moveToNext())
{
verify = c.getString(iuser);
if(is_user == verify)
{
check = "Valid User!";
}
else
{
check = "Not Valid User!";
}
}
return check;
}
is_user는 사용자가 사용자 이름을 입력하는 .XML 레이아웃 파일에서오고 ... 난 이상한 행동을 발견 . is_user와 verify가 동일한 값을 가지지 만 다른 점은 여전히 실행됩니다. 그래서 나는 사용자가이 코드가 유효하다는 것을 알고있다. . 친절하게 안내해줍니다. 고맙습니다! 새로운 제안에서
: 자바에서
String check = " ";
SQLiteDatabase fg = this.getReadableDatabase();
String[] args = new String[1];
args[0] = is_user;
Cursor c = fg.query(Login_Table, null, colUsername + " = ?", args, null, null, null);
int iuser = c.getColumnIndex(colUsername);
if(is_user.equals(c.getString(iuser)))
{
check = "Valid User!";
}
return check;
유 여기에 커서에 대한 쿼리를 지정하시기 바랍니다 수 있습니까 ?? 사용자 이름과 비교하려고합니다! – Alfred
커서 c = fg.query (Login_Table, colUsername, colUsername + "="+ is_user, null, null, null, null) ?? – Alfred
예, 거의. 내 대답을 업데이트했습니다. – m0skit0