0% menganggap dokumen ini bermanfaat (0 suara)
20 tayangan

Modul 9 - PHP Dan MySQL

Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
20 tayangan

Modul 9 - PHP Dan MySQL

Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 10

Workshop Pengembangan Web

Modul 9. PHP dan Database MySQL


A. Kompetensi dan Pokok Bahasan
Kompetensi Umum:
Mahasiswa diharapkan mampu merancang website dengan menggunakan bahasa
pemrograman PHP dan terhubung ke database.
Kompetensi Khusus:
● Mahasiswa diharapkan mampu menggunakan fungsi penghubung PHP
dengan database dan mengenali serta menggunakan MySQL sebagai Basis
Data Sistem (DDL dan DML Sederhana)
● Mahasiswa diharapkan mampu menggunakan database MySQL dengan
perintah sederhana (DML Lanjutan)
Pokok Bahasan: PHP dan Database MySQL
Sub Pokok Bahasan: Database dengan MySQL (DDL dan DML), Koneksi PHP ke
MySQL, DML Lanjutan pada MySQL, PHP Query Database

B. Materi
1. Menggunakan MySQL
MySQL merupakan salah satu DBMS yang umum digunakan. Di website resmi
MySQL, mereka mengklaim bahwa MySQL merupakan salah satu database opensource
yang paling populer. Biasanya aplikasi DBMS MySQL biasanya terintegrasi dengan aplikasi
server lokal yang digunakan untuk menjalan PHP, seperti XAMPP, Appserv, WAMP,
LAMP dan lain-lain.
Database MySQL dapat diakses melalui CLI dan GUI. MySQL dapat diakses
menggunakan CLI dengan menggunakan Command Prompt atau Terminal. Sedangkan
melalui GUI, dapat diakses melalui server lokal atau aplikasi pendukung lain bisa digunakan
untuk membuka database MySQL.
DDL merupakan singkatan dari data definition language. Perintah DDL terdiri dari:
(1) CREATE, (2) DROP, (3) ALTER, dan; (4) TRUNCATE. Sedangkat DML merupakan
singkatan dari data manipulation language. Perintah DML Terdiri dari: (1) SELECT, (2)
INSERT, (3) UPDATE, dan; (4) DELETE.

48
Anggy Trisnadoli, S.S.T., M.T
Muhammad Mahrus Zain, S.S.T., M.T.I.
Workshop Pengembangan Web

2. Koneksi PHP dengan MySQL


PHP telah menyediakan fungsi yang digunakan untuk membangun komunikasi
(terkoneksi) dengan DBMS MySQL. Fungsi ini merupakan fungsi bawaan dan umum
digunakan untuk mengkomunikasikan PHP dengan DBMS. Adapun fungsi yang digunakan
adalah:
mysqli_connect(); // Fungsi Koneksi
mysqli_connect(host,username,password,namadatabase); // Membuat koneksi

3. DML Lanjutan
SELECT dan INSERT merupakan salah satu perintah DML yang telah dipelajari pada
pertemuan sebelumnya. Peintah DML lanjutan yang akan dipelajari adalah UPDATE dan
DELETE. Perintah UPDATE dilakukan dengan mengikuti pola berikut ini.
UPDATE namaTabel
SET Atribut1=value, Atribut2=value2,...
WHERE Atribut3(atau id)=NilaiTertentu

Sedangkan perintah DELETE dilakukan dengan mengikuti pola berikut ini.


DELETE FROM namaTabel
WHERE ID(salahsatuatribut)=NilaiTertentu

4. PHP Query Database


Query data merupakan bagian penting yang digunakan untuk menampilkan data dari
database ke sistem berbasis WEB yang dirancang dengan menggunakan PHP. Ada bebarapa
fungsi yang digunakan untuk menampilkan data tersebut. Fungsi tersebut antara lain:
a. mysqli_query || untuk meng-query data
b. mysqli_fetch_array || menampilkan data hasil query dalam bentuk array
c. mysqli_fetch_object || menampilkan data hasil query dalam bentuk objek
d. mysqli_num_rows || menampilkan jumlah data yang diquery

5. PHP Manipulasi Data pada Database


