Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- define('DB_NAME','android' );
- define('DB_USER','root');
- define('DB_PASSWORD','' );
- define('DB_HOST','localhost' );
- ?>
- <?php
- class Dbconnect{
- private $con;
- function __construct(){
- }
- function connect(){
- include_once dirname(__FILE__).'/constant.php';
- $this->con = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
- if(mysqli_connect_errno()){
- echo "Failed to connect with database".mysqli_connect_err();
- }
- return $this->con;
- }
- }
- <?php
- class DbOperations{
- private $con;
- function __construct(){
- require_once dirname(__FILE__).'/Dbconnect.php';
- $db = new Dbconnect();
- $this->con = $db->connect();
- }
- /*CRUD -> C -> CREATE */
- public function createUser($username, $pass, $email){
- if($this->isUserExist($username,$email)){
- return 0;
- }else{
- $password = md5($pass);
- $stmt = $this->con->prepare("INSERT INTO `users` (`id`, `username`, `password`, `email`) VALUES (NULL, ?, ?, ?);");
- $stmt->bind_param("sss",$username,$password,$email);
- if($stmt->execute()){
- return 1;
- }else{
- return 2;
- }
- }
- }
- public function userLogin($username, $pass){
- $password = md5($pass);
- $stmt = $this->con->prepare("SELECT id FROM users WHERE username = ?
- AND password = ?");
- $stmt->bind_param("ss",$username,$password);
- $stmt->execute();
- $stmt->store_result();
- return $stmt->num_rows > 0;
- }
- public function getUserByUsername($username){
- $stmt = $this->con->prepare("SELECT * FROM users WHERE username = ?");
- $stmt->bind_param("s",$username);
- $stmt->execute();
- return $stmt->get_result()->fetch_assoc();
- }
- private function isUserExist($username, $email){
- $stmt = $this->con->prepare("SELECT id FROM users WHERE username = ? OR email = ?");
- $stmt->bind_param("ss", $username, $email);
- $stmt->execute();
- $stmt->store_result();
- return $stmt->num_rows > 0;
- }
- }
- ?>
- <?php
- require_once '../includes/DbOperations.php';
- $response = array();
- if($_SERVER['REQUEST_METHOD']=='POST'){
- if(
- isset($_POST['username']) and
- isset($_POST['email']) and
- isset($_POST['password']))
- {
- //operate the data further
- $db = new DbOperations();
- $result = $db->createUser( $_POST['username'],
- $_POST['password'],
- $_POST['email']
- );
- if($result == 1){
- $response['error'] = false;
- $response['message'] = "User registered successfully";
- }elseif($result == 2){
- $response['error'] = true;
- $response['message'] = "Some error occurred please try again";
- }elseif($result == 0){
- $response['error'] = true;
- $response['message'] = "It seems you are already registered, please choose a different email and username";
- }
- }else{
- $response['error'] = true;
- $response['message'] = "Required fields are missing";
- }
- }else{
- $response['error'] = true;
- $response['message'] = "Invalid Request";
- }
- echo json_encode($response);
- <?php
- require_once '../includes/DbOperations.php';
- $response = array();
- if($_SERVER['REQUEST_METHOD']=='POST'){
- if(isset($_POST['username']) and isset($_POST['password'])){
- $db = new DbOperations();
- if($db->userLogin($_POST['username'], $_POST['password'])){
- $user = $db->getUserByUsername($_POST['username']);
- $response['error'] = false;
- $response['id'] = $user['id'];
- $response['email'] = $user['email'];
- $response['username'] = $user['username'];
- }else{
- $response['error'] = true;
- $response['message'] = "Invalid username or password";
- }
- }else{
- $response['error'] = true;
- $response['message'] = "Required fields are missing";
- }
- }
- echo json_encode($response);
- package com.example.ahmad.volli;
- import android.app.ProgressDialog;
- import android.content.Intent;
- 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.TextView;
- import android.widget.Toast;
- import com.android.volley.AuthFailureError;
- import com.android.volley.Request;
- import com.android.volley.RequestQueue;
- import com.android.volley.Response;
- import com.android.volley.VolleyError;
- import com.android.volley.toolbox.StringRequest;
- import com.android.volley.toolbox.Volley;
- import org.json.JSONException;
- import org.json.JSONObject;
- import java.util.HashMap;
- import java.util.Map;
- import static android.R.id.progress;
- import static com.example.ahmad.volli.R.id.textViewLogin;
- public class MainActivity extends AppCompatActivity implements View.OnClickListener {
- private EditText editTextUsername, editTextEmail, editTextPassword;
- private Button buttonRegister;
- private ProgressDialog progressDialog;
- private TextView textViewLogin;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- if(SharedPrefManager.getInstance(this).isLoggedIn()){
- finish();
- startActivity(new Intent(this, ProfileActivity.class));
- return;
- }
- editTextEmail = (EditText) findViewById(R.id.editTextEmail);
- editTextUsername = (EditText) findViewById(R.id.editTextUsername);
- editTextPassword = (EditText) findViewById(R.id.editTextPassword);
- textViewLogin = (TextView) findViewById(R.id.textViewLogin);
- buttonRegister = (Button) findViewById(R.id.buttonRegister);
- progressDialog = new ProgressDialog(this);
- textViewLogin.setOnClickListener(this);
- buttonRegister.setOnClickListener(this);
- }
- private void registerUser(){
- final String email = editTextEmail.getText().toString().trim() ;
- final String username = editTextUsername.getText().toString().trim();
- final String password = editTextPassword.getText().toString().trim();
- progressDialog.setMessage("Plz Wait");
- progressDialog.show();
- StringRequest stringRequest = new StringRequest(Request.Method.POST, Constants.URL_REGISTER,
- new Response.Listener<String>() {
- @Override
- public void onResponse(String response) {
- progressDialog.dismiss();
- try {
- JSONObject jsonObject = new JSONObject(response);
- Toast.makeText(getApplicationContext(),jsonObject.getString("message"),Toast.LENGTH_SHORT).show();
- } catch (JSONException e) {
- e.printStackTrace();
- }
- }
- },
- new Response.ErrorListener() {
- @Override
- public void onErrorResponse(VolleyError error) {
- progressDialog.hide();
- Toast.makeText(getApplicationContext(),error.getMessage(),Toast.LENGTH_LONG).show();
- }
- })
- {
- @Override
- protected Map<String, String> getParams() throws AuthFailureError {
- Map<String,String> params = new HashMap<>();
- params.put("username" ,username);
- params.put("email" ,email);
- params.put("password" ,password);
- return params;
- }
- };
- RequestHandler.getInstance(this).addToRequestQueue(stringRequest);
- }
- @Override
- public void onClick(View view) {
- if (view == buttonRegister)
- registerUser();
- if (view == textViewLogin)
- {
- startActivity(new Intent(this,LoginActivity.class));
- }
- }
- }
- /**
- * Created by ahMad on 4/22/2018.
- */
- public class Constants {
- public static final String ROOT_URL = "http://172.21.34.7/Android/v1/";
- public static final String URL_REGISTER = ROOT_URL+"registerUser.php";
- public static final String URL_LOGIN = ROOT_URL+"userLogin.php";
- package com.example.ahmad.volli;
- import android.app.ProgressDialog;
- import android.content.Intent;
- 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 com.android.volley.AuthFailureError;
- import com.android.volley.Request;
- import com.android.volley.Response;
- import com.android.volley.VolleyError;
- import com.android.volley.toolbox.StringRequest;
- import org.json.JSONException;
- import org.json.JSONObject;
- import java.util.HashMap;
- import java.util.Map;
- public class LoginActivity extends AppCompatActivity implements View.OnClickListener {
- private EditText editTextUsername, editTextPassword;
- private Button buttonLogin;
- private ProgressDialog progressDialog;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_login);
- if(SharedPrefManager.getInstance(this).isLoggedIn()){
- finish();
- startActivity(new Intent(this, ProfileActivity.class));
- return;
- }
- editTextUsername = (EditText) findViewById(R.id.editTextUsername);
- editTextPassword = (EditText) findViewById(R.id.editTextPassword);
- buttonLogin = (Button) findViewById(R.id.buttonLogin);
- progressDialog = new ProgressDialog(this);
- progressDialog.setMessage("Please wait...");
- buttonLogin.setOnClickListener(this);
- }
- private void userLogin() {
- final String username = editTextUsername.getText().toString().trim();
- final String password = editTextPassword.getText().toString().trim();
- progressDialog.show();
- StringRequest stringRequest = new StringRequest(
- Request.Method.POST,
- Constants.URL_LOGIN,
- new Response.Listener<String>() {
- @Override
- public void onResponse(String response) {
- progressDialog.dismiss();
- try {
- JSONObject obj = new JSONObject(response);
- if(!obj.getBoolean("error")){
- SharedPrefManager.getInstance(getApplicationContext())
- .userLogin(
- obj.getInt("id"),
- obj.getString("username"),
- obj.getString("email")
- );
- startActivity(new Intent(getApplicationContext(), ProfileActivity.class));
- finish();
- }else{
- Toast.makeText(
- getApplicationContext(),
- obj.getString("message"),
- Toast.LENGTH_LONG
- ).show();
- }
- } catch (JSONException e) {
- e.printStackTrace();
- }
- }
- },
- new Response.ErrorListener() {
- @Override
- public void onErrorResponse(VolleyError error) {
- progressDialog.dismiss();
- Toast.makeText(
- getApplicationContext(),
- error.getMessage(),
- Toast.LENGTH_LONG
- ).show();
- }
- }
- ){
- @Override
- protected Map<String, String> getParams() throws AuthFailureError {
- Map<String, String> params = new HashMap<>();
- params.put("username", username);
- params.put("password", password);
- return params;
- }
- };
- RequestHandler.getInstance(this).addToRequestQueue(stringRequest);
- }
- @Override
- public void onClick(View view) {
- if(view == buttonLogin){
- userLogin();
- }
- }
- }
- package com.example.ahmad.volli;
- import android.content.Context;
- import android.content.SharedPreferences;
- /**
- * Created by Belal on 26/11/16.
- */
- public class SharedPrefManager {
- private static SharedPrefManager mInstance;
- private static Context mCtx;
- private static final String SHARED_PREF_NAME = "mysharedpref12";
- private static final String KEY_USERNAME = "username";
- private static final String KEY_USER_EMAIL = "useremail";
- private static final String KEY_USER_ID = "userid";
- private SharedPrefManager(Context context) {
- mCtx = context;
- }
- public static synchronized SharedPrefManager getInstance(Context context) {
- if (mInstance == null) {
- mInstance = new SharedPrefManager(context);
- }
- return mInstance;
- }
- public boolean userLogin(int id, String username, String email){
- SharedPreferences sharedPreferences = mCtx.getSharedPreferences(SHARED_PREF_NAME, Context.MODE_PRIVATE);
- SharedPreferences.Editor editor = sharedPreferences.edit();
- editor.putInt(KEY_USER_ID, id);
- editor.putString(KEY_USER_EMAIL, email);
- editor.putString(KEY_USERNAME, username);
- editor.apply();
- return true;
- }
- public boolean isLoggedIn(){
- SharedPreferences sharedPreferences = mCtx.getSharedPreferences(SHARED_PREF_NAME, Context.MODE_PRIVATE);
- if(sharedPreferences.getString(KEY_USERNAME, null) != null){
- return true;
- }
- return false;
- }
- public boolean logout(){
- SharedPreferences sharedPreferences = mCtx.getSharedPreferences(SHARED_PREF_NAME, Context.MODE_PRIVATE);
- SharedPreferences.Editor editor = sharedPreferences.edit();
- editor.clear();
- editor.apply();
- return true;
- }
- }
Add Comment
Please, Sign In to add comment