RE:登录页面。如何匹配数据库中的用户名和密码以允许用户登录?

时间:2010-07-01 06:56:54

标签: android

我设法为函数创建逻辑,但我不知道如何将它与数据库匹配。我只知道如何用硬编码的方式来做。

以下是我的表现方式。任何人都可以帮助我使用'guest'部分,我相信应该插入一个sql语句,我是对的吗?我知道我错过了一些东西。在匹配用户名和密码之前,我应先检查用户是否存在于数据库中,然后检查密码是否与用户名匹配。

总而言之,我需要'if else'声明的帮助。

package one.two;

import android.app.Activity;
import android.content.Intent;
import android.database.Cursor;

import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.GridView;
import android.widget.ListView;
import android.widget.TextView;



public class Login extends Activity implements OnClickListener{

/** Called when the activity is first created. */

    private EditText etUsername;
    private EditText etPassword;
    private Button btnLogin;
    //private Button btnRegister;
    private TextView lblResult;

    @Override

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.main);
     // Get the EditText and Button References
        etUsername = (EditText)findViewById(R.id.usernametxt);
        etPassword = (EditText)findViewById(R.id.passwordtxt);
        btnLogin = (Button)findViewById(R.id.btnLogin);
        //btnRegister = (Button)findViewById(R.id.btnRegister);
        lblResult = (TextView)findViewById(R.id.msglbl);


        Button btnArrival = (Button) findViewById(R.id.btnRegister);
        btnArrival.setOnClickListener(this);


    // Set Click Listener
    btnLogin.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
        // Check Login
        String username = etUsername.getText().toString();
        String password = etPassword.getText().toString();

        if(username.equals("guest") && password.equals("guest")){
            lblResult.setText("Login successful.");
        } else {
            lblResult.setText("Login failed. Username and/or password doesn't match.");
        }
    }
});



    }

    public void onClick(View v)
    {
            Intent intent = new Intent(this, DatabaseActivity.class);
            startActivity(intent);
}

}

1 个答案:

答案 0 :(得分:1)

  

在匹配用户名和密码之前,我应先检查用户是否存在于数据库中,然后检查密码是否与用户名匹配。

否,除非在您的要求中您不需要制作两个SQL。你做得更好。 select count(*) from tableName where userNameField = username and passwordField = password并检查行数是否为>比0登录没问题,否则用户名或密码无效