[ASK] Bagaimana Cara Input Range Time di PHP agar tidak bentrok dengan data di Mysql

Salam sejahtera untuk semuanya, saat ini saya sedang membuat form peminjaman barang berbasis web, yang saya ingin tanyakan bagaimana caranya agar saat penginputan waktu tidak bentrok, contoh: Jika orang A menginput form "akan" meminjam barang dari jam 02:00 – 03:00, maka orang B tidak bisa menginput form peminjaman dengan barang yang sama di antara jam 02:00 – 03:00. bagaimana caranya agar tidak bentrok dalam data basenya. Mohon bimbingan skripnya dan codingnya. Terima kasih sebelumnya.

avatar Poccame
@Poccame

2 Kontribusi 0 Poin

Diperbarui 7 tahun yang lalu

2 Jawaban:

Coba ditandai aja, misal ditable peminjaman ada column status, isinya integer 1 dan 0, kalau 0 berarti bisa meminjam barang, kalau 1 berarti tidak bisa meminjam barang. jadi, ketika jam 02:00 - 03:00 si A meminjam barang, ganti statusnya jadi 1. Untuk script dan kodingannya silahkan dicoba sendiri, baru nanti kalau ada error bisa ditanyakan di sini.

avatar dalikewara
@dalikewara

351 Kontribusi 260 Poin

Dipost 7 tahun yang lalu

terima kasih sebelumnya atas jawabannya, hanya saja kalau menggunakan status berarti tidak bisa melakukan booking barang saat barang tersebut sudah di pinjam oleh yang lain. dengan kata lain primary key nya bukan terdapat pada barangnya melainkan pada waktunya, jadi meskipun barang sudah dipinjam, tapi bila booking di waktu yang tidak bentrok dengan waktu lainnya tetap bisa. berikut coding yang saya coba buat tapi masih error hehe...mohon pencerahannya...

//function waktu biat ga bentrok
$jam_mulai_cek = $_POST['jam_awal'];
$jam_akhir_cek = $_POST['jam_akhir'];
$jam1 = strtotime('$jam_awal');
$jam2 = strtotime('$jam_akhir');

$cek_query = mysql_query($cek_sql);
$cek_data = mysql_num_rows($cek_query);

$cek_sql = "SELECT * FROM jadwal WHERE jam1 = '$jam_awal' and jam2 = '$jam_akhir'"
	(jam1 >= $jam_mulai_cek AND jam1 <= $jam_akhir_cek)
	OR
	(jam2 >= $jam_mulai_cek AND jam2 <= $jam_akhir_cek)

if($cek_data > 0){
echo "sudah ada yang booking (pesan)";
} else {

// simpan data ke database

$query = mysql_query("insert into jadwal values('$kd_jadwal', '$tanggal', '$hari', '$jam_awal', '$jam_akhir', '$nama', '$nama_car', '$keterangan')");

if ($query) {
  // jika berhasil menyimpan
  header('location: jadwal.php?msg=success');
} else {
  // jika gagal menyimpan
  header('location: jadwaltambah.php?msg=failed');

	echo "anda bisa booking (pesan)";
	}
}
avatar Poccame
@Poccame

2 Kontribusi 0 Poin

Dipost 7 tahun yang lalu

Tanggapan

KAK MINTA REFRENSI KODING INI SAYA JUGA mengalami masalah yang begini

Login untuk ikut Jawaban