Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.example.user.loginregister;
- import android.app.AlertDialog;
- import android.content.Intent;
- import android.support.v7.app.ActionBarActivity;
- import android.os.Bundle;
- import android.view.Menu;
- import android.view.MenuItem;
- import android.view.View;
- import android.widget.Button;
- import android.widget.EditText;
- import android.widget.TextView;
- import android.widget.Toast;
- public class Login extends ActionBarActivity implements View.OnClickListener{
- Button bLogin;
- EditText etUsername, etPassword;
- TextView tvRegisterLink;
- UserLocalStore userLocalStore;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_login);
- etUsername = (EditText) findViewById(R.id.etUsername);
- etPassword = (EditText) findViewById(R.id.etPassword);
- bLogin = (Button) findViewById(R.id.bLogin);
- tvRegisterLink = (TextView) findViewById(R.id.tvRegisterlink);
- bLogin.setOnClickListener(this);
- tvRegisterLink.setOnClickListener(this);
- userLocalStore = new UserLocalStore(this);
- }
- private void authenticate(User user) {
- ServerRequests serverRequests = new ServerRequests(this);
- serverRequests.fetchUserDataInBackground(user, new GetUserCallBack()
- {
- @Override
- public void done(User returnedUser) {
- Toast.makeText(getApplicationContext(), (CharSequence) returnedUser, Toast.LENGTH_LONG).show();
- if (returnedUser == null) {
- showErrorMessage();
- }else {
- logUserIn(returnedUser);
- }
- }
- });
- }
- private void showErrorMessage(){
- AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(Login.this);
- dialogBuilder.setMessage("Incorrect user details");
- dialogBuilder.setPositiveButton("Ok", null);
- dialogBuilder.show();
- }
- private void logUserIn(User returnedUser) {
- userLocalStore.storeUserData(returnedUser);
- userLocalStore.setUserLoggedIn(true);
- startActivity(new Intent(this, MainActivity.class));
- }
- @Override
- public void onClick(View v) {
- switch (v.getId()) {
- case R.id.bLogin:
- String username = etUsername.getText().toString();
- String password = etPassword.getText().toString();
- User user = new User(username, password);
- Toast.makeText(getApplicationContext(), "this is my Toast message!!! =)",
- Toast.LENGTH_LONG).show();
- authenticate(user);
- userLocalStore.storeUserData(user);
- userLocalStore.setUserLoggedIn(true);
- break;
- case R.id.tvRegisterlink:
- startActivity(new Intent(this, Register.class));
- break;
- }
- }
- }
- <?xml version="1.0" encoding="utf-8"?>
- <manifest xmlns:android="http://schemas.android.com/apk/res/android"
- package="com.example.user.loginregister" >
- <uses-permission android:name="android.permission.INTERNET" />
- <application
- android:allowBackup="true"
- android:icon="@mipmap/ic_launcher"
- android:label="@string/app_name"
- android:theme="@style/AppTheme" >
- <activity
- android:name=".MainActivity"
- android:label="@string/app_name" >
- <intent-filter>
- <action android:name="android.intent.action.MAIN" />
- <category android:name="android.intent.category.LAUNCHER" />
- </intent-filter>
- </activity>
- <activity
- android:name=".Login"
- android:label="@string/title_activity_login" >
- </activity>
- <activity
- android:name=".Register"
- android:label="@string/title_activity_register" >
- </activity>
- </application>
- </manifest>
- package com.example.user.loginregister;
- import android.content.Intent;
- import android.support.v7.app.ActionBarActivity;
- import android.os.Bundle;
- import android.view.Menu;
- import android.view.MenuItem;
- import android.view.View;
- import android.widget.Button;
- import android.widget.EditText;
- public class MainActivity extends ActionBarActivity implements View.OnClickListener{
- Button bLogout;
- EditText etUsername, etAge, etName;
- UserLocalStore userlocalStore;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- etUsername = (EditText)findViewById(R.id.etUsername);
- etName = (EditText)findViewById(R.id.etName);
- etAge = (EditText)findViewById(R.id.etAge);
- bLogout = (Button)findViewById(R.id.bLogout);
- bLogout.setOnClickListener(this);
- userlocalStore = new UserLocalStore(this);
- }
- @Override
- protected void onStart(){
- super.onStart();
- if(authenticate()==true){
- displayUserDetails();
- }else {
- startActivity(new Intent(MainActivity.this, Login.class));
- }
- }
- private boolean authenticate(){
- return userlocalStore.getUserLoggedIn();
- }
- private void displayUserDetails(){
- User user = userlocalStore.getLoggedInUser();
- etUsername.setText(user.username);
- etName.setText(user.name);
- etAge.setText(user.age + "");
- }
- @Override
- public void onClick(View v) {
- switch(v.getId()){
- case R.id.bLogout:
- userlocalStore.clearUserDate();
- userlocalStore.setUserLoggedIn(false);
- startActivity(new Intent(this, Login.class));
- break;
- }
- }
- }
- package com.example.user.loginregister;
- import android.content.Intent;
- import android.support.v7.app.ActionBarActivity;
- import android.os.Bundle;
- import android.view.Menu;
- import android.view.MenuItem;
- import android.view.View;
- import android.widget.Button;
- import android.widget.EditText;
- import android.widget.Toast;
- public class Register extends ActionBarActivity implements View.OnClickListener{
- Button bRegister;
- EditText etUsername, etPassword, etAge, etName;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_register);
- etUsername = (EditText)findViewById(R.id.etUsername);
- etPassword = (EditText)findViewById(R.id.etPassword);
- etName = (EditText)findViewById(R.id.etName);
- etAge = (EditText)findViewById(R.id.etAge);
- bRegister = (Button)findViewById(R.id.bRegister);
- bRegister.setOnClickListener(this);
- }
- private void registerUser(User user){
- ServerRequests serverRequests = new ServerRequests(this);
- serverRequests.storeUserDataInBackground(user, new GetUserCallBack() {
- @Override
- public void done(User returnedUser) {
- startActivity(new Intent(Register.this, Login.class));
- }
- });
- }
- @Override
- public void onClick(View v) {
- switch(v.getId()){
- case R.id.bRegister:
- String name = etName.getText().toString();
- String username = etUsername.getText().toString();
- String password = etPassword.getText().toString();
- int age = Integer.parseInt(etAge.getText().toString());
- User user = new User(name, age, username, password);
- registerUser(user);
- break;
- }
- }
- }
- package com.example.user.loginregister;
- import android.app.ProgressDialog;
- import android.content.Context;
- import android.os.AsyncTask;
- import android.widget.Toast;
- import org.apache.http.HttpEntity;
- import org.apache.http.HttpResponse;
- import org.apache.http.NameValuePair;
- import org.apache.http.client.HttpClient;
- import org.apache.http.client.entity.UrlEncodedFormEntity;
- import org.apache.http.client.methods.HttpPost;
- import org.apache.http.impl.client.DefaultHttpClient;
- import org.apache.http.message.BasicNameValuePair;
- import org.apache.http.params.BasicHttpParams;
- import org.apache.http.params.HttpConnectionParams;
- import org.apache.http.params.HttpParams;
- import org.apache.http.util.EntityUtils;
- import org.json.JSONObject;
- import java.util.ArrayList;
- /**
- * Created by user on 1/9/2016.
- */
- public class ServerRequests {
- ProgressDialog progressDialog;
- public static final int CONNECTION_TIMEOUT = 1000 * 15;
- public static final String SERVER_ADDRESS = "http://192.168.1.2/";
- public ServerRequests(Context context) {
- progressDialog = new ProgressDialog(context);
- progressDialog.setCancelable(false);
- progressDialog.setTitle("Processing");
- progressDialog.setMessage("Please wait...");
- }
- public void storeUserDataInBackground(User user, GetUserCallBack userCallBack) {
- progressDialog.show();
- new StoreUserDataAsyncTask(user,userCallBack).execute();
- }
- public void fetchUserDataInBackground(User user, GetUserCallBack userCallBack) {
- progressDialog.show();
- new fetchUserDataAsyncTask(user, userCallBack).execute();
- }
- public class StoreUserDataAsyncTask extends AsyncTask<Void, Void, Void> {
- User user;
- GetUserCallBack userCallBack;
- public StoreUserDataAsyncTask(User user, GetUserCallBack userCallBack) {
- this.user = user;
- this.userCallBack = userCallBack;
- }
- @Override
- protected Void doInBackground(Void... params) {
- ArrayList<NameValuePair> dataToSend = new ArrayList<>();
- dataToSend.add(new BasicNameValuePair("name", user.name));
- dataToSend.add(new BasicNameValuePair("username", user.username));
- dataToSend.add(new BasicNameValuePair("password", user.password));
- dataToSend.add(new BasicNameValuePair("age", user.age + ""));
- HttpParams httpRequestParams = new BasicHttpParams();
- HttpConnectionParams.setConnectionTimeout(httpRequestParams, CONNECTION_TIMEOUT);
- HttpConnectionParams.setSoTimeout(httpRequestParams, CONNECTION_TIMEOUT);
- HttpClient client = new DefaultHttpClient(httpRequestParams);
- HttpPost post = new HttpPost(SERVER_ADDRESS + "Register.php");
- try {
- post.setEntity(new UrlEncodedFormEntity(dataToSend));
- client.execute(post);
- } catch (Exception e) {
- e.printStackTrace();
- }
- return null;
- }
- @Override
- protected void onPostExecute(Void aVoid) {
- progressDialog.dismiss();
- userCallBack.done(null);
- super.onPostExecute(aVoid);
- }
- }
- public class fetchUserDataAsyncTask extends AsyncTask<Void, Void, User> {
- User user;
- GetUserCallBack userCallBack;
- //User returnedUser ;
- public fetchUserDataAsyncTask(User user, GetUserCallBack userCallBack) {
- this.user = user;
- this.userCallBack = userCallBack;
- }
- @Override
- protected User doInBackground(Void... params) {
- ArrayList<NameValuePair> dataToSend = new ArrayList<>();
- dataToSend.add(new BasicNameValuePair("username", user.username));
- dataToSend.add(new BasicNameValuePair("password", user.password));
- HttpParams httpRequestParams = new BasicHttpParams();
- HttpConnectionParams.setConnectionTimeout(httpRequestParams, CONNECTION_TIMEOUT);
- HttpConnectionParams.setSoTimeout(httpRequestParams, CONNECTION_TIMEOUT);
- HttpClient client = new DefaultHttpClient(httpRequestParams);
- HttpPost post = new HttpPost(SERVER_ADDRESS + "FetchUserData.php");
- User returnedUser = null;
- try {
- post.setEntity(new UrlEncodedFormEntity(dataToSend));
- HttpResponse httpResponse = client.execute(post);
- HttpEntity entity = httpResponse.getEntity();
- String result = EntityUtils.toString(entity);
- JSONObject jObject = new JSONObject(result);
- if (jObject.length() == 0) {
- returnedUser = null;
- } else {
- String name = jObject.getString("name");
- int age = jObject.getInt("age");
- returnedUser = new User(name, age, user.username, user.password);
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- return returnedUser;
- }
- @Override
- protected void onPostExecute(User returnedUser) {
- progressDialog.dismiss();
- userCallBack.done(returnedUser);
- super.onPostExecute(returnedUser);
- }
- }
- }
- package com.example.user.loginregister;
- /**
- * Created by user on 1/7/2016.
- */
- public class User {
- String name, username, password;
- int age;
- public User(String name, int age, String username, String password){
- this.name = name;
- this.age = age;
- this.username = username;
- this.password = password;
- }
- public User(String username, String password){
- this.username = username;
- this.password = password;
- this.age = -1;
- this.name = "";
- }
- }
- package com.example.user.loginregister;
- import android.content.Context;
- import android.content.SharedPreferences;
- /**
- * Created by user on 1/7/2016.
- */
- public class UserLocalStore {
- public static final String SP_NAME = "userDetails";
- SharedPreferences userLocalDatabase;
- public UserLocalStore(Context context){
- userLocalDatabase = context.getSharedPreferences(SP_NAME,0);
- }
- public void storeUserData(User user){
- SharedPreferences.Editor spEditor = userLocalDatabase.edit();
- spEditor.putString("name", user.name);
- spEditor.putString("username", user.username);
- spEditor.putString("password", user.password);
- spEditor.putInt("age", user.age);
- spEditor.commit();
- }
- public User getLoggedInUser(){
- String name = userLocalDatabase.getString("name", "");
- int age = userLocalDatabase.getInt("age", -1);
- String username = userLocalDatabase.getString("username", "");
- String password = userLocalDatabase.getString("password", "");
- User storedUser = new User(name, age, username, password);
- return storedUser;
- }
- public void setUserLoggedIn(boolean loggedIn){
- SharedPreferences.Editor spEditor = userLocalDatabase.edit();
- spEditor.putBoolean("loggedIn", loggedIn);
- spEditor.commit();
- }
- public boolean getUserLoggedIn(){
- if(userLocalDatabase.getBoolean("loggedIn", false)== true){
- return true;
- }else {
- return false;
- }
- }
- public void clearUserDate(){
- SharedPreferences.Editor spEditor = userLocalDatabase.edit();
- spEditor.clear();
- spEditor.commit();
- }
- }
- package com.example.user.loginregister;
- /**
- * Created by user on 1/9/2016.
- */
- interface GetUserCallBack {
- public abstract void done(User returnedUser);
- }
- <?php
- $con=mysqli_connect("localhost", "my_user", "my_password", "my_db");(security reason)
- if (isset($_POST['name']))
- {
- $name = $_POST['name']; // Instructions if $_POST['value'] exist
- }
- if (isset($_POST['username']))
- {
- $username = $_POST['username']; // Instructions if $_POST['value'] exist
- }
- if (isset($_POST['password']))
- {
- $password = $_POST['password']; // Instructions if $_POST['value'] exist
- }
- if (isset($_POST['age']))
- {
- $age = $_POST['age']; // Instructions if $_POST['value'] exist
- }
- $statement = mysqli_prepare($con, "INSERT INTO User (name, age, username, password) VALUES (?, ?, ?, ?)");
- mysqli_stmt_bind_param($statement, "siss", $name, $age, $username, $password);
- mysqli_stmt_execute($statement);
- mysqli_stmt_close($statement);
- mysqli_close($con);
- ?>
- <?php
- $con=mysqli_connect("localhost", "my_user", "my_password", "my_db"); (security reason)
- if (isset($_POST['password']))
- {
- $password = $_POST['password']; // Instructions if $_POST['value'] exist
- }
- if (isset($_POST['username']))
- {
- $username = $_POST['username']; // Instructions if $_POST['value'] exist
- }
- $statement = mysqli_prepare($con, "SELECT * FROM User WHERE username = ? AND password = ?");
- mysqli_stmt_bind_param($statement, "ss", $username, $password);
- mysqli_stmt_execute($statement);
- mysqli_stmt_store_result($statement);
- mysqli_stmt_bind_result($statement, $userID, $name, $age, $username, $password);
- $user = array();
- while(mysqli_stmt_fetch($statement)){
- $user[name] = $name;
- $user[age] = $age;
- $user[username] = $username;
- $user[password] = $password;
- }
- echo json_encode($user);
- mysqli_stmt_close($statement);
- mysqli_close($con);
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement