我已经编写了用于比较数据库中的用户凭据的代码。首先我检查用户名,然后根据返回的结果,我比较密码。如果两者都匹配,我打开另一个活动。代码对我来说似乎很好,但我对数据库的东西没有经验,我可能会在这里失去一些至关重要的东西。以下代码由于某种原因而不起作用。比较查询SQLite数据库返回的结果
public boolean Compare(String username, String pass)
{
Cursor c = sqlDB.query(DB_NAME, columns, DB_COL_EMAIL + "='" + username+ "'", null, null, null, null);
if(c!=null && c.getCount()>0)
{
Toast.makeText(context, "inside check", Toast.LENGTH_SHORT).show();
c.moveToFirst();
int passwordCol_number= c.getColumnIndex(DB_COL_PASS);
boolean found = false;
while(c.moveToNext())
{
found = pass.equals(c.getString(passwordCol_number));
if(found)
return true;
}
}
return false;
}
有什么我做错了吗?
Regards
后,你得到这样我们就可以明白什么是你遇到 – 7bluephoenix
这里不回答你的问题的错误,但你真的真的应该阅读有关SQL注入和密码哈希的'logcat'跟踪;)(和也是java命名约定) – Guillaume