Validasi agar data yang tersimpan ada limitasi max

Sy mau membuat validasi untuk melimit data tertentu, kondisinya begini

- Saat pertamakali menginputkan data dengan kategori kepala sekolah, data akan tersimpan

- Saat penginputan yang kedua dengan kategori kepala sekolah lagi, data tidak dapat tersimpan, karena kepala sekolah hanya boleh 1 saja

- Saat data kepala sekolah sebelumnya dihapus, maka sistem dapat menyimpan lagi data kepala sekolah yang baru

*tabel data diri sudah memiliki field 'jabatan'

*field 'jabatan' memiliki 4 tipe, kepsek wali guru & admin

*edit:lampiran logikanya

<?php
session_start();

include 'koneksi.php';

$NIP = $_POST['NIP'];
$nama = $_POST['nama'];
$jk = $_POST['gender'];
$job = $_POST['kd_jabatan'];
$tingkat = $_POST['tingkat'];

$result = mysqli_query($conn, "INSERT INTO data_user VALUES (NULL, '$NIP','$nama','$jk','$job','$tingkat')");

$job = mysqli_query($conn,"SELECT * FROM data_user WHERE kd_jabatan='2' AND tingkat='$tingkat'");
$cek = mysqli_num_rows($job);

if($cek > 0){

	header("location:[Page0]C-data_user.php?pesan=gagal");

}else($result){

	header("location:[Page0]R-data_user.php");
}

?>

dari syntax diatas, sistem berhasil menampilkan pesan gagal, namun data tetap tersimpan (if & else ter-eksekusi keduanya)

avatar haduao
@haduao

6 Kontribusi 0 Poin

Diperbarui 4 tahun yang lalu

Tanggapan

Pertanyaan nya apa? Apa yg sudah dilakukan? Ada kode program yg sudah dibuat?

mau ngasih limit biar jabatan "kepala sekolah" hanya bisa dipake 1x, kode program ny masih basic inputan saja dengan php native, belum ada sistem validasinya

Coba lampirkan kode programnya, harusnya kalo logic nya sudah dapat, bisa langsung di terapkan di kode program

sudah di edit kak, kode sudah dilampirkan

1 Jawaban:

Jawaban Terpilih

<div>Mungkin ini bisa di coba, tinggal disesuaikan dengan kasus agan saja :<br><br></div><pre>&lt;?php session_start();

include 'koneksi.php';

$NIP = $_POST['NIP']; $nama = $_POST['nama']; $jk = $_POST['gender']; $job = $_POST['kd_jabatan']; $tingkat = $_POST['tingkat'];

//Cek apakah ada data dengan jabatan/tingkat nya adalah Kepala Sekolah $cek_kepsek = mysqli_query($conn, "SELECT * FROM data_user WHERE jabatan = 'Kepala Sekolah' ");

//Apabila data kepala sekolah sudah ada (tidak kosong) if(mysqli_num_rows($cek_kepsek) &gt; 0) { echo "Data Kepala Sekolah sudah ada!";

//Apabila data kepala sekolah kosong } else {

//Lakukan insert data
$insert = mysqli_query($conn, &quot;INSERT INTO data_user VALUES (NULL, &#039;$NIP&#039;,&#039;$nama&#039;,&#039;$jk&#039;,&#039;$job&#039;,&#039;$tingkat&#039;)&quot;);

//Jika berhasil insert
if($insert) {
	echo &quot;Berhasil menambahkan data!&quot;;

//Apabila proses insert gagal
} else {
	echo &quot;Gagal menambahkan data! \n&quot;;

	//Tampilkan pesan errornya
	echo mysqli_error($conn);
}

}

?&gt;</pre>

avatar ahanafi
@ahanafi

815 Kontribusi 554 Poin

Dipost 4 tahun yang lalu

Tanggapan

terima kasih banyak kak, logikanya yg ini lebih masuk dan sukses setelah disesuaikan lagi

Login untuk ikut Jawaban