Dalam penggunaannya, PHP mampu melakukan manipulasi data langsung ke
database. Manipulasi ini dilakukan dengan menggunakan sintaks DML (SQL DML) yang
digunakan di database. Manipulasi tersebut terkait dengan pengubahan dan penghapusan
record suatu tabel di database.
Modul ini akan mempraktikan tentang tata cara menambahkan data ke database, mengubah
record dan menghapus record pada table di database tertentu. Semua perintah tersebut
dilakukan dengan menggunakan bahasa PHP.
49
Anggy Trisnadoli, S.S.T., M.T
Muhammad Mahrus Zain, S.S.T., M.T.I.
Workshop Pengembangan Web

C. Contoh Program
a. Membuat Database (Kasus Database Mahasiswa)
Langkah:
a) Buka Command Prompt (CMD). Bendera + R, tuliskan cmd.
b) Ketikan cd C:\xampp\mysql\bin\
c) Ketikan mysql –u root –p maka akan muncul permintaan password.
Lanjutkan dengan menekan Enter.

d) Maka akan muncul halaman berikut ini:

e) Saat ini anda telah terhubung dan menggunakan DBMS MySQL.


f) Membuat Database (Perintah SQL):

Membuat Database WPWdb


CREATE DATABASE WPWdb;

Gunakan database WPWdb


use WPWdb;

Membuat Tabel Mahasiswa untuk Database WPWdb


CREATE TABLE mahasiswa
(
ID int(10) NOT NULL AUTO_INCREMENT,
nama varchar(255) NOT NULL,
nim varchar(255),
kelas varchar(255),
username varchar(255),
password varchar(255),
PRIMARY KEY (ID)
);

50
Anggy Trisnadoli, S.S.T., M.T
Muhammad Mahrus Zain, S.S.T., M.T.I.
Workshop Pengembangan Web

Membuat record (isi) tabel


INSERT INTO mahasiswa
(nama,nim,kelas,username,password)
VALUES
('Ujang 1', '11234', '1SIA', 'ujang', MD5('ujang00')),
('Badu 2', '22234', '1SIA', 'badu', MD5('badu00')),
('Surono 3', '33234', '1SIA', 'surono',MD5('surono00')),
('Aibekop 4', '44234', '1SIA', 'aibekop',MD5('aibekop00'));

Melihat semua tabel di database WPWdb


show tables;

Melihat isi Tabel isi tabel mahasiswa


SELECT * FROM mahasiswa;

Update Tabel Mahasiswa (Mengubah record Surono)


UPDATE mahasiswa SET nama = 'Sarijo', kelas= '1SIB'
WHERE nim = '33234';

Delete Tabel Mahasiswa (Menghapus Record mahasiswa nomor 4)


DELETE FROM mahasiswa WHERE nim = '44234';

51
Anggy Trisnadoli, S.S.T., M.T
Muhammad Mahrus Zain, S.S.T., M.T.I.
Workshop Pengembangan Web

b. Membuat Koneksi ke Database (Modul9_KoneksiDB.php)


<?php
// membuat koneksi ke mysql
$con = mysqli_connect("localhost","root","","WPWdb");
// Mengecek apakah koneksi gagal?
if (mysqli_connect_errno($con))
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
else
{
echo "Berhasil Terhubung!";
}
?>

c. Query Database WPWdb (Nama file: Modul9_QueryArray.php)


<?php
// Pastikan menggunakan instruksi untuk mengkoneksikan ke database
$con = mysqli_connect("localhost","root",""," WPWdb ");
// Mengecek apakah koneksi gagal?
if (mysqli_connect_errno($con))
{
echo "Gagal terhubung ke MySQL: " . mysqli_connect_error();
}
// QueryArray dimulai
// mahasiswa adalah nama tabel
$query = mysqli_query($con, "SELECT * FROM mahasiswa");
while ($m = mysqli_fetch_array($query))
{
print "Nama: ".$m['nama'].", Nim: ".$m['nim']."<br>";
}
?>

d. Query Database WPWLdb (Nama file: Modul9_QueryObject.php)


<?php
// Pastikan menggunakan instruksi untuk mengkoneksikan ke database
$con = mysqli_connect("localhost","root",""," WPWdb");
// Mengecek apakah koneksi gagal?
if (mysqli_connect_errno($con))
{
echo "Gagal terhubung ke MySQL: " . mysqli_connect_error();
}
// Query Object
$query = mysqli_query($con, "SELECT * FROM mahasiswa");
while ($m = mysqli_fetch_object($query))
{
print "Nama: ".$m->nama.", NIM: ".$m->nim."<br>";
}
?>
52
Anggy Trisnadoli, S.S.T., M.T
Muhammad Mahrus Zain, S.S.T., M.T.I.
Workshop Pengembangan Web

