Database
Menciptakan Database
Karena semua tabel
disimpan dalam sebuah database, langkah pertama yang diperlukan adalah
menciptakannya, menggunakan statemen CREATE DATABASE:
mysql> CREATE DATABASE musik;
Query OK, 1 row affected (0.05 sec)
Selanjutnya, Anda
akan memilih database yang baru diciptakan sebagai database default untuk
dipakai pada perintah-perintah selanjutnya, menggunakan statemen USE:
mysql> USE musik;
Database changed
Menambahkan Tabel
Setelah Anda
menciptakan database, sekarang saatnya untuk menambahkan beberapa tabel ke
dalamnya. Perintah SQL untuk melakukannya adalah menggunakan statemen CREATE
TABLE, yang memerlukan nama tabel dan sebuah deskripsi detil mengenai tiap
bidang tabel. Berikut adalah contohnya:
mysql> CREATE TABLE artis (
-> id_artis INT(4)
NOT NULL PRIMARY KEY AUTO_INCREMENT,
-> nama_artis VARCHAR (50) NOT NULL,
-> negara_artis
CHAR (50) NOT NULL
-> );
Query OK, 0 rows affected (0.53 sec)
Sekarang, Anda
melanjutkan untuk menciptakan dua tabel lain menggunakan statemen-statemen SQL
berikut:
mysql> CREATE TABLE rating(
-> id_rating INT(2)
NOT NULL PRIMARY KEY,
-> nama_rating
VARCHAR(50) NOT NULL
-> );
Query OK, 0 rows affected (0.25 sec)
mysql> CREATE TABLE lagu(
-> id_lagu INT(4)
NOT NULL PRIMARY KEY AUTO_INCREMENT,
-> judul_lagu
VARCHAR(100) NOT NULL,
-> artis_lagu
INT(4) NOT NULL,
-> rating_lagu
INT(2) NOT NULL
-> );
Query OK, 0 rows affected (0.27 sec)
Menambahkan Rekaman
Penambahan sebuah
rekaman pada tabel merupakan hal mudah dengan memanggil statemen INSERT
menggunakan nilai-nilai yang diinginkan. Berikut adalah contoh, yang
menambahkan sebuah rekaman pada tabel artis untuk bidang id_artis, nama_artis,
dan negara_artis:
mysql> INSERT INTO artis(id_artis, nama_artis, negara_artis)
-> VALUES('1',
'AEROSMITH', 'US');
Query OK, 1 row affected (0.03 sec)
Karena bendera dari
bidang id_artis adalah AUTO_INCREMENT, maka Anda tidak perlu menetapkannya
secara eksplisit karena bidang tersebut terinkremen secara otomatis. Untuk
mendemonstrasikannya, Anda bisa menambahkan satu rekaman lain menggunakan
statemen berikut:
mysql> INSERT INTO artis(nama_artis, negara_artis)
-> VALUES('Abba',
'SE');
Query OK, 1 row affected (0.09 sec)
Dengan cara yang
sama, Anda bisa menambahkan beberapa rekaman pada tabel rating:
mysql> INSERT INTO rating (id_rating, nama_rating) VALUES (4,
'Baik');
Query OK, 1 row affected (0.05 sec)
mysql> INSERT INTO rating (id_rating, nama_rating) VALUES (5,
'Sangat Baik');
Query OK, 1 row affected (0.06 sec)
Anda juga bisa
menambahkan beberapa rekaman pada tabel lagu:
mysql> INSERT INTO lagu(judul_lagu, artis_lagu, rating_lagu)
-> VALUES('Janie\'s
Got A Gun', 1, 4);
Query OK, 1 row affected (0.06 sec)
mysql> INSERT INTO lagu(judul_lagu, artis_lagu, rating_lagu)
-> VALUES('Crazy',
1, 5);
Query OK, 1 row affected (0.05 sec)
mysql> INSERT INTO lagu (judul_lagu, artis_lagu, rating_lagu)
-> VALUES ('Dancing
Queen', 2, '5');
Query OK, 1 row affected (0.06 sec)
Mengeksekusi Query
Setelah data berada
di dalam database, sekarang Anda dapat melakukan sesuatu terhadapnya. SQL
dipakati untuk melakukan pencarian rekaman yang sesuai dengan kriteria spesifik
menggunakan statemen SELECT. Berikut adalah contohnya, yang menghasilkan semua
rekaman dari tabel artis:
mysql> SELECT id_artis, nama_artis FROM artis;
+----------+------------+
| id_artis | nama_artis |
+----------+------------+
| 1 |
AEROSMITH |
| 2 | Abba |
+----------+------------+
2 rows in set (0.03 sec)
Biasanya, Anda juga
ingin menambahkan beberapa filter pada query Anda, untuk mengurangi ukuran dari
himpunan hasil dan memastikan bahwa hasil hanya memuat rekaman-rekeman yang
sesuai dengan kriteria tertentu. Ini dapat dilakukan menggunakan klausa WHERE
pada statemen SELECT yang diikuti dengan satu atau lebih ekspresi kondisional.
Berikut adalah contohnya, yang mencantumkan artis yang berasal dari United
State:
mysql> SELECT id_artis, nama_artis FROM artis
-> WHERE
negara_artis = 'US';
+----------+------------+
| id_artis | nama_artis |
+----------+------------+
| 1 |
AEROSMITH |
+----------+------------+
1 row in set (0.05 sec)
Semua operator
perbandingan standar dalam PHP didukung oleh SQL. Contoh tersebut
mendemonstrasikan penggunaan operator ekualitas (=). Contoh berikutnya akan
mendemonstrasikan operator lebih-besar-atau-sama-dengan (>=) untuk
menampilkan semua lagu dengan rating lebih dari atau sama dengan 4:
mysql> SELECT judul_lagu, rating_lagu FROM lagu
-> WHERE
rating_lagu >= 4;
+-------------------+-------------+
| judul_lagu |
rating_lagu |
+-------------------+-------------+
| Janie's Got A Gun |
4 |
| Crazy | 5 |
| Dancing Queen | 5 |
+-------------------+-------------+
3 rows in set (0.00 sec)
Anda dapat
menggabungkan beberapa ekspresi kondisional menggunakan operator logikal AND,
OR, atau NOT. Berikut adalah contohnya, yang menampilkan semua artis dari US
atau SE:
mysql> SELECT nama_artis, negara_artis FROM artis
-> WHERE
negara_artis = 'US'
-> OR negara_artis
= 'SE';
+------------+--------------+
| nama_artis | negara_artis |
+------------+--------------+
| AEROSMITH | US |
| Abba | SE |
+------------+--------------+
2 rows in set (0.00 sec)
Membatasi Dan Mengurutkan
Query
Jika Anda ingin
melihat data dari sebuah tabel yang diurutkan berdasarkan bidang tertentu, maka
Anda bisa menggunakan klausa ORDER BY. Klausa ini dapat Anda pakai untuk mendefinisikan
nama bidang yang akan digunakan untuk mengurutkan (secara menaik atau secara
menurun). Berikut adalah sebuah contoh untuk menampilkan daftar lagu yang
diurutkan secara alfabetikal, menggunakan statemen SQL berikut:
mysql> SELECT judul_lagu FROM lagu
-> ORDER BY
judul_lagu;
+-------------------+
| judul_lagu |
+-------------------+
| Crazy |
| Dancing Queen |
| Janie's Got A Gun |
+-------------------+
3 rows in set (0.00 sec)
Untuk membalikkan
urutan judul lagu, Anda bisa menambahkan pemodifikasi DESC, seperti berikut:
mysql> SELECT judul_lagu FROM lagu
-> ORDER BY
judul_lagu DESC;
+-------------------+
| judul_lagu |
+-------------------+
| Janie's Got A Gun |
| Dancing Queen |
| Crazy |
+-------------------+
3 rows in set (0.00 sec)
SQL juga dapat Anda
pakai untuk membatasi berapa banyak rekaman yang akan ditampilkan menggunakan
katakunci LIMIT, yang menerima dua parameter: offset rekaman awal (dimulai dari
0) dan jumlah rekaman yang akan ditampilkan. Sebagai contoh, untuk menampilkan
baris 1-2 pada sebuah hasil query, Anda bisa menggunakan statemen berikut:
mysql> SELECT judul_lagu FROM lagu
-> ORDER BY
judul_lagu
-> LIMIT 0,2;
+---------------+
| judul_lagu |
+---------------+
| Crazy |
| Dancing Queen |
+---------------+
2 rows in set (0.00 sec)
Statemen SELECT juga
mendukung klausa LIKE, yang dapat dipakai untuk melakukan pencarian terhadap
bidang-bidang teks menggunakan wildcard. Ada dua jenis wildcard pada klausa
LIKE: karakter %, yang dipakai untuk menandai kemunculan nol atau lebih dari
sebuah karakter, dan karakter _, yang dipakai untuk menandai secara persis satu
kemunculan dari sebuah karakter. Contoh berikut mengilustrasikan klausa LIKE,
untuk melakukan pencarian terhadap karakter ‘g’ pada judul-judul lagu:
mysql> SELECT id_lagu, judul_lagu FROM lagu
-> WHERE judul_lagu
LIKE '%g%';
+---------+-------------------+
| id_lagu | judul_lagu
|
+---------+-------------------+
| 1 | Janie's Got A
Gun |
| 3 | Dancing
Queen |
+---------+-------------------+
2 rows in set (0.00 sec)
Menggabungkan Tabel
Sejauh ini, semua
query yang Anda telah lakukan dikonsentrasikan pada satu tabel. Tetapi SQL juga
dapat dipakai untuk melakukan query terhadap satu atau lebih tabel secara
bersamaan, dan menampilkan himpunan hasil gabungan. Berikut adalah sebuah
contoh penggabungan tabel lagu dan tabel artis menggunakan bidang id_artis
bersama (klausa WHERE dipakai untuk memetakan bidang-bidang bersama):
mysql> SELECT id_lagu, judul_lagu, nama_artis FROM lagu,
artis
-> WHERE
lagu.artis_lagu = artis.id_artis;
+---------+-------------------+------------+
| id_lagu | judul_lagu
| nama_artis |
+---------+-------------------+------------+
| 1 | Janie's Got A
Gun | AEROSMITH |
| 2 | Crazy | AEROSMITH |
| 3 | Dancing
Queen | Abba |
+---------+-------------------+------------+
3 rows in set (0.03 sec)
Memodifikasi Dan Menghapus
Rekaman
Sama seperti Anda
menambahkan rekaman ke dalam sebuah tabel menggunakan statemen INSERT, Anda
juga dapat menghapus rekaman menggunakan statemen DELETE. Umumnya, Anda dapat
memilih subhimpunan baris tertentu yang akan dihapus dengan menambahkan klausa
WHERE pada statemen DELETE, seperti contoh berikut yang menghapus semua lagu
dengan rating kurang dari atau sama dengan 3.
mysql> DELETE FROM lagu
-> WHERE
rating_lagu <= 3;
Query OK, 0 rows affected (0.03 sec)
Ada pula statemen
UPDATE, yang dapat digunakan untuk mengubah isi dari sebuah rekaman; Statemen
ini juga menerima klausa WHERE, sehingga Anda dapat menerapkan perubahan hanya
pada rekaman-rekaman yang cocok dengan kriteria tertentu. Perhatikan contoh
berikut, yang mengubah rating ‘Sangat Baik’ menjadi ‘Fantastis’:
mysql> UPDATE rating SET nama_rating = 'FANTASTIS'
-> WHERE
nama_rating = 'SANGAT BAIK';
Query OK, 1 row affected (0.06 sec)
Rows matched: 1 Changed:
1 Warnings: 0
Anda dapat pula
mengubah beberapa bidang sekaligus menggunakan koma. Berikut adalah sebuah
contoh yang memperbarui rekaman lagu tertentu dalam tabel lagu, mengubah judul
dan ratingnya.
mysql> UPDATE lagu SET judul_lagu = 'Waterloo',
-> rating_lagu = 3
-> WHERE id_lagu =
1;
Query OK, 1 row affected (0.06 sec)
Rows matched: 1 Changed:
1 Warnings: 0
Membaca Data Menggunakan PHP
Sekarang, Anda akan
membaca data dari PHP, menggunakan skrip berikut. Di sini, diasumsikan bahwa
nama user adalah ‘rismon’, password adalah ‘Dolokulu77’, dan database yang
digunakan adalah ‘musik’.
<?php
// mencoba terhubung ke database
$mysqli = new mysqli("localhost", "rismon",
"Dolokulu77", "musik");
if ($mysqli === false) {
die("ERROR: Tidak
bisa terhubung. " . mysqli_connect_error());
}
// mencoba untuk mengeksekusi query
// beriterasi pada himpunan hasil
// menampilkan tiap rekaman pada bidang-bidang
$sql = "SELECT id_artis, nama_artis FROM artis";
if ($hasil = $mysqli->query($sql)) {
if
($hasil->num_rows > 0) {
while($baris =
$hasil->fetch_array()) {
echo $baris[0]
. ":" . $baris[1] . "\n";
}
$hasil->close();
} else {
echo "Tidak ada
rekaman yang sesuai dengan query Anda.";
}
} else {
echo "ERROR:
Tidak bisa mengeksekusi $sql. " . $mysqli->error;
}
// menutup koneksi
$mysqli->close();
?>
Membaca Data Menggunakan PHP
Kasus sebelumnya
mendemonstrasikan pemrosesan hasil menggunakan metode fetch_array() dari objek
MySQLi_Result. Metode ini menghasilkan tiap rekaman dari himpunan hasil sebagai
sebuah array yang memuat kedua kunci berindeks numerik dan kunci berindeks
string. Hal ini untuk memudahkan pengembang agar dapat mengakses tiap rekaman
pada bidang tertentu menggunakan indeks maupun nama bidang.
Skrip berikut, yang
sama dengan kasus sebelumnya, melakukan pekerjaan pembacaan yang sama
menggunakan nama bidang:
<?php
// mencoba terhubung ke database
$mysqli = new mysqli("localhost", "rismon",
"Dolokulu77", "musik");
if ($mysqli === false) {
die("ERROR: Tidak
bisa terhubung. " . mysqli_connect_error());
}
// mencoba untuk mengeksekusi query
// beriterasi pada himpunan hasil
// menampilkan tiap rekaman pada bidang-bidang
$sql = "SELECT id_artis, nama_artis FROM artis";
if ($hasil = $mysqli->query($sql)) {
if
($hasil->num_rows > 0) {
while($baris =
$hasil->fetch_array()) {
echo
$baris['id_artis'] . ":" . $baris['nama_artis'] . "\n";
}
$hasil->close();
} else {
echo "Tidak
ada rekaman yang cocok dengan query Anda.";
}
} else {
echo "ERROR:
Tidak dapat mengeksekusi $sql. " . $mysqli->error;
}
// menutup koneksi
$mysqli->close();
?>
Skrip berikut
merupakan cara ketiga dalam membaca rekaman. Tiap rekaman di sini diperlakukan
sebagai objek, menggunakan metode fetch_object().
<?php
// mencoba terhubung ke database
$mysqli = new mysqli("localhost", "rismon",
"Dolokulu77", "musik");
if ($mysqli === false) {
die("ERROR: Tidak
bisa terhubung. " . mysqli_connect_error());
}
// mencoba untuk mengeksekusi query
// beriterasi pada himpunan hasil
// menampilkan tiap rekaman pada bidang-bidang
$sql = "SELECT id_artis, nama_artis FROM artis";
if ($hasil = $mysqli->query($sql)) {
if
($hasil->num_rows > 0) {
while($baris =
$hasil->fetch_object()) {
echo
$baris->id_artis . ":" . $baris->nama_artis . "\n";
}
$hasil->close();
} else {
echo "Tidak
ada rekaman yang cocok dengan query Anda.";
}
} else {
echo "ERROR:
Tidak dapat mengeksekusi $sql. " . $mysqli->error;
}
// menutup koneksi
$mysqli->close();
?>
Menambah Atau Memodifikasi
Data Menggunakan PHP
Contoh berikut
menambahkan sebuah rekaman baru pada tabel artis.
<?php
// tambah_data.php
// mencoba terhubung ke database
$mysqli = new mysqli("localhost", "rismon",
"Dolokulu77", "musik");
if ($mysqli === false) {
die("ERROR: Tidak
bisa terhubung. " . mysqli_connect_error());
}
// mencoba mengeksekusi query
// menambah sebuah rekaman baru
$sql = "INSERT INTO artis (nama_artis, negara_artis) VALUES
('Kylie Minogue', 'AU')";
if ($mysqli->query($sql) === true) {
echo 'Artis baru
dengan id:' . $mysqli->insert_id . ' ditambahkan.';
} else {
echo "ERROR:
Tidak dapat mengeksekusi query: $sql. " . $mysqli->error;
}
// menutup koneksi
$mysqli->close();
?>
Bagaimana dengan
memperbarui rekaman yang telah ada? Yang Anda perlukan adalah mengubah string
query SQL:
<?php
// perbarui_data.php
// mencoba terhubung ke database
$mysqli = new mysqli("localhost", "rismon",
"Dolokulu77", "musik");
if ($mysqli === false) {
die("ERROR: Tidak
bisa terhubung. " . mysqli_connect_error());
}
// mencoba mengeksekusi query
// memperbarui sebuah rekaman
$sql = "UPDATE artis SET
nama_artis = 'Eminem', negara_artis = 'US' WHERE
id_artis = 3";
if ($mysqli->query($sql) === true) {
echo
$mysqli->affected_rows . ' diperbarui.';
} else {
echo "ERROR:
Tidak dapat mengeksekusi query: $sql. " . $mysqli->error;
}
// menutup koneksi
$mysqli->close();
?>
Menyisipkan Data Menggunakan
PHP
Perhatikan skrip
berikut, yang menyisipkan beberapa lagu ke dalam database menggunakan ekstensi
MySQLi:
<?php
// tambah beberapa_data.php
// mendefinisikan nilai-nilai yang akan disisipkan
$lagu = array(
array('Patience', 4,
3),
array('Beautiful
World', 4, 4),
array('Shine', 4, 4),
array('Hold On', 4,
3),
);
// mencoba terhubung ke database
$mysqli = new mysqli("localhost", "rismon",
"Dolokulu77", "musik");
if ($mysqli === false) {
die("ERROR: Tidak
bisa terhubung. " . mysqli_connect_error());
}
// mempersiapkan template query
// mengeksekusi beberapa kali
$sql = "INSERT INTO lagu (judul_lagu, artis_lagu,
rating_lagu)
VALUES (?, ?, ?)";
if ($stmt = $mysqli->prepare($sql)) {
foreach ($lagu as $s)
{
$stmt->bind_param('sii', $s[0], $s[1], $s[2]);
if
($stmt->execute()) {
echo "Lagu baru dengan id: " . $mysqli->insert_id .
" ditambahkan.\n";
} else {
echo "ERROR:
Tidak dapat mengeksekusi query: $sql. " . $mysqli->error;
}
}
} else {
echo "ERROR: Tidak dapat mengeksekusi query: $sql. " .
$mysqli->error;
}
// menutup koneksi
$mysqli->close();
?>
Projek: Menambahkan Beberapa
Karyawan Ke Dalam Database
Untuk memulai
aplikasi ini, Anda perlu menjalankan perintah-perintah MySQL berikut:
mysql> CREATE DATABASE karyawan;
Query OK, 1 row affected (0.00 sec)
mysql> USE karyawan;
Database changed
mysql> CREATE TABLE karyawan (
-> id INT(4) NOT
NULL AUTO_INCREMENT PRIMARY KEY,
-> nama
VARCHAR(255) NOT NULL,
-> jabatan
VARCHAR(255) NOT NULL
-> );
Query OK, 0 rows affected (0.28 sec)
Setelah selesai,
langkah berikutnya adalah membuat suatu form Web untuk menerima data karyawan.
Pada kasus ini, setiap nama dan jabatan karyawab. Pada submisi, pemroses form
akan memeriksa masukan dan, jika valid, akan menghasilkan sebuah query INSERT
untuk menuliskannya ke dalam tabel database yang telah diciptakan. Berikut
skrip dengan nama karyawan.php:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xml:lang="en" lang="en">
<head>
<title>Projek:
Menempatkan Data Karyawan Ke dalam Database</title>
<style
type="text/css">
div#pesan {
text-align:center;
margin-left:auto;
margin-right:auto;
width:40%;
border: solid 2px
green
}
</style>
</head>
<body>
<h2>Projek:
Menempatkan Data Karyawan Ke dalam Database</h2>
<h3>Menambahkan
Karyawan Baru</h3>
<?php
// jika form disubmit
// proses masukan form
if (isset($_POST['submit'])) {
// mencoba terhubung
ke database
$mysqli = new
mysqli("localhost", "rismon", "Dolokulu77",
"karyawan");
if ($mysqli === false)
{
die("ERROR:
Tidak bisa terhubung. " . mysqli_connect_error());
}
// membuka blok pesan
echo '<div
id="pesan">';
// membaca dan
memeriksan nilai-nilai masukan
$errorMasukan = false;
if (empty($_POST['nama_kar']))
{
echo 'ERROR:
Silahkan masukkan nama karyawan yang valid';
$errorMasukan =
true;
} else {
$nama =
$mysqli->escape_string($_POST['nama_kar']);
}
if ($errorMasukan !=
true && empty($_POST['jab_kar'])) {
echo 'ERROR: Silahkan masukkan jabatan
karyawan yang valid';
$errorMasukan =
true;
} else {
$jabatan =
$mysqli->escape_string($_POST['jab_kar']);
}
// menambahkan
nilai-nilai ke database menggunakan query INSERT
if ($errorMasukan !=
true) {
$sql =
"INSERT INTO karyawan (nama, jabatan)
VALUES ('$nama',
'$jabatan')";
if
($mysqli->query($sql) === true) {
echo 'Rekaman
karyawan baru ditambahkan dengan ID: ' . $mysqli->insert_id;
} else {
echo "ERROR:
Tidak bisa mengeksekusi query: $sql. " . $mysqli->error;
}
}
// menutup blok pesan
echo '</div>';
// menutup koneksi
$mysqli->close();
}
?>
</div>
<form
action="karyawan.php" method="POST">
Nama karyawan:
<br />
<input
type="text" name="nama_kar" size="40" />
<p/>
Jabatan karyawan:
<br />
<input
type="text" name="jab_kar" size="40" />
<p/>
<input
type="submit" name="submit" value="Submit" />
</form>
</body>
</html>
Anda melihat bahwa
hal tersebut merupakan pekerjaan yang mudah. Sekarang, Anda akan merevisi skrip
tersebut, sehingga, di samping untuk menambahkan karyawan baru ke dalam
database, skrip yang direvisi ini juga akan menampilkan tiap rekaman dari
database.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
Transitional//EN"
"DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xml:lang="en" lang="en">
<head>
<title>Projek:
Menempatkan Data Karyawan Ke dalam Database</title>
<style
type="text/css">
div#pesan {
text-align:center;
margin-left:auto;
margin-right:auto;
width:40%;
border: solid 2px
green
}
</style>
</head>
<body>
<h2>Projek:
Menempatkan Data Karyawan Ke dalam Database</h2>
<h3>Menambahkan
Karyawan Baru</h3>
<?php
// mencoba terhubung ke database
$mysqli = new mysqli("localhost", "rismon",
"Dolokulu77", "karyawan");
if ($mysqli === false) {
die("ERROR: Tidak
bisa terhubung. " . mysqli_connect_error());
}
// jika form disubmit
// proses masukan form
if (isset($_POST['submit'])) {
// membuka blok pesan
echo '<div
id="pesan">';
// membaca dan
memeriksan nilai-nilai masukan
$errorMasukan = false;
if
(empty($_POST['nama_kar'])) {
echo 'ERROR:
Silahkan masukkan nama karyawan yang valid';
$errorMasukan =
true;
} else {
$nama =
$mysqli->escape_string($_POST['nama_kar']);
}
if ($errorMasukan !=
true && empty($_POST['jab_kar'])) {
echo 'ERROR:
Silahkan masukkan jabatan karyawan yang valid';
$errorMasukan =
true;
} else {
$jabatan =
$mysqli->escape_string($_POST['jab_kar']);
}
// menambahkan
nilai-nilai ke database menggunakan query INSERT
if ($errorMasukan !=
true) {
$sql =
"INSERT INTO karyawan (nama, jabatan)
VALUES ('$nama',
'$jabatan')";
if
($mysqli->query($sql) === true) {
echo 'Rekaman
karyawan baru ditambahkan dengan ID: ' . $mysqli->insert_id;
} else {
echo
"ERROR: Tidak bisa mengeksekusi query: $sql. " . $mysqli->error;
}
}
// menutup blok pesan
echo '</div>';
}
?>
</div>
<form
action="karyawan_baru.php" method="POST">
Nama karyawan: <br
/>
<input
type="text" name="nama_kar" size="40" />
<p/>
Jabatan karyawan:
<br />
<input
type="text" name="jab_kar" size="40" />
<p/>
<input
type="submit" name="submit" value="Submit" />
</form>
<h3>Daftar Karyawan</h3>
<?php
// membaca rekaman
// diformat sebagai
tabel HTML
$sql = "SELECT
id, nama, jabatan FROM karyawan";
if ($hasil =
$mysqli->query($sql)) {
if
($hasil->num_rows > 0) {
echo
"<table>\n";
echo "
<tr class=\"heading\">\n";
echo "
<td>ID</td>\n";
echo "
<td>Nama</td>\n";
echo "
<td>Jabatan</td>\n";
echo "
</tr>\n";
while($baris =
$hasil->fetch_object()) {
echo
" <tr>\n";
echo "
<td>" . $baris->id . "</td>\n";
echo "
<td>" . $baris->nama . "</td>\n";
echo "
<td>" . $baris->jabatan . "</td>\n";
echo "
</tr>\n";
}
echo
"</table>";
$hasil->close();
} else {
echo
"Tidak ada karyawan dalam database.";
}
} else {
echo "ERROR:
Tidak dapat mengeksekusi query: $sql. " . $mysqli->error;
}
// menutup koneksi
$mysqli->close();
?>
</body>
</html>
No comments:
Post a Comment