Rumahweb Journal
Banner - belajar php dasar bagian 15

Belajar PHP Dasar Bagian 15 – Membuat Fungsi Create Data

Pada artikel sebelumnya, kita telah mempelajari cara menampilkan data dari database menggunakan fitur Read pada konsep CRUD (Create, Read, Update, Delete) di PHP. Nah, pada bagian 15 dari seri Belajar PHP Dasar ini, kita akan melanjutkan pembahasan dengan membuat fungsi Create Data, yaitu proses untuk menambahkan data baru ke dalam database.

Melalui panduan ini, Anda akan belajar langkah demi langkah bagaimana membuat form input, memproses data dari form, hingga menyimpannya ke tabel database menggunakan PHP dan MySQL.

Dengan memahami fungsi Create ini, Anda sudah selangkah lebih dekat untuk menguasai konsep CRUD secara utuh dan membangun aplikasi berbasis web yang dinamis.

Membuat Tombol Create

Pada file index, kita akan menambahkan sebuah tombol yang berfungsi untuk menuju halaman baru, dimana halaman tersebut akan digunakan untuk menambahkan data baru. Silakan tambahkan script berikut pada file index.php, tepat di bawah script yang menampilkan tabel data:

<div class="p-md-4 container">
	<a href="create.php" class="btn btn-primary">Create Data</a>
</div>

Sehingga index.php saat ini keseluruhan scriptnya menjadi seperti ini:

<head>
	<title>Data Diri</title>
	<link rel="stylesheet" href="css/bootstrap.min.css" type="text/css">
	<script src="js/bootstrap.min.js"></script>
</head>
<body>
<?php 
include 'database.php';
$database = new database();
?>
<div class="p-md-4 container">
	<table class="table">
		<thead class="thead-dark">
			<tr>
			<th>Nama</th>
			<th>Usia</th>
			<th>Domisili</th>
			<th>Email</th>
			</tr>
		</thead>
		<?php 
		$numb = 1;
		foreach($database->show() as $a){ ?>
		<tr>
			<td><?php echo $a['nama']; ?></td>
			<td><?php echo $a['usia']; ?></td>
			<td><?php echo $a['domisili']; ?></td>
			<td><?php echo $a['email']; ?></td>
		</tr>
		<?php } ?>
	</table>
</div>
<div class="p-md-4 container">
	<a href="create.php" class="btn btn-primary">Create Data</a>
</div>
</body>

Dari script diatas, akan muncul tombol Create Data ketika file index diakses. Berikut contoh tampilannya:

Promo Hosting Murah Rumahweb

menambahkan tombol create data pada website - Belajar PHP Dasar Bagian 15

Membuat Halaman Create Data

Halaman Create Data berfungsi untuk menambahkan data baru ke dalam database. Pada halaman ini, pengguna akan menemukan beberapa kolom input yang digunakan untuk mengisi data sesuai kebutuhan, serta sebuah tombol untuk menyimpan data ke database.

Karena pada database yang telah kita buat sebelumnya terdapat 4 kolom data, maka kita juga akan membuat 4 kolom input pada form ini agar sesuai dengan struktur tabel di database.

Berikut contoh isi dari file create.php:

<head>
	<title>Data Diri</title>
	<link rel="stylesheet" href="css/bootstrap.min.css" type="text/css">
	<script src="js/bootstrap.min.js"></script>
</head>
<body>
<div class="p-md-4 container">
	<form method="post" action="aksi.php?aksi=tambah">
	<table class="table">
		<thead class="thead-dark">
			<tr>
			<th colspan=4">Input Data diri Baru</th>
			</tr>
		</thead>
		<tbody>
			<tr>
				<td>Nama</td>
				<td colspan="3"><input type="text" class="form-control" name="nama"></td>
			</tr>
			<tr>
				<td>Usia</td>
				<td colspan="3"><input type="text" class="form-control" name="usia"></td>
			</tr>
			<tr>
				<td>Domisili</td>
				<td colspan="3"><input type="text" class="form-control" name="domisili"></td>
			</tr>
			<tr>
				<td>Email</td>
				<td colspan="3"><input type="text" class="form-control" name="email"></td>
			</tr>
			<tr>
				<td><input type="submit" class="btn btn-primary"> <input type="reset" class="btn btn-warning"></td>
				<td colspan="3"></td>
			</tr>
		</tbody>
	</table>
	</form>
</div>
</body>

Setelah halaman dibuat, Anda bisa mencoba akses halaman create.php untuk pengujian. Jika script benar, maka akan tampil halaman seperti berikut:

halaman create data setelah tombol create data di index website diklik

Membuat aksi.php Sebagai Pusat Proses Pengelolaan Data

Pada script halaman Create Data, kita sudah menambahkan form yang mengarah ke aksi.php?aksi=tambah. Artinya, kita perlu membuat file aksi.php untuk menangani proses saat tombol simpan data diklik.

