Class: a template for making many instances of the same kind (or class) of object.
Object: individual instance of the data structure defined by a class.
Member Variable: These are the variables defined inside a class. This data will be invisible to the outside of the class and can be accessed via member functions. These variables are called attribute of the object once an object is created.
Member function: These are the function defined inside a class and are used to access object data.
Inheritance: When a class is defined by inheriting existing function of a parent class then it is called inheritance. Here child class will inherit all or few member functions and variables of a parent class.
Parent class: A class that is inherited from by another class. This is also called a base class or super class.
Child Class: A class that inherits from another class. This is also called a subclass or derived class.
Polymorphism: Same function can be used for different purposes.
Overloading: a type of polymorphism in which some or all of operators have different implementations depending on the types of their arguments. Similarly functions can also be overloaded with different implementation.
Data Abstraction: Any representation of data in which the implementation details are hidden (abstracted).
Encapsulation: refers to a concept where we encapsulate all the data and member functions together to form an object.
Constructor: refers to a special type of function which will be called automatically whenever there is an object formation from a class.
Destructor: Refers to a special type of function which will be called automatically whenever an object is delected or goes out of scope.
Molestiae cupiditate inventore animi, maxime sapiente optio, illo est nemo veritatis repellat sunt doloribus nesciunt! Minima laborum magni reiciendis qui voluptate quisquam voluptatem soluta illo eum ullam incidunt rem assumenda eveniet eaque sequi deleniti tenetur dolore amet fugit perspiciatis ipsa, odit. Nesciunt dolor minima esse vero ut ea, repudiandae suscipit!
Silahkan buat folder baru didalam folder htdocs dengan nama crud, kemudian buka menggunakan VS Code dan buat struktur file atau direktori seperti gambar berikut ini.

Pertama-tama buat database baru dengan nama pemrograman_web, kemudian buat table mahasiswa.

Selanjutnya membuat koneksi ke database, buka file config/Database.php dan ketikan kode program berikut ini:

File Config.php digunakan untuk membuat variable constant yang mana nantinya dapat diakses dari kelas manapun. Pada praktikum ini akan membuat variable constant dengan nama BASE_URL yang berisi string base URL dari project yang akan dibuat.
Tambahkan kode program berikut pada Config.php:

Catatan: URL ini disesuaikan dengan nama project yang telah dibuat.
Alert.php digunakan untuk membuat sebuah function yang berfungsi untuk menampilkan pesan ketika melakukan operasi terhadap data. Fungsi ini memiliki 2 buah argument statement yaitu $msg yang berisi pesan dan $sts yang berisi kode. Jika status 1 maka pesan berhasil dan jika 0 maka pesan gagal.

Class Mahasiswa digunakan untuk membuat fungsi operasi Create, Read, Update dan Delete data Mahasiswa. Berikut ini langkah-langkah pembuatan class Mahasiswa:
session_start() pada baris paling atas kode program


Catatan: $_SESSION['flash_message'] berfungsi untuk membuat session yang berisi pesan berhasil atau tidak berhasil sebuah data ditambahkan. Sedangkan header digunakan untuk redirect ke file index.php dengan parameter msg.
read memiliki default parameter $id yang berisi string kosong. Jika $id == "" maka akan mengeksekusi query untuk menampilkan seluruh data mahasiswa. Jika $id !== "" maka akan menampilkan data berdasarkan ID mahasiswa.


Fungsi mahasiswa ini berfungsi sebagai controller yang menghubungkan antara class/model mahasiswa dengan view. Buka file Mahasiswa.php yang berada dalam folder function, kemudian tambahkan kode program seperti berikut:
Database.php, Config.php dan model/Mahasiswa.php dengan menggunakan perintah include.
Database dan Mahasiswa kemudian koneksikan dengan database.action yang dikirimkan melalui method GET. Jika terdapat parameter action, maka nilai parameter akan diambil dan digunakan sesuai fungsinya. Ada 3 buah isi parameter yang dikirimkan yaitu create, delete, dan update.
View ini berfungsi untuk menampilkan data, menampilkan form input dan update data mahasiswa.
File Index.php ini berisi tampilan data-data mahasiswa yang telah berhasil diinputkan ke dalam database.


File ini berisi form inputan untuk menambahkan data mahasiswa.


File ini berisi form untuk melakukan perubahan data mahasiswa.

