2016-02-15 72 views
0

我已经创建了用户被提示输入用户名和密码,然后核对数据库,如果返回的是真实的,它会记录他们的活动。SQLiteDatabase登录功能

我有一个登录方法在我的DB.java类,这是一个公共布尔值,根据是否匹配返回true或false。

然后我有一个登录类来处理表单。

DB.java

public boolean Login(String username, String password, SQLiteDatabase db) throws SQLException 
    { 
    Cursor mCursor = db.rawQuery("SELECT * FROM " + Table + " WHERE username=? AND password=?", new String[]{username,password}); 
    if (mCursor != null) { 
    if(mCursor.getCount() > 0) 
    { 
    return true; 
    } 
    } 
    return false; 
    } 

Login.java

public class Login extends Activity { 

    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.login); 

     final EditText usernameET=(EditText)findViewById(R.id.usernameET); 
     final EditText passwordET=(EditText)findViewById(R.id.passwordET);  
     final Button loginBTN=(Button)findViewById(R.id.loginBTN); 
     DB db = new DB(this); 

     loginBTN.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       String usernamee = usernameET.getText().toString(); 
       String password = passwordET.getText().toString();  
       ***CHECK LOGIN HERE*** 
      } 
     });  
    }  
} 

基本上我已经使用登录方法中Login.javaDB.java试图像这样

db.Login(username, password, db); 

但是,我想它是承认第二个'db'作为类,而不是数据库。那么我需要声明并将SQLiteDatabase作为第二个'db'放入,否则我是否完全错误?

在此先感谢

回答

0
db.Login(username, password, db); 

这里的第一DB是DB类的对象... 第二个应该是sqlitedatabase的对象(根据登录的方法定义).. 但在上面的代码都引用数据库类的对象.. 因此declare和sqlitedatabaseobject。

SQLiteDatabase database; 
db.Login(username, password, database);