Я пытаюсь кодировать для получения значения из регистрационной таблицы в пользовательскую таблицу, когда пользователь нажимает кнопку входа в систему, используя номер телефона.Моя таблица называется registate, пользователь. Таблица регистрации имеет такие значения, как имя, фамилия, пароль, адрес электронной почты, телефон. Таблица пользователей также имеет такой же атрибут.
DatabaseHelper.java:
package com.example.lenovo.myapplication1;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class DatabaseHelper extends SQLiteOpenHelper {
public static final String DATABASE_NAME="register.db";
public static final String TABLE_NAME="registeration";
public static final String COL_1="ID";
public static final String COL_2="FirstName";
public static final String COL_3="LastName";
public static final String COL_4="Password";
public static final String COL_5="Email";
public static final String COL_6="Phone";
public static final String TABLE_LOGIN="login";
public static final String COLN_1="Phone";
public static final String COLN_2="Password";
public static final String TABLE_USER_LOG="user";
public static final String COLUMN_1="ID";
public static final String COLUMN_2="FirstName";
public static final String COLUMN_3="LastName";
public static final String COLUMN_4="Password";
public static final String COLUMN_5="Email";
public static final String COLUMN_6="Phone";
public DatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, 3);
SQLiteDatabase db = this.getWritableDatabase();
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE TABLE " + TABLE_NAME + " (ID INTEGER PRIMARY KEY AUTOINCREMENT,FirstName TEXT,LastName TEXT,Password TEXT,Email TEXT,Phone TEXT)");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
//db.execSQL("CREATE TABLE " + TABLE_LOGIN + " (Phone TEXT,Password TEXT)");
db.execSQL("CREATE TABLE " + TABLE_USER_LOG + " (ID INTEGER PRIMARY KEY AUTOINCREMENT,FirstName TEXT,LastName TEXT,Password TEXT,Email TEXT,Phone TEXT)");
//db.execSQL("DROP TABLE IF EXISTS" +TABLE_NAME); //Drop older table if exists
//onCreate(db);
}
}
Register.java:
package com.example.lenovo.myapplication1;
import android.content.ContentValues;
import android.content.Intent;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class Register extends AppCompatActivity {
DatabaseHelper databaseHelper;
SQLiteOpenHelper openHelper;
SQLiteDatabase db;
Button _btnreg,_btnlogin;
EditText _txtfname,_txtlname,_txtpass,_txtemail,_txtphone;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_register);
databaseHelper = new DatabaseHelper(this);
openHelper = new DatabaseHelper(this);
_btnreg = (Button)findViewById(R.id.btnreg);
_txtfname = (EditText)findViewById(R.id.txtfname);
_txtlname = (EditText)findViewById(R.id.txtlname);
_txtpass = (EditText)findViewById(R.id.txtpass);
_txtemail = (EditText)findViewById(R.id.txtemail);
_txtphone = (EditText)findViewById(R.id.txtphone);
_btnlogin = (Button)findViewById(R.id.btnlogin);
_btnreg.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
db=openHelper.getWritableDatabase();
String fname=_txtfname.getText().toString();
String lname=_txtlname.getText().toString();
String pass=_txtpass.getText().toString();
String email=_txtemail.getText().toString();
String phone=_txtphone.getText().toString();
insertdata(fname,lname,pass,email,phone);
Toast.makeText(getApplicationContext(), "register successfully",Toast.LENGTH_LONG).show();
}
});
_btnlogin.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(Register.this,Login.class);
startActivity(intent);
}
});
}
public void insert data(String first name, String last name, String pass, String email, String phone){
ContentValues contentValues = new ContentValues();
contentValues.put(DatabaseHelper.COL_2, fname);
contentValues.put(DatabaseHelper.COL_3, lname);
contentValues.put(DatabaseHelper.COL_4, pass);
contentValues.put(DatabaseHelper.COL_5, email);
contentValues.put(DatabaseHelper.COL_6, phone);
long id = db.insert(DatabaseHelper.TABLE_NAME, null, contentValues);
}
}
Login.java:
package com.example.lenovo.myapplication1;
import android.content.ContentValues;
import android.content.Intent;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import static com.example.lenovo.myapplication1.DatabaseHelper.COLN_1;
import static com.example.lenovo.myapplication1.DatabaseHelper.COL_6;
public class Login extends AppCompatActivity {
DatabaseHelper databaseHelper;
SQLiteDatabase db;
SQLiteOpenHelper openHelper;
Button _btnLogin;
EditText _txtphone,_txtpass;
Cursor cursor;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
databaseHelper = new DatabaseHelper(this);
openHelper = new DatabaseHelper(this);
db = openHelper.getReadableDatabase();
_btnLogin = (Button)findViewById(R.id.btnlogin);
_txtphone = (EditText)findViewById(R.id.txtphone);
_txtpass = (EditText)findViewById(R.id.txtpass);
_btnLogin.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String phone = _txtphone.getText().toString();
String pass = _txtpass.getText().toString();
insertdata(phone,pass);
cursor = db.rawQuery("SELECT * FROM " + DatabaseHelper.TABLE_NAME + " WHERE " + COL_6 + "+? AND " + DatabaseHelper.COL_4 + "=?", new String[]{phone,pass});
if(cursor!=null){
if(cursor.getCount()>0){
cursor.moveToNext();
Toast.makeText(getApplicationContext(), "Login Successfuliy", Toast.LENGTH_LONG).show();
}else {
Toast.makeText(getApplicationContext(), "ERROR", Toast.LENGTH_LONG).show();
}
}
Intent intent = new Intent(Login.this,Welcome.class);
startActivity(intent);
//if(COL_6==COLN_1){
// cursor = db.rawQuery("SELECT * FROM" + DatabaseHelper.TABLE_NAME + );
//}
}
});
}
public void insertdata(String phone, String pass){
ContentValues contentValues = new ContentValues();
contentValues.put(COLN_1, phone);
contentValues.put(DatabaseHelper.COLN_2, pass);
long id = db.insert(DatabaseHelper.TABLE_LOGIN, null, contentValues);
}
}