Java Can';t验证Android SQLite中的用户登录详细信息
下面是我用来检查用户是否已经是数据库的一部分的代码:Java Can';t验证Android SQLite中的用户登录详细信息,java,android,xml,sqlite,android-studio,Java,Android,Xml,Sqlite,Android Studio,下面是我用来检查用户是否已经是数据库的一部分的代码: Boolean checkEmailPass = db.emailpasswd(email, pass); if (checkEmailPass== false){ Toast.makeText(getApplicationContext(),"Email or password incorrect", Toast .LENGTH_SH
Boolean checkEmailPass = db.emailpasswd(email, pass);
if (checkEmailPass== false){
Toast.makeText(getApplicationContext(),"Email or password incorrect", Toast
.LENGTH_SHORT).show();
}else{
Intent i = new Intent(LoginActivity.this, HomeActivity.class);
startActivity(i);
finish();
Toast.makeText(getApplicationContext(),"Successful Login",Toast.LENGTH_SHORT).show();
}
下面是datahelper
类的代码部分。该表的名称为user
public boolean emailpasswd(String email, String password){
SQLiteDatabase db = this.getReadableDatabase();
Cursor cursor = db.rawQuery("Select * from user where email=? and password = ?", new
String[]{email, password});
if (cursor.getCount()>0){
return false;
}else {
return true;
}
}
}
我在SQLite数据库的帮助下创建了一个应用程序。整个应用程序工作正常,但只要我尝试登录,应用程序就无法检查数据库中的电子邮件和密码,这就是为什么无论我输入什么,我都能成功登录。请检查代码并引导我完成。您的代码:if (cursor.getCount()>0){
return false;
}else {
return true;
}
因此,如果用户存在,则返回false
!!!
换一种方式:
if (cursor.getCount()>0){
return true;
}else {
return false;
}
并在末尾添加一个
db.close()
。请不要试图发布代码的图像,这样做可能会导致很多人投反对票。编辑您的问题,然后将代码复制并粘贴为。发布实际代码使其他人更容易测试代码,从而更容易提供答案。如果代码粘贴为图像,许多人会忽略这个问题,其他人可能会投票反对这个问题,其他人可能会投票结束这个问题。你说的“我在……的帮助下创建了一个”是什么意思?例如,缺少一个单词吗?通过编辑你的问题,而不是在这里的评论。嘿,谢谢你的建议,但我仍然坚持唯一的区别,现在我收到的电子邮件和密码不正确的吐司,而不是登录成功的代码。P