Selamat Pagi,
Kali ini kita berada di matakuliah Pemrograman Web PHP, pertemuan kesepuluh besama saya Ian Lubis.
Pokok pembahasan kita kali ini ialah lanjutan dari pertemuan sebelumnya yaitu php mysql database. Pada sesi ini, kita akan membahas konsep ADD, EDIT, DELETE.
Untuk itu silahkan siapkan table berikut.
CREATE TABLE `teman` (
`id` int(3) NOT NULL auto_increment,
`nama` varchar(100) NOT NULL,
`jenis_kelamin` enum('pria','wanita') NOT NULL,
`alamat` text NOT NULL,
`umur` int(2) NOT NULL,
`pendidikan` varchar(20) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
INSERT INTO `teman` VALUES (null, 'Dwi Artini', 'wanita', 'Surabaya', '22', 'S1'); INSERT INTO `teman` VALUES (null, 'Budi', 'pria', 'Banyuwangi', '23', 'SMA'); INSERT INTO `teman` VALUES (null, 'Septiani', 'wanita', 'Denpasar', '28', 'S2'); INSERT INTO `teman` VALUES (null, 'Andika', 'pria', 'Jakarata', '24', 'S1'); INSERT INTO `teman` VALUES (null, 'Suprapto', 'pria', 'Semarang', '21', 'SMA');
Add New/ Tambah Row Baru
<form method="POST" action="">
<?php
$link = mysql_connect('localhost', 'root', 'password')
or die('Tidak bisa connect dengan server mysql: ' . mysql_error());
mysql_select_db('pemrogramanweb') or die('Tidak bisa connect dengan database');
if(!ISSET($_POST[kirim])){
?>
<table>
<tr>
<td>Nama</td>
<td><input type="text" name="nama"></td>
</tr>
<tr>
<td>Jenis Kelamin</td>
<td><select name="jk">
<option value="pria">pria</option>
<option value="wanita">wanita</option>
</select>
</td>
</tr>
<tr>
<td>Kota</td>
<td><input type="text" name="kota"></td>
</tr>
<tr>
<td>Umur</td>
<td><input type="text" name="umur"></td>
</tr>
<tr>
<td>Pendidikan</td>
<td><input type="radio" name="pendidikan" value="SD">SD
<input type="radio" name="pendidikan" value="SMP">SMP
<input type="radio" name="pendidikan" value="SMA">SMA
<input type="radio" name="pendidikan" value="S1">S1
<input type="radio" name="pendidikan" value="S2">S2
</td>
</tr>
<tr>
<td></td>
<td><input type="submit" name="kirim" value="simpan"></td>
</tr>
</table>
<?
} else {
$sql = mysql_query("INSERT INTO `teman` VALUES (null, '".$_POST[nama]."', '".$_POST[jk]."', '".$_POST[kota]."', '".$_POST[umur]."', '".$_POST[pendidikan]."')");
echo "<b>data telah tersimpan.</b>";
echo "<br />";
}
echo "<table border=\"1\">\n";
$result = mysql_query("SELECT * FROM `teman`");
while ($l = mysql_fetch_array($result)) {
echo "\t<tr>\n";
echo " <td>".$l[id]."</td>\n";
echo " <td>".$l[nama]."</td>\n";
echo " <td>".$l[jenis_kelamin]."</td>\n";
echo " <td>".$l[alamat]."</td>\n";
echo " <td>".$l[umur]."</td>\n";
echo " <td>".$l[pendidikan]."</td>\n";
echo "\t</tr>\n";
}
echo "</table>\n";
?>
</form>
Terlihat disana, setelah anda menekan tombol “simpan” maka PHP akan menjalankan printah SQL untuk menyimpan data pada table dan langsung di tampilkan.
UPDATE ROW
<?php
$link = mysql_connect('localhost', 'root', 'password')
or die('Tidak bisa connect dengan server mysql: ' . mysql_error());
mysql_select_db('pemrogramanweb') or die('Tidak bisa connect dengan database');
if(!ISSET($_GET[edit])){
echo "<table border=\"1\">\n";
$result = mysql_query("SELECT * FROM `teman`");
while ($l = mysql_fetch_array($result)) {
echo "\t<tr>\n";
echo " <td>".$l[id]."</td>\n";
echo " <td>".$l[nama]."</td>\n";
echo " <td>".$l[jenis_kelamin]."</td>\n";
echo " <td>".$l[alamat]."</td>\n";
echo " <td>".$l[umur]."</td>\n";
echo " <td>".$l[pendidikan]."</td>\n";
echo " <td><a href=\"?edit=".$l[id]."\">Edit</a></td>\n";
echo "\t</tr>\n";
}
echo "</table>\n";
} else {
if(!ISSET($_POST[kirim])){
$sql = mysql_query("SELECT * FROM `teman` WHERE `id` = '".$_GET[edit]."' LIMIT 1");
$q = mysql_fetch_array($sql);
?>
<form method="POST" action="">
<table>
<tr>
<td>Nama</td>
<td><input type="text" name="nama" value="<?php echo $q[nama]; ?>"></td>
</tr>
<tr>
<td>Jenis Kelamin</td>
<td><select name="jk">
<option value="<?php echo $q[jenis_kelamin]; ?>"><?php echo $q[jenis_kelamin]; ?></option>
<option value="pria">pria</option>
<option value="wanita">wanita</option>
</select>
</td>
</tr>
<tr>
<td>Kota</td>
<td><input type="text" name="kota" value="<?php echo $q[alamat]; ?>"></td>
</tr>
<tr>
<td>Umur</td>
<td><input type="text" name="umur" value="<?php echo $q[umur]; ?>"></td>
</tr>
<tr>
<td>Pendidikan</td>
<td><input type="radio" name="pendidikan" checked value="<?php echo $q[pendidikan]; ?>"><?php echo $q[pendidikan]; ?>
<input type="radio" name="pendidikan" value="SD">SD
<input type="radio" name="pendidikan" value="SMP">SMP
<input type="radio" name="pendidikan" value="SMA">SMA
<input type="radio" name="pendidikan" value="S1">S1
<input type="radio" name="pendidikan" value="S2">S2
</td>
</tr>
<tr>
<td></td>
<td><input type="submit" name="kirim" value="simpan"></td>
</tr>
</table>
</form>
<?
} else {
$sql = mysql_query("UPDATE `teman` SET `nama` = '".$_POST[nama]."', `jenis_kelamin` = '".$_POST[jk]."', `alamat` = '".$_POST[kota]."', `umur` = '".$_POST[umur]."', `pendidikan` = '".$_POST[pendidikan]."' WHERE `id` = '".$_GET[edit]."' LIMIT 1");
echo "<b>data telah diperbaharui.</b>";
echo "<br />";
echo "<table border=\"1\">\n";
$result = mysql_query("SELECT * FROM `teman`");
while ($l = mysql_fetch_array($result)) {
echo "\t<tr>\n";
echo " <td>".$l[id]."</td>\n";
echo " <td>".$l[nama]."</td>\n";
echo " <td>".$l[jenis_kelamin]."</td>\n";
echo " <td>".$l[alamat]."</td>\n";
echo " <td>".$l[umur]."</td>\n";
echo " <td>".$l[pendidikan]."</td>\n";
echo " <td><a href=\"?edit=".$l[id]."\">Edit</a></td>\n";
echo "\t</tr>\n";
}
echo "</table>\n";
}
}
?>
Pada contoh scripts update di atas, saya menggunakan kombinasi penggunaan struktur kontrol percabangan sebanyak dua kali.
Pertama, scripts menanyakan apakah saat ini posisi sedang melakukan edit atau tidak, jika tidak, maka dia akan menampilkan isi dari table `teman` jika tidak dia akan menuju kondisi berikutnya ialah kondisi update.
Pada kondisi update, dia akan menanyakan kembali, apakah saat ini kondisi update telah terpenuhi atau tidak?, jika tidak dia akan menampilkan form edit, jika telah terpenuhi dia akan meng-eksekusi dari form update tersebut.
Logika Update: pertama, kita tentukan nama table yang akan di update, lalu kita masukan field apa saja yang akan di update beserta query updatenya, lalu tunjuk primary key dari row tersebut.
Sangat mudah bukan…
Anda dapat memanipulasinya sesuai dengan style anda.
DELETE ROW
Untuk melakukan delete, sangatlah mudah, kita hanya membutuhkan sebuah primary key dari row yang akan kita delete. Contoh.
<?php
$link = mysql_connect('localhost', 'root', 'password')
or die('Tidak bisa connect dengan server mysql: ' . mysql_error());
mysql_select_db('pemrogramanweb') or die('Tidak bisa connect dengan database');
if(ISSET($_GET[delete])){
$sql = mysql_query("DELETE FROM `teman` WHERE `id` = '".$_GET[delete]."'");
echo "<b>data telah dihapus.</b>";
echo "<br />";
}
echo "<table border=\"1\">\n";
$result = mysql_query("SELECT * FROM `teman`");
while ($l = mysql_fetch_array($result)) {
echo "\t<tr>\n";
echo " <td>".$l[id]."</td>\n";
echo " <td>".$l[nama]."</td>\n";
echo " <td>".$l[jenis_kelamin]."</td>\n";
echo " <td>".$l[alamat]."</td>\n";
echo " <td>".$l[umur]."</td>\n";
echo " <td>".$l[pendidikan]."</td>\n";
echo " <td><a href=\"?delete=".$l[id]."\">Delete</a></td>\n";
echo "\t</tr>\n";
}
echo "</table>\n";
?>
Terima kasih atas pertemuan kali ini.
Salam
Downloadn Materi












Terimakasih pembahasan dan penjelasan php mysql
mantab bang, kalau pake OOP Gimana??
terima kasih ilmunya, ada training yang lebih dalam lagi nggak bang Ian?
kapan2 main ke kantor ya…
http://www.xinergi.net Bali Internet Marketing and Business Center
Thanks gan infonya