PHP dan MySQL (mysqli)


11/10/2016 04:55:08 450

Database merupakan komponen yang sangat penting dalam pengembangan aplikasi. Databse digunakan untuk menyimpan data-data dari suatu aplikasi. MySQL ialah salah satu database yang populer dan merupakan salah satu database yang di-support oleh PHP. Untuk menggunakan MySQL, PHP menyediakan beberapa driver yang dapat digunakan untuk melakukan manipulasi data, yakni:

  1. mysql driver
  2. mysqli driver
  3. PDO (PHP Data Object Driver)

Penggunaan mysql driver meliputi penggunaan code mysql_connect, mysql_select_db, mysql_query dan seterusnya telah banyak digunakan dalam pembuatan aplikasi dan merupakan driver pertama pada PHP. Namun, penggunaan driver ini sudah tidak lagi didukung pada PHP versi selanjutnya, yakni PHP 7, sehingga penggunaan driver mysql lebih baik dihindari. Untuk itu penggunaan driver mysqli atau PDO lebih disarankan untuk digunakan. Pada tutorial ini, kami menggunakan driver mysqli untuk memanipulasi data pada database menggunakan PHP.

Alur Penggunaan

Dalam bekerja dengan database, terdapat empat langkah sederhana yang harus Anda lakukan sebagai berikut:

  1. Koneksi kedatabase dan memilih database yang digunakan.
  2. Mempersiapkan SQL yang akan dieksekusi
  3. Eksekusi SQL dan dapatkan hasil eksekusi
  4. Menampilkan hasil eksekusi (Jika ada)

Koneksi Database

Koneksi database merupakan tahapan pertama yang harus dilakukan sebelum melakukan proses database yang lain. Untuk koneksi kedatabase dengan menggunakan mysqli menggunakan kode sebagai berikut:

Penggunaan

$con = new mysqli(server, username, password, nama_database);

Perintah diatas memerlukan empat parameter yakni

  1. server ialah alamat server tempat MySQL diletakan. Ketika aplikasi satu server dengan MySQL cukup ditulis dengan "localhost".
  2. username ialah username yang digunakan untuk koneksi ke server MySQL
  3. password ialah password yang sesuai dengan username yang digunakan untuk koneksi ke MySQL
  4. nama_database ialah database yang digunakan dan dapat diakses oleh username dan password.

Contoh

$server = "localhost";
$username = "root";
$password = "abc111";
$nama_database = "website";

$con = new mysqli($server, $username, $password, $nama_database);

Perintah SQL

Setelah koneksi database, langkah selanjutnya ialah mempersiapkan perintah SQL yang akan dieksekusi. Untuk itu anda harus ingat perintah-perintah SQL. Terdapat empat perintah dasar SQL yakni create, read, update dan delete atau disingkat dengan CRUD. Berikut contoh penggunaannya:

// 1. ... Koneksi database
$server = "localhost";
$username = "root";
$password = "abc111";
$nama_database = "website";

$con = new mysqli($server, $username, $password, $nama_database);

// 2. ... Perintah SQL
$sql = "SELECT * FROM users WHERE id=1";

Eksekusi Perintah SQL

Setelah perintah SQL disiapkan, langkah selanjutnya ialah mengeksekusi perintah SQL tersebut dengan menggunakan perintah SQL. Contoh pengunaannya ialah sebagai berikut:

// 1. ... Koneksi database
$server = "localhost";
$username = "root";
$password = "abc111";
$nama_database = "website";

$con = new mysqli($server, $username, $password, $nama_database);

// 2. ... Perintah SQL
$sql = "SELECT * FROM users WHERE id=1";

// 3. ... Eksekusi Perintah SQL

$result = $con->query($sql);

Tampilkan data (jika ada)

Setelah perintah SQL dijalankan, maka langkah selanjutnya menampilkan hasil eksekusi. Perintah read akan mengembalikan data dari database, sedangkan perintah yang lain tidak. Berikut ialah contohnya

// 1. ... Koneksi database
$server = "localhost";
$username = "root";
$password = "abc111";
$nama_database = "website";

$con = new mysqli($server, $username, $password, $nama_database);

// 2. ... Perintah SQL
$sql = "SELECT * FROM users WHERE id=1";

// 3. ... Eksekusi Perintah SQL

$result = $con->query($sql);

// 4. ... Tampilkan data

$record = $result->fetch_array();
// echo $record['nama_field'];
echo $record['username'];

Untuk membaca hasil read dari table terdapat beberapa perintah sebagai berikut

  1. $record->fetch_array(). Mengembalikan record yang disimpan dalam array dengan index associative dan numeric. Dimana urutan index/key pada array numeric menunjukan urutan kolom/field pada tabel
  2. $record->fetch_assoc(). Mengembalikan record yang disimpan dalam array dengan index associative.
  3. $record->fetch_num(). Mengembalikan record yang disimpan dalam array dengan index numeric. Dimana urutan index/key pada array numeric menunjukan urutan kolom/field pada tabel
  4. $record->fetch_object(). Mengembalikan record yang disimpan dalam object dan field/kolom dari tabel akan menjadi properti pada object.