Advertisement
Guest User

Untitled

a guest
Sep 6th, 2017
30
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // main class which draws the app + ties the actions on the front end XML files such as onClick for buttons //and calls the associated method, in this case onLogin which then creates a background worker object thingy.
  2.  
  3. package hfents.hopefullyworks;
  4.  
  5. import android.os.Bundle;
  6. import android.os.StrictMode;
  7. import android.support.v7.app.AppCompatActivity;
  8. import android.view.View;
  9. import android.widget.EditText;
  10.  
  11. public class MainActivity extends AppCompatActivity {
  12.  
  13.     EditText UserNameEt, PasswordEt;
  14.  
  15.     StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
  16.  
  17.  
  18.  
  19.  
  20.     @Override
  21.     protected void onCreate(Bundle savedInstanceState) {
  22.         super.onCreate(savedInstanceState);
  23.  
  24.  
  25.         StrictMode.setThreadPolicy(policy);
  26.  
  27.  
  28.         setContentView(R.layout.activity_main);
  29.         //connecting to xml buttons.
  30.         UserNameEt = (EditText) findViewById(R.id.etLogin);
  31.         PasswordEt = (EditText) findViewById(R.id.etPassword);
  32.     }
  33.  
  34.     public void OnLogin(View view){
  35.         String userName = UserNameEt.getText().toString();
  36.         String password = PasswordEt.getText().toString();
  37.         String type = "login";
  38.  
  39.         BackgroundWorker backgroundWorker = new BackgroundWorker(this);
  40.         backgroundWorker.doInBackground(type, userName, password);
  41.  
  42.  
  43.     }
  44. }
  45.  
  46.  
  47. // background worker class which is responsible for starting all the Http streams and stuff like that, passing the arguments through e.g. arg[0] is login, which the logic then calls a php script I've named login.php or something. then passes everything else accordingly.
  48.  
  49. package hfents.hopefullyworks;
  50.  
  51. import android.app.AlertDialog;
  52. import android.content.Context;
  53. import android.os.AsyncTask;
  54. import android.util.Log;
  55.  
  56. import java.io.BufferedReader;
  57. import java.io.BufferedWriter;
  58. import java.io.IOException;
  59. import java.io.InputStream;
  60. import java.io.InputStreamReader;
  61. import java.io.OutputStream;
  62. import java.io.OutputStreamWriter;
  63. import java.net.HttpURLConnection;
  64. import java.net.MalformedURLException;
  65. import java.net.URL;
  66. import java.net.URLEncoder;
  67.  
  68. /**
  69.  * Created by jonathanbain on 01/09/2017.
  70.  */
  71.  
  72. public class BackgroundWorker extends AsyncTask<String,Void,String>{
  73.  
  74.     Context context;
  75.     AlertDialog alertDialog;
  76.     BackgroundWorker(Context ctx){
  77.         context = ctx;
  78.     }
  79.  
  80.     @Override
  81.     protected String doInBackground(String... params) {
  82.         String type = params[0]; //first arg (login)
  83.         String user_name = params[1];
  84.         String user_password = params[2];
  85.         String login_url = "http://root@138.68.168.141/login.php";
  86.         if(type.equals("login")){
  87.             //code for logging in
  88.  
  89.             try {
  90.                 URL url = new URL(login_url);
  91.  
  92.                     HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
  93.  
  94.  
  95.  
  96.                 httpURLConnection.setRequestMethod("POST");
  97.                 httpURLConnection.setDoOutput(true);
  98.                 httpURLConnection.setDoInput(true);
  99.                 OutputStream outputStream = httpURLConnection.getOutputStream();
  100.                 BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(outputStream,"UTF-8"));
  101.                 String post_data = URLEncoder.encode("user_name","UTF-8")+"="+URLEncoder.encode(user_name,"UTF-8")+"&"
  102.                     +URLEncoder.encode("user_password","UTF-8")+"="+URLEncoder.encode(user_password,"UTF-8");
  103.                  //   Log.d("U", user_name);
  104.                  //   Log.d("P", user_password);
  105.                 bufferedWriter.write(post_data);
  106.  
  107.                 bufferedWriter.flush();
  108.                 bufferedWriter.close();
  109.                 outputStream.close();
  110.  
  111.                 InputStream inputStream = httpURLConnection.getInputStream();
  112.  
  113.                 BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream,"iso-8859-1"));
  114.                 String result="";
  115.                 String line;
  116.                 while((line = bufferedReader.readLine())!=null){
  117.                     result+=line;
  118.                 }
  119.  
  120.                 bufferedReader.close();
  121.                 inputStream.close();
  122.                 httpURLConnection.disconnect();
  123.                 Log.d("Username=", user_name);
  124.                 Log.d("Password=", user_password);
  125.                 Log.d("RESULT", result);
  126.                 return result;
  127.             } catch (MalformedURLException e){
  128.                         Log.d( "Malformed URL EXCEPTION",": Background Worker Login");
  129.  
  130.             }
  131.             catch (IOException e) {
  132.  
  133.                 Log.d("IO Exception:", Log.getStackTraceString(e));
  134.             }
  135.  
  136.         }
  137.         return "";
  138.     }
  139.  
  140.     @Override
  141.     protected void onPreExecute(){
  142.         alertDialog = new AlertDialog.Builder(context).create();
  143.         alertDialog.setTitle("Login Status");
  144.  
  145.     }
  146.     @Override
  147.     protected void onPostExecute(String result){
  148.         alertDialog.setMessage(result);
  149.         alertDialog.show();
  150.     }
  151.  
  152.    
  153. }
  154.  
  155.  
  156. // this is the login php file (ignore the config and connection ones as they work i think...
  157.  
  158. <?php
  159. require "conn.php";
  160. $user_name = $_POST["user_name"];
  161. $user_pass = $_POST["user_password"];
  162. echo $_POST["user_name"];
  163. echo $_POST["user_password"];
  164. echo $user_name;
  165. echo $user_pass;
  166.  
  167. $mysql_qry = "SELECT * FROM users WHERE email LIKE '$user_name' AND password LIKE '$user_pass';";
  168. $result = mysqli_query($conn ,$mysql_qry);
  169. if(mysqli_num_rows($result)>0){
  170. echo "login success, welcome user" ;
  171. }
  172. else{
  173. echo "loooooogin not success";
  174. }
  175. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement