Membuat Relasi Many to Many
Create
<?php include __DIR__. './../../includes/config.php'; ?>
<?php include __DIR__. './../../includes/header.php'; ?>
<?php
$query = "SELECT * FROM kategoribuku";
$stmt = $pdo->query($query);
$kategoriBuku = $stmt->fetchAll(PDO::FETCH_ASSOC);
?>
<div class="card border-radius p-4">
<!-- baris judul dan kembali -->
<div class="row align-item-center">
<div class="col">
<h2>Tambah Data Buku</h2>
</div>
<div class="col text-end">
<a href="/views/data-kategori-buku" class="btn btn-outline-secondary"><i class="fa-solid fa-arrow-right-to-bracket"></i></a>
</div>
</div>
<!-- form -->
<div class="row mt-4">
<div class="col">
<form action="" method="post">
<div class="mb-3">
<label for="inputNamaBuku" class="form-label">Nama Buku</label>
<input type="text" name="book_name" class="form-control" id="inputNamaBuku" placeholder="Masukkan Buku" required>
</div>
<div class="mb-3">
<label for="inputNamaBuku" class="form-label">Kategori Buku</label>
<select name="kategoriBuku" id="" class="form-control">
<option disabled selected>-- Pilih Data Kategori Buku --</option>
<?php foreach ($kategoriBuku as $kategori) : ?>
<option value="<?= $kategori['KategoriID'] ?>"><?= $kategori['NamaKategori'] ?></option>
<? endforeach; ?>
</select>
</div>
<div>
<button type="submit" class="btn btn-primary btn-sm"><i class="fa-solid fa-floppy-disk"></i></button>
<button type="reset" class="btn btn-secondary btn-sm"><i class="fa-solid fa-eraser"></i></button>
</div>
</form>
</div>
</div>
</div>
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$pdo->beginTransaction();
date_default_timezone_set('Asia/Jakarta');
$name = $_POST['book_name'];
$kategori_buku = $_POST['kategoriBuku'];
$sql = "INSERT INTO buku (name) VALUES (:name)";
$stmt = $pdo->prepare($sql);
$stmt->bindParam(':name', $name);
$stmt->execute();
$book_id = $pdo->lastInsertId();
$stmt_pivot = $pdo->prepare("
INSERT INTO buku_kategori_buku (buku_id, kategori_buku_id) VALUES (:buku_id, :kategori_buku_id)
");
$stmt_pivot->bindParam(':buku_id', $book_id);
$stmt_pivot->bindParam(':kategori_buku_id', $kategori_buku);
$stmt_pivot->execute();
if ($pdo->commit()) {
echo "<script>alert('Data berhasil ditambah!'); window.location.replace('/views/data-buku/index.php');</script>";
} else {
echo "Failed to create user.";
}
}
?>
<?php include __DIR__. './../../includes/footer.php'; ?>List
Last updated