Edit dan Hapus Data (JSONObject) Part 3
- Get link
- X
- Other Apps
Halo Sobat, Pada hari ini saya akan memberikan tutorial part 3 yaitu edit dan hapus data menggunakan JSONObject, berikut langkah-langkahnya.
Menambahkan API
Buat file php dengan nama edit_siswa.php dan hapus_siswa.php masukan code php
- edit_siswa.php
<?php
if($_SERVER['REQUEST_METHOD']=='POST'){
$nis = $_POST['nis'];
$nama = $_POST['nama'];
require_once('koneksi.php');
$sql = "UPDATE siswa SET nama = '$nama WHERE nis = $nis;";
$res = array();
if(mysqli_query($status,$sql)){
array_push($res, array("pesan"=>"Berhasil diubah"));
}else{
array_push($res, array("pesan"=>"Gagal diubah"));
}
echo json_encode($res);
mysqli_close($status);
|
- hapus_siswa.php
<?php
$nis = $_GET['nis'];
require_once('koneksi.php');
$sql = "DELETE FROM siswa WHERE nis=$nis;";
$res = array();
if(mysqli_query($status,$sql)){
array_push($res, array("pesan"=>"Berhasil dihapus"));
}else{
array_push($res, array("pesan"=>"Gagal dihapus"));
}
echo json_encode($res);
mysqli_close($status);
|
Design Layout Android Studio
Struktur design layout
Masukan code xml dibagian activity_edit_hapus.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".Edit_Hapus"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="NIS" /> <EditText android:id="@+id/etNis" android:layout_width="match_parent" android:layout_height="wrap_content" android:enabled="false" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Nama" /> <EditText android:id="@+id/etNama" android:layout_width="match_parent" android:layout_height="wrap_content" /> <Button android:id="@+id/btnEdit" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Edit" /> <Button android:id="@+id/btnHapus" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Hapus" /> </LinearLayout> |
Package Class Android Studio
Struktur package class
package com.codetr.tanwir.codetr; import android.app.ProgressDialog; import android.content.DialogInterface; import android.content.Intent; import android.os.AsyncTask; import android.support.v7.app.AlertDialog; 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 org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; import java.util.HashMap; public class Edit_Hapus extends AppCompatActivity implements View.OnClickListener { private EditText etNis; private EditText etNama; private Button btnEdit; private Button btnHapus; private String nis; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_edit_hapus); Intent intent = getIntent(); nis = intent.getStringExtra(Config.SISWA_NIS); etNis = (EditText) findViewById(R.id.etNis); etNama = (EditText) findViewById(R.id.etNama); btnEdit = (Button) findViewById(R.id.btnEdit); btnHapus = (Button) findViewById(R.id.btnHapus); btnEdit.setOnClickListener(this); btnHapus.setOnClickListener(this); etNis.setText(nis); getSiswa(); } private void getSiswa() { class GetSiswa extends AsyncTask<Void, Void, String> { ProgressDialog loading; @Override protected void onPreExecute() { super.onPreExecute(); loading = ProgressDialog.show(Edit_Hapus.this, "Proses...", "Tunggu bentar...", false, false); } @Override protected void onPostExecute(String s) { super.onPostExecute(s); loading.dismiss(); showSiswa(s); } @Override protected String doInBackground(Void... params) { RequestHandler rh = new RequestHandler(); String s = rh.sendGetRequestParam(Config.URL_SISWA, nis); return s; } } GetSiswa ge = new GetSiswa(); ge.execute(); } private void showSiswa(String json) { try { JSONObject jsonObject = new JSONObject(json); JSONArray result = jsonObject.getJSONArray(Config.TAG_JSON_ARRAY); JSONObject c = result.getJSONObject(0); String name = c.getString(Config.TAG_NAMA); etNama.setText(name); } catch (JSONException e) { e.printStackTrace(); } } private void EditSiswa() { final String name = etNama.getText().toString().trim(); class editSiswa extends AsyncTask<Void, Void, String> { ProgressDialog loading; @Override protected void onPreExecute() { super.onPreExecute(); loading = ProgressDialog.show(Edit_Hapus.this, "Edit", "Tunggu bentar...", false, false); } @Override protected void onPostExecute(String s) { super.onPostExecute(s); loading.dismiss(); Toast.makeText(Edit_Hapus.this, s, Toast.LENGTH_LONG).show(); } @Override protected String doInBackground(Void... params) { HashMap<String, String> hashMap = new HashMap<>(); hashMap.put(Config.KEY_NIS, nis); hashMap.put(Config.KEY_NAMA, name); RequestHandler rh = new RequestHandler(); String s = rh.sendPostRequest(Config.URL_EDIT_SISWA, hashMap); return s; } } editSiswa ue = new editSiswa(); ue.execute(); } private void hapusSiswa() { class HapusSiswa extends AsyncTask<Void, Void, String> { ProgressDialog loading; @Override protected void onPreExecute() { super.onPreExecute(); loading = ProgressDialog.show(Edit_Hapus.this, "Hapus", "Tunggu bentar...", false, false); } @Override protected void onPostExecute(String s) { super.onPostExecute(s); loading.dismiss(); Toast.makeText(Edit_Hapus.this, s, Toast.LENGTH_LONG).show(); } @Override protected String doInBackground(Void... params) { RequestHandler rh = new RequestHandler(); String s = rh.sendGetRequestParam(Config.URL_HAPUS_SISWA, nis); return s; } } HapusSiswa de = new HapusSiswa(); de.execute(); } private void confirmHapus() { AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this); alertDialogBuilder.setMessage("Yakin inngin hapus?"); alertDialogBuilder.setPositiveButton("Ya", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface arg0, int arg1) { hapusSiswa(); startActivity(new Intent(Edit_Hapus.this, TampilSiswa.class)); } }); alertDialogBuilder.setNegativeButton("Tidak", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface arg0, int arg1) { } }); AlertDialog alertDialog = alertDialogBuilder.create(); alertDialog.show(); } @Override public void onClick(View v) { if (v == btnEdit) { EditSiswa(); } if (v == btnHapus) { confirmHapus(); } } } |
Output Aplikasi
Sekian artikel dari saya semoga bermanfaat, jika ada yang ditanyakan comment saja di bawah.
- Get link
- X
- Other Apps
Comments
Post a Comment