CARA MEMBUAT MENU INSERT ANDROID DI ECLIPSE MENGGUNAKAN DATABASE

9:13 AM
CARA MEMBUAT MENU INSERT ANDROID DI ECLIPSE MENGGUNAKAN DATABASE

Assalamualaikum Wr.Wb

Pada kesempatan kali ini saya akan membuat tutorial bagaimana cara membuat menu insert android di eclipse menggunakan database . Untuk kali ini saya akan menggunakan database phpmyadmin. Hal yang paling penting adalah bagaimana anda harus mengkoneksikan dari tampilan android dengan database. Misalnya untuk contoh menu insert dibutuhkan perijinan akses internet untuk dapat melakukan koneksi ke localhost dari emulator dengan alamat "http://10.0.2.2". Dimana pada localhost inilah file setUser.php tersimpan. 

Berikut ini adalah langkah langkah nya :






1. Pertama kali pastikan Anda telah update isi file AndroidManifest.xml sebagai berikut.


<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.contoh"
    android:versionCode="1"
    android:versionName="1.0" >
    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="18" />    
    //untuk koneksi internet
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />    
    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.example.contoh.InsertActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
</manifest>

Catatan = " Berdasarkan "android.intent.category.LAUNCHER" pada file manifest, class InsertActivity.java lah yang akan diakses pertama kali ketika sistem dijalankan. "

2. Setelah itu berikut ini adalah script InsertActivity.java


package com.example.contoh;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.lang.reflect.Constructor;
import java.lang.reflect.Method;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.params.HttpClientParams;
import org.apache.http.impl.client.DefaultHttpClient;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.text.Html;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class InsertActivity extends Activity {
    private EditText editUserName;
    private EditText editPassword;
    private Button buttonSignup;
    public static final String urlContoh = "http://10.0.2.2/contoh/setUser.php"; //koneksi database ke localhost      
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_insert);        
        editUserName = (EditText) findViewById(R.id.editTextUserName);
        editPassword = (EditText) findViewById(R.id.editTextPassword);
        buttonSignup = (Button) findViewById(R.id.buttonSignup);                
        buttonSignup.setOnClickListener(new OnClickListener() {            
            public void onClick(View view) {
                try {    
   
                 String result = 
InsertActivity.getRequestFromServer(urlContoh+"?username="+editUserName.getText().toString()+"&password="+editPassword.getText().toString());   
                     
                    Toast.makeText(InsertActivity.this, result, Toast.LENGTH_LONG).show();
                } catch (Exception e) {
                    Toast.makeText(InsertActivity.this, "Error: "+ e.getMessage(), Toast.LENGTH_LONG).show();
                }
                Intent myIntent = new Intent(view.getContext(),InsertActivity.class);
                startActivity(myIntent);
                finish();
            }
        });
    }    
        public static String getRequestFromServer(String url){    
        try {
            Class<?> strictModeClass = Class.forName("android.os.StrictMode", true, Thread.currentThread()
                    .getContextClassLoader());

            Class<?> threadPolicyClass = Class.forName("android.os.StrictMode$ThreadPolicy", true, Thread
                    .currentThread().getContextClassLoader());
            Class<?> threadPolicyBuilderClass = Class.forName("android.os.StrictMode$ThreadPolicy$Builder", true,
                    Thread.currentThread().getContextClassLoader());
            Method setThreadPolicyMethod = strictModeClass.getMethod("setThreadPolicy", threadPolicyClass);

           Method detectAllMethod = threadPolicyBuilderClass.getMethod("detectAll");
            Method penaltyMethod = threadPolicyBuilderClass.getMethod("penaltyLog");
            Method buildMethod = threadPolicyBuilderClass.getMethod("build");

            Constructor<?> threadPolicyBuilderConstructor = threadPolicyBuilderClass.getConstructor();
            Object threadPolicyBuilderObject = threadPolicyBuilderConstructor.newInstance();

            Object obj = detectAllMethod.invoke(threadPolicyBuilderObject);

            obj = penaltyMethod.invoke(obj);
            Object threadPolicyObject = buildMethod.invoke(obj);
            setThreadPolicyMethod.invoke(strictModeClass, threadPolicyObject);

        } catch (Exception ex) {
            Log.w("Thread Policy", ex);
        }

        String result = "Succeed";
        HttpClient client = new DefaultHttpClient();
        HttpClientParams.setRedirecting(client.getParams(), true);
        HttpGet request = new HttpGet(url);
        try{
            HttpResponse response = client.execute(request);
            InputStream in = response.getEntity().getContent();
            BufferedReader reader = new BufferedReader(new InputStreamReader(in));
            StringBuilder str = new StringBuilder();
            String line = null;
            int lineCount = 0;
            while((line = reader.readLine()) != null){
                if(lineCount>0) str.append("\n");
                str.append(line);
            }
            in.close();
            result = str.toString();
            Log.w("get Request", "asli : "+result);
            if(result.indexOf("<") > 0){
                result = result.substring(0, result.indexOf("<"));
            }
            Log.w("get Request", "proses : "+Html.fromHtml(result));
            return Html.fromHtml(result).toString();            
        }catch(Exception ex){
            ex.printStackTrace();
            result = "Error";
        }
        return result;
    }
}

Catatan = "Perhatikan bagian "http://10.0.2.2/contoh/setUser.php", bahwa file setUser.php (query untuk menyimpan data username dan password) tersimpan pada folder "contoh" di dalam htdocs."

3. Kemudian source code untuk file setUser.php


<?php
$username = $_GET['username'];
$password = $_GET['password'];
include "connect_db.php";

$query = "insert into tbuser (username,password) values('".$username."','".$password."')";
$result = mysql_query($query, $link) or die('Error query:  '.$query);
echo $result;

?>


Catatan = " Perhatikan bagian include "connect_db.php", bahwa source code untuk koneksi ke root dari localhost terdapat pada file connect_db.php. "

4. Berikut ini adalah source code connect_db.php


<?php
$link = mysql_connect('localhost', 'root', '') or die('Cannot connect to the DB');
mysql_select_db('dbcontoh') or die('Cannot select the DB');    
?>

5. Kemudian ini  soruce code untuk activity_insert.xml yang tersimpan pada folder "layout" dari struktur direktori android.


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:gravity="center_horizontal"
    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=".MainActivity" >
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical" >
            <TextView
                android:id="@+id/textView1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Username" />
            <EditText
                android:id="@+id/editTextUserName"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:ems="10" >
                <requestFocus />
            </EditText>
            <TextView
                android:id="@+id/textView2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Password" />
            <EditText
                android:id="@+id/editTextPassword"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:ems="10"
                android:inputType="textPassword" />           
        </LinearLayout>
    <Button
        android:id="@+id/buttonSignup"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="SIGN UP" />
</LinearLayout>


6. Setelah itu anda jalankan programnya maka tampilannya akan seperti gambar di bawah ini




Semoga berhasil dan semoga bermanfaat...  (^_^)

がんばって....


Artikel Terkait

Previous
Next Post »

3 komentar

Write komentar
admin
AUTHOR
March 17, 2015 at 1:30 AM delete

kalo mau buat mnu pencarian gimana gan?

Reply
avatar
Burhanxxx
AUTHOR
March 25, 2015 at 10:37 PM delete This comment has been removed by the author.
avatar
Burhanxxx
AUTHOR
March 25, 2015 at 10:39 PM delete

ini gan ada http://saepulburhan.blogspot.com/2015/03/cara-membuat-aplikasi-search-di-eclipse.html
silahkan di coba :d

Reply
avatar

Formulir Kontak

Name

Email *

Message *