DALAM membuat aplikasi web, bisa dikatakan selalu ada form aplikasi
yang digunakan mengubah atau memperbarui data. Contohnya seperti pada Tutorial PHP dan MySQL: Form Update Record Data ini, form update tersebut hanya memperbarui 1 buah record data.
Bagaimana dengan banyak data sekaligus?
Pada
prinsipnya logikanya sama saja, hanya saja disini menggunakan Array
untuk menyimpan variabel sementara. Kemudian Array tersebut ditangkap
untuk proses query ke database.
Hasilnya kira-kira begini:
Solusi
Coba unduh basisdata kuliah disini lalu dump ke database MySQL Anda.
Buat programnya dengan nama nilai_view.php
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>List Nilai per Matakuliah</title>
<style type="text/css">
table.hovertable {
font-family: verdana,arial,sans-serif;
font-size:12px;
color:#333333;
border-width: 1px;
border-color: #999999;
border-collapse: collapse;
}
table.hovertable th {
background-color:#c3dde0;
border-width: 1px;
padding: 8px;
border-style: solid;
border-color: #a9c6c9;
}
table.hovertable tr {
background-color:#d4e3e5;
}
table.hovertable td {
border-width: 1px;
padding: 8px;
border-style: solid;
border-color: #a9c6c9;
}
input {
alignment-adjust: central;
}
</style>
</head>
<body>
<?php
$koneksi = mysql_connect('localhost', 'kuliah', '123456') or die (mysql_error());
mysql_select_db('kuliah', $koneksi) or die (mysql_error());
?>
<table class="hovertable">
<th>No.</th>
<th>Nim</th>
<th>Nama</th>
<th>Kode MK</th>
<th>Nama MK</th>
<th>Nilai</th>
<form action="nilai_view.php" method="POST">
<?php
$query_all = "select siswa.nim as nim, siswa.nama as nama, matakuliah.kodemk as kodemk,
matakuliah.namamk as namamk, nilai.nilai as nilai
from siswa, nilai, matakuliah
where siswa.nim = nilai.nim &&
matakuliah.kodemk = nilai.kodemk ";
$result_all = mysql_query($query_all) or die (mysql_error());
$count = mysql_num_rows($result_all);
$nomor = 1;
while ($rows = mysql_fetch_object($result_all)){
?>
<tr onmouseover="this.style.backgroundColor='#ffff66';" onmouseout="this.style.backgroundColor='#d4e3e5';">
<td><?php echo $nomor++; ?></td>
<td><?php echo $rows->nim; ?></td>
<td><?php echo $rows->nama; ?></td>
<td><?php echo $rows->kodemk; ?></td>
<td><?php echo $rows->namamk; ?></td>
<td>
<input type="hidden" id="nim" name="nim[]" value="<?php echo $rows->nim; ?>">
<input type="hidden" id="kodemk" name="kodemk[]" value="<?php echo $rows->kodemk; ?>">
<input type="text" size="2" name="nilai[]" id="nilai" value="<?php echo $rows->nilai; ?>"
</td>
</tr>
<?php
}
?>
<tr>
<td>
<input type="submit" name="submit" value="Simpan">
</form>
</td>
</tr>
</table>
<?php
if(isset($_POST['submit'])){
$nilai = $_POST['nilai'];
$nim = $_POST['nim'];
$kodemk = $_POST['kodemk'];
for($i = 0; $i < $count; $i++){
$query_nilaiupdate = "UPDATE nilai set nilai = '".$nilai[$i]."' where
nim = '".$nim[$i]."' && kodemk = '".$kodemk[$i]."'";
mysql_query($query_nilaiupdate, $koneksi) or die (mysql_error());
}
echo "Data telah diupdate <a href=nilai_view.php>Refresh</a>";
mysql_close($koneksi);
}
?>
</body>
</html>
Semoga bermanfaat.
sumber:http://joo.suburanugerah.com/index.php/14-tutorial-php-dan-mysql-form-update-banyak-data-record
No comments:
Post a Comment