e. Query Database WPWdb (Nama file: Modul9_QueryNum.php)


<?php
// Pastikan menggunakan instruksi untuk mengkoneksikan ke database
$con = mysqli_connect("localhost","root",""," WPWdb");
// Mengecek apakah koneksi gagal?
if (mysqli_connect_errno($con))
{
echo "Gagal terhubung ke MySQL: " . mysqli_connect_error();
}
// Query Num Rows menghitung jumlah data record
$query = mysqli_query($con, "SELECT * FROM mahasiswa");
$total = mysqli_num_rows($query);
print "Total Data: ".$total;
?>

f. Halaman manipulasi database (Modul9_MenuMahasiswa.php)


<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Menu Mahasiswa</title>
</head>
<body>
<?php include "koneksi.php"; ?>
<a href="Modul9_FormInsert.php">Tambah Mahasiswa</a>
<table width="600" border="1" cellspacing="0" cellpadding="0">
<tr>
<th align="center">No</th>
<th>Nama</th>
<th>NIM</th>
<th>Kelas</th>
<th>Username</th>
<th>Aksi</th>
</tr>

<?php
$i = 0;
$query = mysqli_query($con, "SELECT * FROM mahasiswa");
while ($m = mysqli_fetch_array($query))
{ $i++;
?>
<tr>
<td align="center"><?php print $i; ?></td>
<td><?php print $m['nama']; ?></td>
<td><?php print $m['nim']; ?></td>
<td><?php print $m['kelas']; ?></td>
<td><?php print $m['username']; ?></td>

53
Anggy Trisnadoli, S.S.T., M.T
Muhammad Mahrus Zain, S.S.T., M.T.I.
Workshop Pengembangan Web

<td><a href="Modul9_FormUpdate.php?id=<?php print $m['ID']


?>">Edit</a> | <a href="Modul9_HapusDB.php?id=<?php print $m['ID']
?>">Hapus</a></td>
</tr>
<?php
}
?>
</table>
</body>
</html>

g. Menambah data ke tabel mahasiswa (Modul9_FormInsert.php dan


Modul9_DBInsert.php), Langkah-langkah yang dilakukan:
● Buat halaman web yang berisikan form input dari kolom-kolom yang ada di
tabel mahasiswa (nama, nim, kelas, username, dan password). POST-kanlah isi
form tersebut ke file Modul9_InsertDB.php
● Buatlah program berikut ini. (Modul9_InsertDB.php)
<?php
// panggil koneksi
include "koneksi.php";
$nama = $_POST['nama'];
$nim = $_POST['nim'];
$kelas = $_POST['kelas'];
$user = $_POST['user'];
$pass = md5($_POST['pass']);

