Professional Documents
Culture Documents
SECTION 1 : DATABASE
SECTION 2 : PHP
File PHP ini diletakkan di folder server: android1 (jika pakai XAMPP: diletakkan di
htdocs\android1)
tambahmhs.php
<?php
require_once('koneksi.inc.php');
$nim = $_GET['nim'];
$nama = $_GET['nama'];
$prodi = $_GET['prodi'];
$sql = "INSERT INTO mhs(nim, nama, jurusan)
values('$nim', '$nama', '$prodi')";
$conn = koneksi();
if(mysqli_query($conn, $sql))
print("OK");
else
print("FAIL");
mysqli_close($conn);
?>
koneksi.inc.php
<?php
// menciptakan koneksi
function koneksi(){
//koneksi database mysql
$servername = "localhost";
$username = "root";
$password = "root";
$dbname = "mhsdb";
$conn =
mysqli_connect($servername, $username, $password, $dbname) or
die('Koneksi gagal: ' . mysqli_connect_error());
return $conn;
}
?>
SECTION 3 : Android
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_below="@+id/textView"
android:text="Tambah"
android:onClick="tambahMhs"/>
Tujuan: panggil url yang mempuyai parameter, hasil berupa “OK” dan “FAIL”
file TambahMhs.java
package com.latihan.darmanto.bacamhs2;
import android.app.ProgressDialog;
import android.content.Context;
import android.os.AsyncTask;
import android.widget.ListView;
import android.widget.Toast;
import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
Context c;
String address;
ProgressDialog pd;
pd = new ProgressDialog(c);
pd.setTitle("Fetch Data");
pd.setMessage("Fetching Data...Please wait");
pd.show();
}
@Override
protected String doInBackground(Void... params) {
String data = tambahData(); // konek ke server
return data;
}
// melakukan parsing
// parameter s adalah string data hasil dr server
// s = “OK” berhasil menambah record
// s = “FAIL” gagal menambah record
@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
if(s != null){
if(s.contains("OK")) {
Toast.makeText(c, "Data Mhs BERHASIL disimpan",
Toast.LENGTH_SHORT).show();
}else {
Toast.makeText(c, "Data Mhs GAGAL disimpan",
Toast.LENGTH_SHORT).show();
}
}else {
Toast.makeText(c,"Gagal konek ke server",
Toast.LENGTH_SHORT).show();
}
}
try {
URL url=new URL(address); // ciptakan objek URL
// buka koneksi dengan url.openConnection(),
// hasil berupa HttpURLConnection
HttpURLConnection con= (HttpURLConnection)
url.openConnection();
// ciptakan input stream
is = new BufferedInputStream(con.getInputStream());
if(br != null) {
// menghasilkan (membaca) baris teks yg ada pada
BufferReader
while ((line = br.readLine()) != null) {
sb.append(line+"\n");
System.out.println("linenya = "+line); // hanya
sbg test
}
}else {
return null;
}
return sb.toString();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}finally {
if(is != null) {
try {
is.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return null;
}
}
TambahActivity.java
package com.latihan.darmanto.bacamhs2;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.Toast;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_tambah);
editNim = (EditText) findViewById(R.id.nim);
editNama = (EditText) findViewById(R.id.nama);
rbMi = (RadioButton) findViewById(R.id.mi);
rbSi = (RadioButton) findViewById(R.id.si);
}
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="NIM"/>
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/nim"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Nama"/>
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/nama"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Prodi"/>
<RadioGroup
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<RadioButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="SI"
android:id="@+id/si"
android:checked="true"/>
<RadioButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="MI"
android:id="@+id/mi"/>
</RadioGroup>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Simpan"
android:onClick="simpanMhs"/>
</LinearLayout>