Agan-agan smw tutorial kali ini masih terkait dengan proses editing data melalui form yang langsung terintegrasi dengan database MySQL. Masalah yang diangkat pada tutorial ini adalah bagaimana membuat script PHP untuk mengedit data melalui form menggunakan komponen RadioButton. Seperti yang kita tahu bahwa komponen RadioButton digunakan untuk memilih salah satu dari beberapa pilihan yang ada. Nah… yang jadi pertanyaan, bagaimana cara mengimplementasikannya dalam aplikasi edit data dengan form ?
So… hal ini akan dibahas tuntas pada tutorial kali ini.
Untuk studi kasus, kita mengambil contoh data mahasiswa yang terdiri dari NIM, NAMA MHS dan JENIS KELAMIN. Komponen RadioButton akan digunakan untuk mengubah JENIS KELAMIN ini.
Sumber: http://blog.rosihanari.net/script-php-untuk-edit-data-dengan-komponen-radiobutton-pada-form
Berikut ini adalah struktur tabel yang digunakan pada contoh ini
CREATE TABLE mhs (
nim varchar(10),
namaMhs varchar(30),
jnsKelamin varchar(20),
PRIMARY KEY (nim)
)
dengan sampel data sbb:
INSERT INTO mhs VALUES (‘M0197001′, ‘ULLYA MEGA WAHYUNI’, ‘Wanita’);
INSERT INTO mhs VALUES (‘M0197002′, ‘ORI ADRIAN’, ‘Pria’);
INSERT INTO mhs VALUES (‘M0197003′, ‘PUTRA ADYTIA.’, ‘Pria’);
INSERT INTO mhs VALUES (‘M0197004′, ‘UYHA HIKARI’, ‘Wanita’);
Sebelum kita lanjutkan tutorial ini, ada baiknya Anda lihat terlebih dahulu preview dari hasil script yang akan kita buat.
Apabila kita perhatikan pada form proses edit, khususnya pada JENIS KELAMIN, maka RadioButton akan melakukan CHECKED sesuai dengan data. Sebagai contoh, misalkan kita akan mengedit mahasiswa bernama Rosihan Ari yang berjenis kelamin PRIA, maka begitu link EDIT diklik, akan muncul form edit dengan RadioButton langsung men-CHECKED pada PRIA.
Bagaimana membuat hal seperti tersebut di atas? Perhatikan script PHP berikut ini… dan ingat… jangan hanya asal copy and paste lalu jadi… tapi perhatikan komentar-komentarnya, karena komentar tersebut akan membantu Anda untuk mempelajari alur script.
<?php
// koneksi ke mysql
mysql_connect(“namahost”, “dbuser”, “dbpass”);
mysql_select_db(“dbname”);
// mendapatkan nilai dari parameter ‘op’ dari link
$op = $_GET['op'];
// bagian untuk proses edit
if ($op == “edit”)
{
// membaca nilai dari parameter ‘nim’ dari link
$nim = $_GET['nim'];
// query untuk menampilkan data mahasiswa dengan
// nim tertentu yang akan diedit via form
$query = “SELECT * FROM mhs WHERE nim = ‘$nim‘”;
$hasil = mysql_query($query);
$data = mysql_fetch_array($hasil);
// setting untuk radio button jenis kelamin
// jika jenis kelamin pria, maka radiobutton pria dicek
if ($data['jnsKelamin'] == “Pria”)
{
$option1 = “<input type=\”radio\” name=\”sex\”
value=\”Pria\” checked>”;
$option2 = “<input type=\”radio\” name=\”sex\”
value=\”Wanita\”>”;
}
// jika jenis kelamin wanita, maka radiobutton wanita
// dicek
else if ($data['jnsKelamin'] == “Wanita”)
{
$option1 = “<input type=\”radio\” name=\”sex\”
value=\”Pria\”>”;
$option2 = “<input type=\”radio\” name=\”sex\”
value=\”Wanita\” checked>”;
}
// menampilkan data hasil query pada form edit
echo “<form method=\”post\” action=\”“.$_SERVER['PHP_SELF'].
“?op=update\”>”;
echo “<table border=\”1\”>”;
// menampilkan komponen edit data berisi nim
echo “<tr>
<td>NIM</td>
<td><input type=\”text\” name=\”nim\”
value=\”“.$data['nim'].”\”></td>
</tr>”;
// menampilkan komponen edit data berisi nama mhs
echo “<tr>
<td>Nama Mahasiswa</td>
<td>
<input type=\”text\” name=\”namaMhs\”
value=\”“.$data['namaMhs'].”\”>
</td>
</tr>”;
// menampilkan radiobutton edit untuk jenis kelamin
echo “<tr>
<td>Jenis Kelamin</td>
<td>Pria “.$option1.” Wanita “.$option2.”</td>
</tr>”;
echo “</table>”;
// komponen hidden berisi nim lama yang akan digunakan
// untuk kriteria dalam query update
echo “<input type=\”hidden\” name=\”nimLama\”
value=\”“.$data['nim'].”\”>”;
// menampilkan tombol submit
echo “<input type=\”submit\” name=\”submit\”
value=\”Simpan Perubahan\”>”;
echo “</form>”;
}
// proses update data setelah data diedit
else if ($op == “update”)
{
// membaca nim dari form edit
$nim = $_POST['nim'];
// membaca nama mahasiswa dari form edit
$namaMhs = $_POST['namaMhs'];
// membaca nim lama mhs dari form edit
$nimLama = $_POST['nimLama'];
// membaca jenis kelamin mhs dari form edit
$sex = $_POST['sex'];
// query update data
$query = “UPDATE mhs
SET nim = ‘$nim‘, namaMhs = ‘$namaMhs‘,
jnsKelamin = ‘$sex‘
WHERE nim = ‘$nimLama‘”;
$hasil = mysql_query($query);
// menampilkan status update
if ($hasil) echo “<p>Proses Update Sukses</p>”;
else echo “<p>Proses Update Gagal</p>”;
}
?>
<!— header tabel –>
<table border=”1″>
<tr>
<th>No</th>
<th>NIM</th>
<th>Nama Mahasiswa</th>
<th>Jenis Kelamin</th>
<th>Action</th>
</tr>
<?php
// nilai awal untuk no urut data dalam tabel
$no = 1;
// query untuk menampilkan semua data mahasiswa
$query = “SELECT * FROM mhs”;
$hasil = mysql_query($query);
while ($data = mysql_fetch_array($hasil))
{
echo “<tr>”;
// menampilkan no. urut data
echo “<td>”.$no.”</td>”;
// menampilkan nim mhs
echo “<td>”.$data['nim'].”</td>”;
// menampilkan nama mahasiswa
echo “<td>”.$data['namaMhs'].”</td>”;
// menampilkan jenis kelamin mhs
echo “<td>”.$data['jnsKelamin'].”</td>”;
// menampilkan link untuk proses edit
echo “<td>
<a href=\”“.$_SERVER['PHP_SELF'].
“?op=edit&nim=”.$data['nim'].”\”>
Edit
</a>
</td>”;
echo “</tr>”;
// increment untuk no. urut
$no++;
}
?>
</table>
dah tau kn gimana cara ng'bikin ny.... Selamat Mencoba ^^v
So… hal ini akan dibahas tuntas pada tutorial kali ini.
Untuk studi kasus, kita mengambil contoh data mahasiswa yang terdiri dari NIM, NAMA MHS dan JENIS KELAMIN. Komponen RadioButton akan digunakan untuk mengubah JENIS KELAMIN ini.
Sumber: http://blog.rosihanari.net/script-php-untuk-edit-data-dengan-komponen-radiobutton-pada-form
Berikut ini adalah struktur tabel yang digunakan pada contoh ini
CREATE TABLE mhs (
nim varchar(10),
namaMhs varchar(30),
jnsKelamin varchar(20),
PRIMARY KEY (nim)
)
dengan sampel data sbb:
INSERT INTO mhs VALUES (‘M0197001′, ‘ULLYA MEGA WAHYUNI’, ‘Wanita’);
INSERT INTO mhs VALUES (‘M0197002′, ‘ORI ADRIAN’, ‘Pria’);
INSERT INTO mhs VALUES (‘M0197003′, ‘PUTRA ADYTIA.’, ‘Pria’);
INSERT INTO mhs VALUES (‘M0197004′, ‘UYHA HIKARI’, ‘Wanita’);
Sebelum kita lanjutkan tutorial ini, ada baiknya Anda lihat terlebih dahulu preview dari hasil script yang akan kita buat.
Apabila kita perhatikan pada form proses edit, khususnya pada JENIS KELAMIN, maka RadioButton akan melakukan CHECKED sesuai dengan data. Sebagai contoh, misalkan kita akan mengedit mahasiswa bernama Rosihan Ari yang berjenis kelamin PRIA, maka begitu link EDIT diklik, akan muncul form edit dengan RadioButton langsung men-CHECKED pada PRIA.
Bagaimana membuat hal seperti tersebut di atas? Perhatikan script PHP berikut ini… dan ingat… jangan hanya asal copy and paste lalu jadi… tapi perhatikan komentar-komentarnya, karena komentar tersebut akan membantu Anda untuk mempelajari alur script.
<?php
// koneksi ke mysql
mysql_connect(“namahost”, “dbuser”, “dbpass”);
mysql_select_db(“dbname”);
// mendapatkan nilai dari parameter ‘op’ dari link
$op = $_GET['op'];
// bagian untuk proses edit
if ($op == “edit”)
{
// membaca nilai dari parameter ‘nim’ dari link
$nim = $_GET['nim'];
// query untuk menampilkan data mahasiswa dengan
// nim tertentu yang akan diedit via form
$query = “SELECT * FROM mhs WHERE nim = ‘$nim‘”;
$hasil = mysql_query($query);
$data = mysql_fetch_array($hasil);
// setting untuk radio button jenis kelamin
// jika jenis kelamin pria, maka radiobutton pria dicek
if ($data['jnsKelamin'] == “Pria”)
{
$option1 = “<input type=\”radio\” name=\”sex\”
value=\”Pria\” checked>”;
$option2 = “<input type=\”radio\” name=\”sex\”
value=\”Wanita\”>”;
}
// jika jenis kelamin wanita, maka radiobutton wanita
// dicek
else if ($data['jnsKelamin'] == “Wanita”)
{
$option1 = “<input type=\”radio\” name=\”sex\”
value=\”Pria\”>”;
$option2 = “<input type=\”radio\” name=\”sex\”
value=\”Wanita\” checked>”;
}
// menampilkan data hasil query pada form edit
echo “<form method=\”post\” action=\”“.$_SERVER['PHP_SELF'].
“?op=update\”>”;
echo “<table border=\”1\”>”;
// menampilkan komponen edit data berisi nim
echo “<tr>
<td>NIM</td>
<td><input type=\”text\” name=\”nim\”
value=\”“.$data['nim'].”\”></td>
</tr>”;
// menampilkan komponen edit data berisi nama mhs
echo “<tr>
<td>Nama Mahasiswa</td>
<td>
<input type=\”text\” name=\”namaMhs\”
value=\”“.$data['namaMhs'].”\”>
</td>
</tr>”;
// menampilkan radiobutton edit untuk jenis kelamin
echo “<tr>
<td>Jenis Kelamin</td>
<td>Pria “.$option1.” Wanita “.$option2.”</td>
</tr>”;
echo “</table>”;
// komponen hidden berisi nim lama yang akan digunakan
// untuk kriteria dalam query update
echo “<input type=\”hidden\” name=\”nimLama\”
value=\”“.$data['nim'].”\”>”;
// menampilkan tombol submit
echo “<input type=\”submit\” name=\”submit\”
value=\”Simpan Perubahan\”>”;
echo “</form>”;
}
// proses update data setelah data diedit
else if ($op == “update”)
{
// membaca nim dari form edit
$nim = $_POST['nim'];
// membaca nama mahasiswa dari form edit
$namaMhs = $_POST['namaMhs'];
// membaca nim lama mhs dari form edit
$nimLama = $_POST['nimLama'];
// membaca jenis kelamin mhs dari form edit
$sex = $_POST['sex'];
// query update data
$query = “UPDATE mhs
SET nim = ‘$nim‘, namaMhs = ‘$namaMhs‘,
jnsKelamin = ‘$sex‘
WHERE nim = ‘$nimLama‘”;
$hasil = mysql_query($query);
// menampilkan status update
if ($hasil) echo “<p>Proses Update Sukses</p>”;
else echo “<p>Proses Update Gagal</p>”;
}
?>
<!— header tabel –>
<table border=”1″>
<tr>
<th>No</th>
<th>NIM</th>
<th>Nama Mahasiswa</th>
<th>Jenis Kelamin</th>
<th>Action</th>
</tr>
<?php
// nilai awal untuk no urut data dalam tabel
$no = 1;
// query untuk menampilkan semua data mahasiswa
$query = “SELECT * FROM mhs”;
$hasil = mysql_query($query);
while ($data = mysql_fetch_array($hasil))
{
echo “<tr>”;
// menampilkan no. urut data
echo “<td>”.$no.”</td>”;
// menampilkan nim mhs
echo “<td>”.$data['nim'].”</td>”;
// menampilkan nama mahasiswa
echo “<td>”.$data['namaMhs'].”</td>”;
// menampilkan jenis kelamin mhs
echo “<td>”.$data['jnsKelamin'].”</td>”;
// menampilkan link untuk proses edit
echo “<td>
<a href=\”“.$_SERVER['PHP_SELF'].
“?op=edit&nim=”.$data['nim'].”\”>
Edit
</a>
</td>”;
echo “</tr>”;
// increment untuk no. urut
$no++;
}
?>
</table>
dah tau kn gimana cara ng'bikin ny.... Selamat Mencoba ^^v