if (!empty($nama) && !empty($nim) && !empty($kelas) && !empty($user)


&& !empty($pass)) // pengecekan jika data kosong
{
mysqli_query($con, "INSERT INTO
mahasiswa(nama,nim,kelas,username,password)
VALUES('$nama','$nim','$kelas','$user','$pass')");
header('location:Modul9_MenuMahasiswa.php'); // arahkan kembali
} else
{
header('location:Modul9_FormInsert.php');
}
?>

h. Mengubah data tabel mahasiswa (Modul9_FromUpdate.php dan


Modul9_UpdateDB.php), Langkah-langkah yang dilakukan:
● File Modul9_FromUpdate.php
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Tambah Data Mahasiswa</title>
</head>
54
Anggy Trisnadoli, S.S.T., M.T
Muhammad Mahrus Zain, S.S.T., M.T.I.
Workshop Pengembangan Web

<body>
<?php include "koneksi.php";
$mhsid = $_GET['id'];
$query = mysqli_query($con, "SELECT * FROM mahasiswa WHERE ID =
'$mhsid'");
$m = mysqli_fetch_object($query);
?>
<a href="Modul9_MenuMahasiswa.php">Menu Mahasiswa</a>
<form method="post" action="Modul_09_UpdateDB.php">
<input type="hidden" value="<?php print $m->ID; ?>" name="mhsid" />
<table width="600" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>Nama</td>
<td>:</td>
<td><input type="text" name="nama" value="<?php print $m->nama;
?>" width="100%" required/></td>
</tr>
<tr>
<td>NIM</td>
<td>:</td>
<td><input type="text" name="nim" value="<?php print $m->nim; ?>"
width="100%" required/></td>
</tr>
<tr>
<td>Kelas</td>
<td>:</td>
<td><input type="text" name="kelas" value="<?php print $m->kelas;
?>" width="100%" required/></td>
</tr>
<tr>
<td>Username</td>
<td>:</td>
<td><input type="text" name="user" value="<?php print $m-
>username; ?>" width="100%" required/></td>
</tr>
<tr>
<td>Password</td>
<td>:</td>
<td><input type="password" name="pass" width="100%"
required/></td>
</tr>
<tr>
<td colspan="3"><input type="submit" value="Save" /> </td>
</tr>
</form> </table>
</body>
</html>

● File Modul9_UpdateDB.php
55
Anggy Trisnadoli, S.S.T., M.T
Muhammad Mahrus Zain, S.S.T., M.T.I.
Workshop Pengembangan Web

<?php
// panggil koneksi
include "koneksi.php";
$id = $_POST['mhsid'];
$nama = $_POST['nama'];
$nim = $_POST['nim'];
$kelas = $_POST['kelas'];
$user = $_POST['user'];
$pass = md5($_POST['pass']);
// jika data kosong maka perintah update tidak akan dijalankan!
if (!empty($nama) && !empty($nim) && !empty($kelas) && !empty($user)
&& !empty($pass))
{
mysqli_query($con, "UPDATE mahasiswa SET nama = '$nama', nim =
'$nim', kelas = '$kelas', username = '$user', password = '$pass'
WHERE ID = '$id'");
header('location:Modul9_MenuMahasiswa.php');
} else
{
header('location:Modul9_MenuMahasiswa.php');
}

i. Menghapus data tabel (Modul9_HapusDB.php)


<?php
// panggil koneksi
include "koneksi.php";
$id = $_GET['id'];

if (!empty($id)) {
mysqli_query($con, "DELETE FROM mahasiswa WHERE ID = '$id'");
header('location:Modul9_MenuMahasiswa.php');
} else
{
header('location:Modul9_MenuMahasiswa.php');
}

D. Latihan
1. Buatlah tabel matakuliah pada database WPWdb, dengan atribut sebagai berikut
a. mk_id – integer 20 – auto_increment – primary key
b. mk_nama – varchar 30
c. mk_kode – varchar 10
d. mk_dosen – varchar 50
2. Isilah Tabel matakuliah tersebut dengan record berikut ini:

56
Anggy Trisnadoli, S.S.T., M.T
Muhammad Mahrus Zain, S.S.T., M.T.I.
Workshop Pengembangan Web

a. mk_nama: Algoritma dan Pemrograman, mk_kode: SI401, mk_dosen:


Satria Perdana Arifin
b. mk_nama: Basis Data Dasar, mk_kode: SI414, mk_dosen: Dini Hidayatul
Qudsi
c. mk_nama: Pengembangan Web Lanjut, mk_kode: SI413, mk_dosen:
Anggy Trisnadoli
d. mk_nama: Sistem Informasi Akuntansi, mk_kode: SI416, mk_dosen:
Istianah Muslim
3. Tampilkan tabel, serta lanjutkan dengan menampilkan isi record matakuliah.
4. Buatlah program PHP untuk menampilkan seluruh isi data Matakuliah, beri nama
file dengan Modul9_MenuMatakuliah.php
5. Buatlah form tambah matakuliah (Modul9_FormInsertMK.php)
6. Buatlah file php yang digunakan untuk Insert Matakuliah ke database dari data
yang dikirimkan soal Nomor 5 (Modul9_InsertMKDB.php)
7. Buatlah form yang digunakan untuk mengubah data matakuliah
(Modul9_FormUpdateMK.php)
8. Buatlah file php yang digunakan untuk update matakuliah ke database dari data
yang dikirimkan soal sebelumnya (Modul9_UpdateMKDB.php)
9. Buatlah file php yang digunakan untuk menghapus matakuliah
(Modul9_HapusMK.php)

57
Anggy Trisnadoli, S.S.T., M.T
Muhammad Mahrus Zain, S.S.T., M.T.I.

Anda mungkin juga menyukai