Subscribe For Free Updates!

We'll not spam mate! We promise.

Selasa, 25 Agustus 2015

Membuat aplikasi Login dengan MySQL

Untuk menjaga keamanan data dalam aplikasi yang akan kita buat, sebaiknya kita buat pengaman data salah satunya membuat Login, sehingga user yang ingin mengakses data dalam aplikasi harus login terlebih dahulu. Nah, kali ini saya akan berbagi mengenai bagaimana cara membuat Login pada aplikasi mobile yang menggunakan database MySQL sebagai tempat penyimpanan datanya. Oke langsung saja pada tahapan-tahapan pembuatan.

Database : campuss_resto || Table : users

Buatlah File PHP untuk menghubungkan project android dengan database mysql, kemudian simpan di C:\xampp\htdocs\campuss_resto, didalam folder campuss_resto dan beri nama check.php dan simpan.php (untuk tambah data)

check.php
<?php
    $user=$_GET['user'];
    $pass=$_GET['pass'];
    $conn = mysql_connect("localhost","root","");
    mysql_select_db("campuss_resto");

    $query = "SELECT * FROM users WHERE nama = '$user' AND sandi='$pass'";
    $result = mysql_query($query) or die("Unable to verify user because : " . mysql_error());
      if (mysql_num_rows($result) == 1){
          echo 1;
      }
   else {
         echo 0;
      }
?> 
simpan.php
<?php
    $nama=$_POST['nama'];
    $sandi=$_POST['sandi'];
    $email=$_POST['email'];

    $conn = mysql_connect("localhost","root","");
    mysql_select_db("campuss_resto");
$query = "INSERT INTO users (nama,sandi,email) values ('$nama','$sandi','$email')";
$result = mysql_query($query) or die("REPORTGagal Query Simpan KRS.");

   if (mysql_num_rows($result) == 1){ 
          echo 0;
      }
   else {
         echo 1;
      }
?>

Buat Project Android dengan

Buatlah layout seperti berikut :

main.xml

daftar.xml

hal2.xml

Tulislah kode di masing-masing class java, sebagai berikut :

AplikasikuActivity.java
package arumjiyu.net;

import java.util.ArrayList;

import org.apache.http.NameValuePair;
import org.apache.http.message.BasicNameValuePair;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class AplikasikuActivity extends Activity {
       /** Called when the activity is first created. */
       EditText us, ps;
       Button login;
       String i;
       TextView pesan;

       @Override
       public void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.main);
              us = (EditText) findViewById(R.id.edPass);
              ps = (EditText) findViewById(R.id.edUser);
              pesan = (TextView) findViewById(R.id.textView1);
              login = (Button) findViewById(R.id.btnLogin);
              login.setOnClickListener(new OnClickListener() {

                     @Override
                     public void onClick(View v) {
                           // TODO Auto-generated method stub
ArrayList<NameValuePair> postParameters = new ArrayList<NameValuePair>();

       postParameters.add(new BasicNameValuePair("user", us.getText()
                                         .toString()));

       postParameters.add(new BasicNameValuePair("pass", ps.getText()
                                         .toString()));
                           /* String valid = "1"; */
                           String response = null;
                           try {

response =  
CustomHttpClient.executeHttpPost("http://10.0.3.2/campuss_resto/check.php", postParameters);

                                  String res = response.toString();
                                  res = res.trim();
                                  res = res.replaceAll("\\s+", "");
                                  pesan.setText(res);
                                  if (res.equals("1")) {
                                  pesan.setText("Correct Username or Password");
                                         berhasil(v);

                                  } else {
                     pesan.setText("Sorry!! Wrong Username or Password Entered");
                                  }
                           }
                           catch (Exception e) {
                                  us.setText(e.toString());
                           }
                     }
              });
       }

       public void tambah_user(View v) {
              Intent daftar = new Intent(this, daftarAct.class);
              startActivity(daftar);
       }

       public void berhasil(View theButton) {
              Intent s = new Intent(this, hal2Act.class);
              s.putExtra("nama", us.getText().toString());
              startActivity(s);
       }

}
daftarAct.java
package arumjiyu.net;

import java.util.ArrayList;

import org.apache.http.NameValuePair;
import org.apache.http.message.BasicNameValuePair;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

public class daftarAct extends Activity {
       EditText un, pw, email;
       Button simpan, batal;
       TextView pesan;

       @Override
       public void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.daftar);
              un = (EditText) findViewById(R.id.User);
              pw = (EditText) findViewById(R.id.Password);
              email = (EditText) findViewById(R.id.Email);
              pesan = (TextView)findViewById(R.id.textpesan);
              simpan = (Button) findViewById(R.id.btnSave);
              batal = (Button) findViewById(R.id.btnBatal);

              simpan.setOnClickListener(new View.OnClickListener() {

                     @Override    
                     public void onClick(View v) {

                           // TODO Auto-generated method stub
                           ArrayList<NameValuePair> postParameters = new ArrayList<NameValuePair>();
                           postParameters.add(new BasicNameValuePair("nama", un.getText()
                                         .toString()));
                           postParameters.add(new BasicNameValuePair("sandi", pw.getText()
                                         .toString()));
                           postParameters.add(new BasicNameValuePair("email", email
                                         .getText().toString()));
                           /* String valid = "1"; */

                           String response = null;

                           try {
                                  response = CustomHttpClient.executeHttpPost(
                                                "http://10.0.2.2/campuss_resto/simpan.php",
                                                postParameters);

                                  String res = response.toString();

                                  res = res.trim();

                                  res = res.replaceAll("\\s+", "");
                                  pesan.setText(res);
                                  if (res.equals("1")){
                                         Toast.makeText(getApplication(), "Data Tersimpan",
                                                       Toast.LENGTH_LONG).show();

                                  }else{
                                         Toast.makeText(getApplication(), "Data gagal disimpan",
                                                       Toast.LENGTH_LONG).show();
                                  }
                           } 

                           catch (Exception e) {

                                  un.setText(e.toString());

                           }
    
                     }

              });
              batal.setOnClickListener(new OnClickListener() {
                    
                     @Override
                     public void onClick(View v) {
                           // TODO Auto-generated method stub
                           Intent a = new Intent(daftarAct.this,
AplikasikuActivity.class);
                           startActivity(a);
                           finish();
                     }
              });
       }
} 
hal2Act.java
package arumjiyu.net;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;

