PHP: CRUD with Relation

Assalamu'alaikum warahmatullahi wabarakatuh.

Halo teman-teman semuanya! Bagaimana kabarnya? 

Semoga dalam kondisi dan keadaan yang prima dan baik-baik saja ya! 

Perkenalkan kembali lagi bersama saya Ilham, saya dari kelas XI RPL 2 yang sekarang dalam artikel kali ini, kita akan membahas mengenai PHP CRUD dengan relasi,   tanpa berlama-lama lagi mari langsung saja kita ke inti bahasan materinya!

Jadi pada kesempatan kali ini kita akan mencoba CRUD tetapi dengan relasi antara 2 tabel

Ketika kita menambahkan data siswa, maka pilihan kelas berasal dari tabel class yang bersifat dinamis, yang berarti kita juga membuat suatu CRUD juga pada data kelas.


Tabel classes 

Struktur seperti ini:


Tabel students


Mengkosongan data tabel students terlebih dahulu, lalu ganti field class menjadi class_id dengan tipe datanya int:

File index.php 

Ubah file index lalu masukan code dibawah untuk relation:
// Membuat Query SQL mengambil data siswa
$query = "SELECT 
        -- kolom yg akan diambil
        students.nis,
        students.name,
        students.gender,
        students.address,
        students.phone_number,
        students.avatar,
        classes.name as class_name
        -- Tabel students INNER JOIN / relation dengan classes
        FROM students
        INNER JOIN classes
        ON students.class_id = classes.id";

File views/index.php 

Ubah field $student['class'] menjadi $student['class_name']:
<td><?= $student["name"] ?></td>
<td><?= $student["gender"] == "P" ? "Perempuan" : "Laki-laki" ?></td>
<td><?= $student["address"] ?></td>
<td><?= $student["phone_number"] ?></td>
<td><?= $student["class_name"] ?></td>

File insert.php 
// Ambil Data Kelas
$query = "SELECT * FROM classes";
$result = $mysqli->query($query);

Dan ubah juga class_id saat insert data:
$nis = @$_POST["nis"];
$name = @$_POST["name"];
$gender = @$_POST["gender"];
$address = @$_POST["address"];
$phone_number = @$_POST["phone_number"];
// Ubah ini
$class_id = @$_POST["class_id"];
$avatar = @$_FILES["avatar"];

 $query = "INSERT INTO students (nis, name, gender, address, phone_number, class_id, avatar) 
        VALUES ('$nis', '$name', '$gender', '$address', '$phone_number', '$class_id', '$avatar')";

File views/insert.php 
<div class="form-group">
    <label for="class_id">Kelas</label>
    <select name="class_id" id="class_id" class="form-control" required>
        <option>Pilih Kelas</option>
        <!-- Looping data kelas -->
        <?php while ($class = $result->fetch_assoc()) : ?>
            <option value="<?= $class['id'] ?>" <?= @($student['class_id'] == $class['id']) ? 'selected' : '' ?>>
                <?= $class['name'] ?>
            </option>
        <?php endwhile; ?>
    </select>
</div>

File edit.php 
Sama ini juga tambahkan code untuk mengambil data kelas dan ubah field class menjadi class_id
// Ambil Data Siswa
$query = "SELECT * FROM students WHERE nis = '$nis'";
$result = $mysqli->query($query);
$student = $result->fetch_assoc();

// Ambil Data Kelas
$query = "SELECT * FROM classes";
$result = $mysqli->query($query);

$nis = @$_POST["nis"];
$name = @$_POST["name"];
$gender = @$_POST["gender"];
$address = @$_POST["address"];
$phone_number = @$_POST["phone_number"];
$class_id = @$_POST["class_id"];
$avatar = @$_POST["avatar"];
$avatarUpload = @$_FILES["avatar"];
$query = "UPDATE students SET
        nis = '$nis',
        name = '$name',
        gender = '$gender',
        address = '$address',
        phone_number = '$phone_number',
        class_id = '$class_id',
        avatar = '$avatar'
        WHERE nis = '$nis'
Dan ketika dibuka di browser:




Mungkin cukup sekian materi CRUD with relationnya. 
Semoga sobat-sobat codingers paham, mengerti dan menguasainya. 
Dan mohon maaf atas semua kesalahan yang telah saya perbuat, tolong berikan koreksi mengenai bagian mana yang salah/kurang pas dalam postingan ini, untuk pengembangan lebih baik kedepannya.

Sekian, saya ucapkan terimakasih banyak atas waktu yang telah diluangkan, saya ucapkan kembali mohon maaf atas segalanya kesalahan. 

Wabilahiltaufik walhidayah, Wassalamu'alaikum warahmatullahi wabarakatuh.
Keep Coding Stay Awesome

0 Response to "PHP: CRUD with Relation"

Post a Comment

Postingan Terbaru

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel