Anda di halaman 1dari 11

Insert Data pada MySQL

1. New Project dan pilih Empty Activity


2. Beri Nama Project
3. Buka AndroidManifest.xml dan tambahkan baris berikut tepat diatas
<application>

<uses-permission android:name="android.permission.INTERNET" />


<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

Sehingga Android Manifest menjadi seperti berikut ini:


4. Buka Gradle Scripts -> build.gradle (app) dan tambahkan baris berikut pada
bagian akhir tag android

useLibrary 'org.apache.http.legacy'
packagingOptions {
exclude 'META-INF/DEPENDENCIES'
}

5. Tambahkan baris berikut sebelum tag <dependencies>

repositories {
maven { url = 'https://dl.bintray.com/yuancloud/maven/' }
}

6. Tambahkan baris berikut pada akhir sebelum penutup tag dependencies

implementation 'org.apache.httpcomponents:httpcore:4.4.1'
implementation 'org.apache.httpcomponents:httpclient:4.5'
implementation 'com.android.volley:volley:1.1.0'
7. Sehingga build.gradle (app) menjadi seperti berikut:

8. Pastikan Komputer atau Laptop anda terhubung dengan Internet, dan Klik
build
9. Setelah proses build selesai, buka activity_main.xml, lalu sesuaikan dengan
baris berikut:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="20dp">

<EditText
android:id="@+id/editNIM"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="number"
android:hint="NIM"/>

<EditText
android:id="@+id/editNama"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="text"
android:hint="Nama" />

<EditText
android:id="@+id/editAlamat"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="text"
android:hint="Alamat"/>

<Button
android:id="@+id/button"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Submit"
android:background="#f7bb1a"/>
</LinearLayout>
</LinearLayout>
10.Maka tampilan aplikasi menjadi seperti dibawah ini:
11.Buka MainActivity.java dan tambahkan fungsi berikut setelah tag penutup
onCreate

public class onButtonClick extends AsyncTask<Object, Object, Integer> {

private ProgressDialog progressDialog = new ProgressDialog(MainActivity.this);

private Context context;

@Override
protected void onPreExecute() {
super.onPreExecute();
progressDialog = new ProgressDialog(MainActivity.this);
progressDialog.setIndeterminate(true);
progressDialog.setMessage("Please Wait");
progressDialog.setCancelable(false);
progressDialog.show();
}

@Override
protected Integer doInBackground(Object... objects) {
byte[] result = null;
String str = "";

HttpClient httpClient = new DefaultHttpClient();


HttpPost httpPost = new HttpPost(url);

Log.e("URL: ", url);


try {
HttpResponse response = httpClient.execute(httpPost);
} catch (ClientProtocolException e) {
e.printStackTrace();
Toast.makeText(MainActivity.this, "Client Protocol"+e.getCause().toString(), Toast.LENGTH_LONG).show();
} catch (IOException e) {
e.printStackTrace();
}
return 1;
}

@Override
protected void onPostExecute(Integer integer) {
super.onPostExecute(integer);

if (progressDialog != null && progressDialog.isShowing()) {


progressDialog.dismiss();
}
}
}

Fungsi tersebut digunakan untuk mengirim data, guna dimasukkan dalam database.
12.Deklarasikan variable berikut sebelum fungsi onCreate

Button button;
EditText editTextNIM, editTextNama, editTextAlamat;
String serverAddress = "http://rahmadrifai333.000webhostapp.com/insert.php?";
String temp, url;
String nim, nama, alamat;

13.Dalam fungsi onCreate, tambahkan baris berikut setelah setContentView

editTextNIM = findViewById(R.id.editNIM);
editTextNama = findViewById(R.id.editNama);
editTextAlamat = findViewById(R.id.editAlamat);
button = findViewById(R.id.button);

button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
nim=editTextNIM.getText().toString();
nama=editTextNama.getText().toString();
alamat=editTextAlamat.getText().toString();

temp=serverAddress+"nim="+nim+"&nama="+nama+"&alamat="+alamat;
url = temp.replaceAll(" ", "%20");
new onButtonClick().execute();

}
});
14.MainActivity.java akan menjadi seperti berikut:
package com.rahmad.insertdatabase;

import androidx.appcompat.app.AppCompatActivity;

import android.app.ProgressDialog;
import android.content.Context;
import android.os.AsyncTask;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;

import java.io.IOException;

public class MainActivity extends AppCompatActivity {


Button button;
EditText editTextNIM, editTextNama, editTextAlamat;
String serverAddress = "http://rahmadrifai333.000webhostapp.com/insert.php?";
String temp, url;
String nim, nama, alamat;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editTextNIM = findViewById(R.id.editNIM);
editTextNama = findViewById(R.id.editNama);
editTextAlamat = findViewById(R.id.editAlamat);
button = findViewById(R.id.button);

button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
nim=editTextNIM.getText().toString();
nama=editTextNama.getText().toString();
alamat=editTextAlamat.getText().toString();

temp=serverAddress+"nim="+nim+"&nama="+nama+"&alamat="+alamat;
url = temp.replaceAll(" ", "%20");
new onButtonClick().execute();

}
});

public class onButtonClick extends AsyncTask<Object, Object, Integer> {

private ProgressDialog progressDialog = new


ProgressDialog(MainActivity.this);

private Context context;


@Override
protected void onPreExecute() {
super.onPreExecute();
progressDialog = new ProgressDialog(MainActivity.this);
progressDialog.setIndeterminate(true);
progressDialog.setMessage("Please Wait");
progressDialog.setCancelable(false);
progressDialog.show();
}

@Override
protected Integer doInBackground(Object... objects) {
byte[] result = null;
String str = "";

HttpClient httpClient = new DefaultHttpClient();


HttpPost httpPost = new HttpPost(url);

Log.e("URL: ", url);


try {
HttpResponse response = httpClient.execute(httpPost);
} catch (ClientProtocolException e) {
e.printStackTrace();
Toast.makeText(MainActivity.this, "Client
Protocol"+e.getCause().toString(), Toast.LENGTH_LONG).show();
} catch (IOException e) {
e.printStackTrace();
}
return 1;
}

@Override
protected void onPostExecute(Integer integer) {
super.onPostExecute(integer);

if (progressDialog != null && progressDialog.isShowing()) {


progressDialog.dismiss();
}
}
}

15. Jalankan Program, dan lakukan proses insert data. Pastikan data yang
dimasukkan muncul di https://rahmadrifai333.000webhostapp.com/

Anda mungkin juga menyukai