Di dalam file tersebut, kita akan menangkap parameter GET dengan nilai tambah, yang berfungsi sebagai pembeda setiap aksi yang akan dijalankan di aksi.php (misalnya tambah, edit, atau hapus data).

Untuk saat ini, kita akan menambahkan aksi tambah terlebih dahulu. Berikut contoh isi script aksi.php yang bisa Anda gunakan:

<?php 
include 'database.php';
$db = new database();
 
$aksi = $_GET['aksi'];
 if($aksi == "tambah"){
 	$db->input($_POST['nama'],$_POST['usia'],$_POST['domisili'],$_POST['email']);
 	header("location:index.php");
 }
?>

Pada file aksi.php, kita perlu menambahkan include database.php. Tujuannya, agar file ini dapat memanggil berbagai fungsi yang berhubungan dengan pengelolaan data di database, karena hampir semua proses CRUD membutuhkan akses ke database. Jika nanti ada file lain yang berisi fungsi tambahan, kita juga bisa menambahkannya di bagian include ini. Namun, untuk saat ini, kita cukup menggunakan database.php saja.

Seperti yang sudah dijelaskan sebelumnya, file aksi.php akan menangkap nilai dari parameter aksi sebagai pembeda proses yang dijalankan. Jika nilai aksi adalah tambah, maka sistem akan memanggil fungsi input yang ada di database.php.

Fungsi ini akan menerima data yang diinput dari form, seperti nama, usia, domisili, dan email, lalu menyimpannya ke dalam database sesuai struktur tabel yang telah dibuat sebelumnya.

Selanjutnya, di file database.php, kita perlu menambahkan proses penyimpanan data tersebut dengan menulis script berikut:

function input($nama,$usia,$domisili,$email){
		mysqli_query($this->conn, "insert into personal values('$nama','$usia','$domisili','$email')");		
}

Sehingga, file database.php isinya akan berubah seperti berikut:

<?php 
class database{
	protected $host = "localhost";
	protected $username = "root";
	protected $password = "";
	protected $database = "datadiri";
	function __construct(){
		$conn = mysqli_connect($this->host, $this->username, $this->password, $this->database);
		if (!$conn) {
			die("Koneksi gagal: " . mysqli_connect_error());
		}
		return $this->conn = $conn;
	}
	function show(){
		$tampil = mysqli_query($this->conn, "select * from personal");
		while($data = mysqli_fetch_assoc($tampil)){
			$hasil[] = $data;
		}
		return $hasil;
	}
	function input($nama,$usia,$domisili,$email){
		mysqli_query($this->conn, "insert into personal values('$nama','$usia','$domisili','$email')");
	}
}
?>

Pengujian

Setelah file aksi.php dan database.php diperbarui, langkah selanjutnya adalah melakukan pengujian input data. Buka halaman index, lalu klik tombol Create Data. Anda akan diarahkan ke halaman form input data.

Selanjutnya, masukkan beberapa data percobaan untuk memastikan proses penyimpanan ke database sudah berjalan dengan benar, seperti contoh berikut:

contoh penginputan data untuk pengujian

Ketika tombol submit kita klik, akan dialihkan ke aksi.php dan diolah datanya. Jika pengolaan data selesai, maka akan dikembalikan ke index.php dan menampilkan data baru yang kita input tadi.

tampilan index terbaru setelah data terinput, data ditampilkan paling bawah

Penutup

Sampai di tahap ini, kita telah membuat file aksi.php yang berfungsi sebagai penghubung antara form dan berbagai function yang akan dijalankan dari file lain. File ini nantinya akan terus dikembangkan untuk memanggil berbagai fungsi sesuai kebutuhan website, tidak terbatas hanya pada pengelolaan data saja.

Selain itu, kita juga telah menambahkan function input data pada file database.php, yang digunakan untuk menyimpan data dari form Create Data ke dalam database.

Demikian pembahasan pada seri belajar PHP dasar bagian 15 tentang cara membuat function Create Data dalam konsep CRUD. Di series belajar PHP bagian 16, kita akan belajar bagaimana cara membuat function Update data di dalam konsep CRUD PHP. Simak terus artikel dari Rumahweb Indonesia.

Bermanfaatkah Artikel Ini?

Klik bintang 5 untuk rating!

Rating rata-rata 0 / 5. Vote count: 0

Belum ada vote hingga saat ini!

Kami mohon maaf artikel ini kurang berguna untuk Anda!

Mari kita perbaiki artikel ini!

Beri tahu kami bagaimana kami dapat meningkatkan artikel ini?

Edi Purnomo

Edi Purnomo, atau yang akrab disapa Edi, adalah bagian dari team technical support Rumahweb yang memiliki minat pada dunia pemrograman, khususnya PHP. Edi suka mengikuti tren seputar web programming hingga database. Melalui Journal Rumahweb, Edi ingin berbagi pengetahuan tentang Bahasa pemrograman, khususnya Bahasa PHP yang ia kuasai.

banner pop up - Pindah Hosting ke Rumahweb