Tutorial PHP Membuat Multiple Update Dengan Select Option dan Checkbox


multiple-update-php-mysql-root93


Multiple Update atau Update banyak data secara sekaligus bisa menggunakan berbagai macam teknik namun dalam contoh ini skema multiple update yang akan dilakukan adalah seperti berikut :
  1. Data yang akan di update, dipilih atau dicentang terlebih menggunakan checkbox
  2. Selanjutnya data yang berbeda – beda akan diupdate dengan nilai yang sama, dimana parameter nilainya akan dipilih didalam select option
Query MySQL Multiple Update
 
Parameter query yang digunakan untuk multiple update ini hampir sama seperti tutorial sebelumnya untuk melakukan multiple delete, hanya saja tentu saja dalam proses update akan digunakan 2 parameter update yaitu pertama nilai parameter apa yang akan mengupdate/mengubah data, kedua data mana saja yang akan diupdate.
 
 
 
Syntax atau Query update yang akan digunakan adalah sebagai berikut :
 
UPDATE nama_tabel SET kolom_tabel=parameter_data_1 WHERE kolom_tabel IN (parameter_data_2) 
 
 
Contoh Struktur Tabel Database
 
Dalam contoh ini Saya akan membuat struktur data seperti yang terlihat pada gambar dibawah ini

tabel database contoh untuk latihan multiple update


Membuat Multiple Update PHP Dengan Select Option dan Checkbox
 
Contoh akan ditulis dengan procedural style.
Pertama Anda perlu membuat koneksi ke database

File koneksi.php


<?php
define('HOST', 'localhost');
define('USER', 'root');
define('PASS', '');
define('DB', 'codexam');
$koneksi = mysqli_connect(HOST, USER, PASS, DB);
if($koneksi==false):
	die("Gagal melakukan koneksi :".mysqli_connect_error());
endif;
?>

 
Kedua Anda perlu membuat fungsi untuk proses CRUD, dimana dalam contoh ini saya hanya membuat dua proses saja, yaitu untuk menampilkan data serta proses update saja

File fungsi.php

<?php

function query($data){
	global $koneksi;
	$perintah=mysqli_query($koneksi, $data);
	if(!$perintah) die("Gagal query :".mysqli_connect_error());
	return $perintah;
}
function showData(){
	$sql="SELECT * FROM tabel2";
	$perintah=query($sql);
	return $perintah;
}
function update($type, $data){

	$sql="UPDATE tabel2 SET status='$type' WHERE nip IN ($data)";
	$perintah=query($sql);
	return $perintah;
	
}
	



?>


Terakhir, Kita perlu membuat file untuk antar muka untuk melakukan proses update data

File index.php

  
  <?php
require_once 'koneksi.php';
require_once 'fungsi.php';


$nip_err = $up_type_err ="";
if($_SERVER['REQUEST_METHOD']=='POST'){
	
	
	if(empty($_POST['nip'])){
		$nip_err = "Harap pilih salah satu data yang akan dihapus";
	}else{
		$nip = $_POST['nip'];
		$nip = implode(",", $nip);
	}
	if(empty($_POST['update_type'])){
		$up_type_err = "Pilih parameter update";
	}else{
		$update_type = $_POST['update_type'];
	}
	if(empty($nip_err) && empty($up_type_err)){
		if(update($update_type, $nip)):
			echo '<div class="alert alert-success">Ok data berhasil</div>';
		else:
			echo '<div class="alert alert-danger">data gagal disimpan</div>';
		endif;
	}
}

?>
<!DOCTYPE html>
<html>
<head>
	<title>Update Multiple PHP</title>
	<link rel="stylesheet" type="text/css" href="../vendor/bootstrap/css/bootstrap.min.css">
</head>
<body>
		<div class="container">
			<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
				<div class="form-group">
					<label>Pilih jenis update :</label>
					<select class="form-control" name="update_type">
						<option></option>
						<option>Karyawan Tetap</option>
						<option>Karyawan Kontrak</option>
					</select>
					<span class="text-danger"><?php echo $up_type_err; ?></span>
				</div>
			<div class="form-group">
				<button type="submit" class="btn btn-md btn-primary"> Update</button>
			</div>
			<table class="table table-bordered mt-4">
				<thead>
					<th colspan="5">LATIHAN UPDATE MULTIPLE</th>
				</thead>
				<thead>
					<th>NO</th>
					<th>NAMA</th>
					<th>NIP</th>
					<th>STATUS</th>
					<th>CEK</th>
				</thead>
				<tbody>
					<?php

						$no = 1;
						
						$data =showData();
						while($row=$data->fetch_array()){
							echo '
								<tr>
									<td>'.$no.'</td>
									<td>'.$row['nama_karyawan'].'</td>
									<td>'.$row['nip'].'</td>
									<td>'.$row['status'].'</td>
									<td>

										<input type="checkbox" name="nip[]" value="'.$row['nip'].'">
									</td>
								</tr>


							';
							$no++;
						}
						$data->free_result();

					?>
				</tbody>
			</table>
				
				<span class="text-danger"><?php echo $nip_err; ?></span>
			</form>
		</div>

</body>
</html>
  
  

Video Tutorial PHP Membuat Multiple Update


Lalu bagaimana jika menggunakan prepared statement ? Baca [ Tutorial PHP : PDO Prepared Statement Update Multiple Data Dengan Where IN ]

0 Response to "Tutorial PHP Membuat Multiple Update Dengan Select Option dan Checkbox"

Post a Comment

Komentar yang Anda kirim akan terlebih dahulu di moderasi oleh Admin