Kita akan melihat bagaimana membuat aplikasi Android yang sangat sederhana (dalam kasus kami, aplikasi inventaris produk) yang akan memanggil skrip PHP untuk melakukan operasi dasar (Buat, Baca, Update, Hapus) CRUD. Untuk memberi tahu Anda tentang arsitektur, beginilah cara kerjanya. Pertama aplikasi android Anda memanggil skrip PHP untuk melakukan operasi data, katakanlah "buat". Script PHP kemudian terhubung ke database MySQL Anda untuk melakukan operasi.
Jadi data mengalir dari aplikasi Android anda ke script PHP maka akhirnya tersimpan di database MySQL anda. Baiklah, mari menggali lebih dalam.
Perlu diketahui bahwa tujuan kode yang saya berikan di sini adalah untuk memudahkan Anda (tingkat pemula) dalam menghubungkan aplikasi Android dengan PHP, MYSQL. Anda seharusnya tidak menganggap ini sebagai praktik pengkodean standar atau aman. Di lingkungan produksi, idealnya Anda perlu menghindari kode yang berpotensi menyuntikkan kerentanan (seperti MYSQL Injection). Injeksi MySQL itu sendiri adalah topik yang sangat besar dan tidak bisa ditutupi dalam postingan tunggal ini dan itu juga bukan agenda posting ini.
1. Apa itu WAMP Server?
WAMP adalah akronim untuk Windows, Apache, MySQL dan PHP, Perl, Python. Perangkat lunak WAMP adalah satu klik installer yang menciptakan lingkungan untuk pengembangan PHP, aplikasi web MySQL. Dengan menginstal software ini anda akan menginstal Apache, MySQL dan PHP. Atau Anda bisa menggunakan XAMP Server juga.
2. Memasang dan Menjalankan Server WAMP
Download & Install server WAMP dari www.wampserver.com/en/. Setelah Anda menginstal server wamp, jalankan program dari Start -> All Programs -> WampServer -> StartWampServer.
Anda bisa menguji server anda dengan membuka alamat http: // localhost / di browser anda.
Anda juga bisa mengecek phpmyadmin dengan membuka http: // localhost / phpmyadmin
3. Membuat dan Menjalankan Proyek PHP
Sekarang Anda memiliki lingkungan yang siap untuk mengembangkan proyek PHP & MySQL. Pergi ke lokasi di mana Anda menginstal server WAMP (Dalam kasus saya, saya diinstal di C: \ wamp \) dan masuk ke folder www dan buat folder baru untuk proyek Anda. Anda harus menempatkan semua file proyek Anda di dalam folder ini.
Buat folder bernama android_connect dan buat file php baru yang disebut test.php dan cobalah kode php sederhana. Setelah menempatkan kode berikut coba buka http: //localhost/android_connect/test.php dan anda akan melihat pesan yang disebut "Selamat Datang, saya menghubungkan Android dengan PHP, MySQL".
test.php
Jadi data mengalir dari aplikasi Android anda ke script PHP maka akhirnya tersimpan di database MySQL anda. Baiklah, mari menggali lebih dalam.
Perlu diketahui bahwa tujuan kode yang saya berikan di sini adalah untuk memudahkan Anda (tingkat pemula) dalam menghubungkan aplikasi Android dengan PHP, MYSQL. Anda seharusnya tidak menganggap ini sebagai praktik pengkodean standar atau aman. Di lingkungan produksi, idealnya Anda perlu menghindari kode yang berpotensi menyuntikkan kerentanan (seperti MYSQL Injection). Injeksi MySQL itu sendiri adalah topik yang sangat besar dan tidak bisa ditutupi dalam postingan tunggal ini dan itu juga bukan agenda posting ini.
1. Apa itu WAMP Server?
WAMP adalah akronim untuk Windows, Apache, MySQL dan PHP, Perl, Python. Perangkat lunak WAMP adalah satu klik installer yang menciptakan lingkungan untuk pengembangan PHP, aplikasi web MySQL. Dengan menginstal software ini anda akan menginstal Apache, MySQL dan PHP. Atau Anda bisa menggunakan XAMP Server juga.
2. Memasang dan Menjalankan Server WAMP
Download & Install server WAMP dari www.wampserver.com/en/. Setelah Anda menginstal server wamp, jalankan program dari Start -> All Programs -> WampServer -> StartWampServer.
Anda bisa menguji server anda dengan membuka alamat http: // localhost / di browser anda.
Anda juga bisa mengecek phpmyadmin dengan membuka http: // localhost / phpmyadmin
3. Membuat dan Menjalankan Proyek PHP
Sekarang Anda memiliki lingkungan yang siap untuk mengembangkan proyek PHP & MySQL. Pergi ke lokasi di mana Anda menginstal server WAMP (Dalam kasus saya, saya diinstal di C: \ wamp \) dan masuk ke folder www dan buat folder baru untuk proyek Anda. Anda harus menempatkan semua file proyek Anda di dalam folder ini.
Buat folder bernama android_connect dan buat file php baru yang disebut test.php dan cobalah kode php sederhana. Setelah menempatkan kode berikut coba buka http: //localhost/android_connect/test.php dan anda akan melihat pesan yang disebut "Selamat Datang, saya menghubungkan Android dengan PHP, MySQL".
test.php
<?php echo "Welcome, I am connecting Android to PHP, MySQL" ; ?> |
4. Membuat Database dan Tabel MySQL
Dalam tutorial ini saya membuat database sederhana dengan satu tabel. Melalui tutorial ini saya menggunakan tabel yang sama untuk melakukan operasi contoh. Sekarang buka phpmyadmin dengan membuka alamat http: // localhost / phpmyadmin / di browser anda. Anda bisa menggunakan tool PhpMyAdmin untuk membuat database dan tabel.
Saya membuat database bernama androidhive dan sebuah tabel yang disebut produk.
MENCIPTAKAN DATABASE androidhive;
CREATE TABLE products( pid int ( 11 ) primary key auto_increment, name varchar( 100 ) not null , price decimal( 10 , 2 ) not null , description text, created_at timestamp default now(), updated_at timestamp ); |
5. Menghubungkan ke database MySQL menggunakan PHP
Sekarang coding sisi server sebenarnya dimulai. Buat kelas PHP untuk koneksi ke database MySQL. Tujuan utama kelas ini adalah membuka koneksi ke database dan menutup koneksi kapan pun tidak dibutuhkan. Jadi buat dua file yang disebut db_config.php dan db_connect.php
db_config.php - akan memiliki variabel koneksi database
db_connect.php - file kelas untuk terhubung ke database
Berikut adalah kode untuk dua file php
db_config.php
<?php /* * All database connection variables */ define( 'DB_USER' , "root" ); // db user define( 'DB_PASSWORD' , "" ); // db password (mention your db password here) define( 'DB_DATABASE' , "androidhive" ); // database name define( 'DB_SERVER' , "localhost" ); // db server ?> |
db_connect.php
<?php /** * A class file to connect to database */ class DB_CONNECT { // constructor function __construct() { // connecting to database $this ->connect(); } // destructor function __destruct() { // closing db connection $this ->close(); } /** * Function to connect with database */ function connect() { // import database connection variables require_once __DIR__ . '/db_config.php' ; // Connecting to mysql database $con = mysql_connect(DB_SERVER, DB_USER, DB_PASSWORD) or die (mysql_error()); // Selecing database $db = mysql_select_db(DB_DATABASE) or die (mysql_error()) or die (mysql_error()); // returing connection cursor return $con ; } /** * Function to close db connection */ function close() { // closing db connection mysql_close(); } } ?> |
Penggunaan: Bila Anda ingin terhubung ke database MySQL dan melakukan beberapa operasi gunakan db_connect.php
6. Basic MySQL CRUD Operations menggunakan PHP
Dalam tutorial ini saya membahas operasi dasar CRUD (Create, Read, Update, Delete) pada database MySQL menggunakan PHP.
Jika Anda seorang pemula di PHP dan MySQL, saya sarankan Anda melalui PHP, SQL dan A Beginner's Guide to SQL untuk mendapatkan pengetahuan dasar.
6.a) Membuat baris di MySQL (Membuat baris produk baru)
Dalam proyek PHP Anda membuat file php baru yang disebut create_product.php dan menempatkan kode berikut. File ini terutama untuk membuat produk baru di dalam tabel produk.
Dalam kode berikut saya membaca data produk melalui POST dan menyimpannya di tabel produk. Pada akhirnya saya menggubah JSON yang sesuai sebagai respon.
<?php /* * Following code will create a new product row * All product details are read from HTTP Post Request */ // array for JSON response $response = array (); // check for required fields if (isset( $_POST [ 'name' ]) && isset( $_POST [ 'price' ]) && isset( $_POST [ 'description' ])) { $name = $_POST [ 'name' ]; $price = $_POST [ 'price' ]; $description = $_POST [ 'description' ]; // include db connect class require_once __DIR__ . '/db_connect.php' ; // connecting to db $db = new DB_CONNECT(); // mysql inserting a new row $result = mysql_query( "INSERT INTO products(name, price, description) VALUES('$name', '$price', '$description')" ); // check if row inserted or not if ( $result ) { // successfully inserted into database $response [ "success" ] = 1; $response [ "message" ] = "Product successfully created." ; // echoing JSON response echo json_encode( $response ); } else { // failed to insert row $response [ "success" ] = 0; $response [ "message" ] = "Oops! An error occurred." ; // echoing JSON response echo json_encode( $response ); } } else { // required field is missing $response [ "success" ] = 0; $response [ "message" ] = "Required field(s) is missing" ; // echoing JSON response echo json_encode( $response ); } ?> |
For the above code JSON response will be like
When POST param(s) is missing
{ "success" : 0 , "message" : "Required field(s) is missing" } |
When product is successfully created
{ "success" : 1 , "message" : "Product successfully created." } |
When error occurred while inserting data
{ "success" : 0 , "message" : "Oops! An error occurred." } |