Dokumen tersebut memberikan panduan lengkap tentang konsep dan implementasi pengolahan database menggunakan PHP dan MySQL, mulai dari persyaratan, langkah-langkah dasar, contoh query, dan output hasilnya.
2. KEBUTUHAN
o PHP – MySql installed
o MySql telah running (cek xampp control panel)
o Database
o Tabel
o Query SQL (Structured Query Language)
o Script PHP untuk pengolahan database
o Output (HTML)
3. LANGKAH-LANGKAH
Langkah yang dilakukan untuk mengolah database :
1. Membuat Koneksi dengan Database
2. Memilih database
3. Membentuk perintah SQL untuk pengolahan data
4. Mengirimkan / eksekusi perintah
5. Mengakses hasil eksekusi perintah
6. Menampilkan output
7. Menutup sambungan
4. CONTOH IMPLEMENTASI
Form login
Pengambilan data login user di database dan
mencocokan dengan data input dari user
List tabel
Menampilkan data dalam sebuah tabel (mis: tabel daftar
mahasiswa)
Detail data
Menampilkan data detail dari sebuah tabel (mis: detail
biodata mahasiswa berdasarkan NIM tertentu)
dll
5. SQL
SQL (Structured Query Language) adalah bahasa yang
khusus digunakan untuk mengoperasikan database.
Untuk memudahkan, SQL query dapat dikelompokkan
menjadi tiga jenis :
Query untuk mengelola data
Query untuk mengakses data dalam 1 tabel
Query untuk mengakses data lebih dari 1 tabel
SQL Manager : Software yang digunakan untuk
mengolah database dalam server
PHPMyAdmin
SQLyog
EMS
6. QUERY UNTUK MENGELOLA DATABASE
Yang termasuk dalam kelompok query ini adalah :
Membuat database
Menghapus database
Membuat tabel
Memodifikasi tabel
Menghapus tabel
Menambah user (user database)
Mengatur permission (user database)
Menghapus user (user database)
7. QUERY UNTUK MENGELOLA DATABASE
Membuat database
CREATE DATABASE <nama database>
Menghapus database
DROP DATABASE
Membuat tabel
CREATE TABLE userTable(
UserId INT (3),
UserName VARCHAR (50),
Password VARCHAR (50),
NamaLengkap VARCHAR (50)
);
Menghapus tabel
DROP TABLE <nama tabel>;
8. QUERY UNTUK 1 TABEL
Query satu tabel digunakan untuk mengelola data
dalam satu tabel
Beberapa perintah yang dapat digunakan :
Fungsi Query
Input data INSERT
Modifikasi data UPDATE
Mengambil data SELECT
Menghapus data DELETE
Menghitung banyaknya data COUNT
Menjumlah data SUM
Menghitung rata-rata AVG
dll
9. QUERY UNTUK 1 TABEL
SQL INSERT
INSERT INTO userTable
VALUES (
1,
‘username',
‘password',
‘Username testing'
);
SQL UPDATE
UPDATE userTable
SET password=’test’
WHERE
UserName=’username’
SQL SELECT
SELECT *
FROM UserTable
WHERE UserId=1
SQL DELETE
DELETE FROM
UserTable
WHERE
NamaLengkap=’Usernam
e Testing’
10. QUERY UNTUK BANYAK TABEL
Kelompok Query ini digunakan untuk mengambil
data dari lebih dari 1 tabel menggunakan JOIN.
SELECT * FROM
UserTabel JOIN Biodata
ON UserTabel.idUser = Biodata.idUser
11. MEMBUAT KONEKSI DENGAN DATABASE
$dbServer = "localhost";
$dbUser = “root";
$dbPass = "";
$dbConn = mysql_connect($dbServer,
$dbUser, $dbPass);
Variabel $dbConn akan berisi “resource” koneksi
yang sedang aktif setelah dilakukan connect
13. MEMBENTUK PERINTAH SQL UNTUK
PENGOLAHAN DATA
Perintah (SQL) ditamping dalam sebuah variabel
String
$query =
“INSERT INTO userTable VALUES (
1,
‘username',
‘password',
‘Username testing'
);”
14. EKSEKUSI PERINTAH (SQL)
Setelah menyusun SQL dalam String, dilakukan
eksekusi perintah SQL :
$hasil = mysql_query($query);
if($hasil){
echo(mysql_affected_rows()."
orang ditambahkan ke dalam
sistem");
}
15. MENGAKSES HASIL QUERY
Mengetahui jumlah data hasil query :
$jumlahHasil = mysql_num_rows($hasil);
Mengambil data hasil query :
$data = mysql_fetch_array($hasil);
Perintah tsb akan mengambil data (1 baris data)
dan akan mengembalikan false jika baris telah
habis, maka untuk mengambil seluruh data
digunakan looping :
while($row = mysql_fetch_array($result)){
//perintah yang dilakukan
$datas[] = $row;
}
Mengambil data dalam bentuk array :
$passDb = $data[“Password”];
16. OUTPUT
Nilai kembalian dari mysql fetch_array adalah
berupa array (1 dimensi / multi dimensi)
Dapat digunakan kombinasi antara looping dan
array untuk membentuk tampilan output HTML dari
data.
18. ISSUES
Perhatikan kompleksitas query
Semakin kompleks query yang digunakan, semakin
lama waktu eksekusi
Perhatikan koneksi open-close
Non-presistent connection mencegah beban berlebihan
di server
Beban di server berbanding lurus dengan jumlah
user yang mengakses
Perhatikan sekuritas
Hindari kemungkinan sql-injection
Escape characters