public class hal2Act extends Activity {
       TextView tNama;

       @Override
       public void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.hal2);
              tNama = (TextView) findViewById(R.id.txtNama);

              Intent in = getIntent();
              String nm = in.getStringExtra("nama");
              tNama.setText(nm);
       }

       public void SignOut(View v) {
              finish();
              Intent i = new Intent(this, AplikasikuActivity.class);
              startActivity(i);
       }

}

Buatlah Class Object dan berinama CustomHttpClient.java , dengan kode sebagai berikut :

package arumjiyu.net;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.URI;
import java.util.ArrayList;

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.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.conn.params.ConnManagerParams;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpParams;

public class CustomHttpClient {
                /** The time it takes for our client to timeout */
                public static final int HTTP_TIMEOUT = 30 * 1000; // milliseconds

                /** Single instance of our HttpClient */
                private static HttpClient mHttpClient;

                /**
                 * Get our single instance of our HttpClient object.
                 *
                 * @return an HttpClient object with connection parameters set
                 */
                private static HttpClient getHttpClient() {
                                if (mHttpClient == null) {
                                                mHttpClient = new DefaultHttpClient();
                                                final HttpParams params = mHttpClient.getParams();
                                                HttpConnectionParams.setConnectionTimeout(params, HTTP_TIMEOUT);
                                                HttpConnectionParams.setSoTimeout(params, HTTP_TIMEOUT);
                                                ConnManagerParams.setTimeout(params, HTTP_TIMEOUT);
                                }
                                return mHttpClient;
                }

                /**
                 * Performs an HTTP Post request to the specified url with the specified
                 * parameters.
                 *
                 * @param url
                 *            The web address to post the request to
                 * @param postParameters
                 *            The parameters to send via the request
                 * @return The result of the request
                 * @throws Exception
                 */
                public static String executeHttpPost(String url,
                                                ArrayList<NameValuePair> postParameters) throws Exception {
                                BufferedReader in = null;
                                try {
                                                HttpClient client = getHttpClient();
                                                HttpPost request = new HttpPost(url);
                                                UrlEncodedFormEntity formEntity = new UrlEncodedFormEntity(
                                                                                postParameters);
                                                request.setEntity(formEntity);
                                                HttpResponse response = client.execute(request);
                                                in = new BufferedReader(new InputStreamReader(response.getEntity()
                                                                                .getContent()));

                                                StringBuffer sb = new StringBuffer("");
                                                String line = "";
                                                String NL = System.getProperty("line.separator");
                                                while ((line = in.readLine()) != null) {
                                                                sb.append(line + NL);
                                                }
                                                in.close();

                                                String result = sb.toString();
                                                return result;
                                } finally {
                                                if (in != null) {
                                                                try {
                                                                                in.close();
                                                                } catch (IOException e) {
                                                                                e.printStackTrace();
                                                                }
                                                }
                                }
                }

                /**
                 * Performs an HTTP GET request to the specified url.
                 *
                 * @param url
                 *            The web address to post the request to
                 * @return The result of the request
                 * @throws Exception
                 */
                public static String executeHttpGet(String url) throws Exception {
                                BufferedReader in = null;
                                try {
                                                HttpClient client = getHttpClient();
                                                HttpGet request = new HttpGet();
                                                request.setURI(new URI(url));
                                                HttpResponse response = client.execute(request);
                                                in = new BufferedReader(new InputStreamReader(response.getEntity()
                                                                                .getContent()));

                                                StringBuffer sb = new StringBuffer("");
                                                String line = "";
                                                String NL = System.getProperty("line.separator");
                                                while ((line = in.readLine()) != null) {
                                                                sb.append(line + NL);
                                                }
                                                in.close();

                                                String result = sb.toString();
                                                return result;
                                } finally {
                                                if (in != null) {
                                                                try {
                                                                                in.close();
                                                                } catch (IOException e) {
                                                                                e.printStackTrace();
                                                                }
                                                }
                                }
                }
}

Jangan lupa mendaftarkan Class Activity yang baru saja dibuat di AndroidManifest.xml:


Jalankan Programnya :







Sekian dari saya semoga bermanfaat J
(Untuk download Tutorial dan Program silahkan klik menu DOWNLOAD)

Socializer Widget By Blogger Yard
SOCIALIZE IT →
FOLLOW US →
SHARE IT →

3 komentar:

  1. TERIMA KASIH ILMUNYA ! SAYA COBA DULU.

    BalasHapus
  2. Terdapat error : android.os.NetworkOnMainThreadException
    begitu diklik Button Sign IN.
    Bagaiamana Solusinya ?

    BalasHapus
    Balasan
    1. sebelumnya terimakasih atas kunjungannya, maaf baru di baca, karena saya sibuk dengan urusan di dunia nyata,

      user permission untuk internet sudah di tambahkan ???

      Hapus