Pages

Friday, 5 February 2016

Insert Data ke Database dengan PHP

Mempelajari website dinamis tidak terlepas dari CRUD (create - read - update - delete) yang berarti membuat, membaca/menampilkan, memperbarui, dan menghapus data. Kali ini saya akan membagikan cara untuk insert data atau memasukkan data ke database melalui form yang dibuat dengan HTML. Kemudian proses insertnya menggunakan PHP, dengan query Mysql di dalamnya. Langsung saja ikuti langkah-langkahnya berikut.

Pertama, adalah membuat form dengan HTML. Copy saja script berikut ke editor Anda dan silakan mengubah-ubah scriptnya sesuai kebutuhan Anda. Tentukan form apa saja yang dibutuhkan, kemudian sesuaikan tipe datanya.

<!DOCTYPE HTML>
<html>
<head>
  <title>Coba Insert Data | tutorial by alfaruqdeveloper.blogspot.com</title>
</head>

<body>
  <form method="POST" action="" enctype="multipart/form-data">
    <p>
      <label>Nama : </label>
      <input name="nama" type="text" placeholder="nama Anda">
    </p>
    <p>
      <label>Tempat Lahir : </label>
      <input name="tempat" type="text" placeholder="Tempat lahir Anda">
    </p>
    <p>
      <button type="reset">Cancel</button>
      <button type="submit">Submit</button>
    </p>
  </form>
</body>
</html>

Simpan script html di atas misal dengan nama form.html

Kedua, membuat database, di dalam tutorial ini kita menggunakan localhost, dan menggunakan aplikasi XAMPP, maka pastikan dulu XAMPP layanan apache dan mysql aktif. Untuk selengkapnya membuat database, silakan baca posting saya sebelumnya dengan klik disini. Kita beri nama database dengan db_coba. Setelah database siap, klik nama database yang sudah dibuat, buat table dengan langkah sebagai berikut. Beri nama tabel dengan tb_coba. Tentukan jumlah kolom/field nya.



Tentukan nama field (tidak boleh dengan spasi/diawali dengan angka), tipe data yang akan diisikan, jumlah karakter maksimal yang bisa diisikan.


Pada field 'id' ditentukan sebagai primary key atau field yg berisi data kunci dari tiap baris data. Seperti halnya nomor induk siswa yang berbeda tiap siswa. Buat field 'id' agar otomatis terisi dengan mencentang A_I yang berarti auto increment (otomatis berisi angka urut setiap data masuk).


Langkah berikutnya, cocokkan masing-masing field/kolom tabel pada database dengan masing-masing form isian pada website. Pada form isian tidak perlu diberikan form 'id' karena akan terisi otomatis di database. Selanjutnya adalah membuat action/proses insert data dari form ke dalam database. Buat file php baru dengan nama ac_coba.php, perhatikan nama filenya karena akan menjadi tujuan dari action pada form. Ketikkan script php berikut. Jangan lupa menyertakan file yang berisi script koneksi ke database di localhost. Jika masih belum tahu apa itu koneksi ke database, lihat tutorial yang ini terlebih dulu klik disini.

<?php
include('koneksi.php');
//inisialisasi isi form ke dalam nama variabel
$nama = $_POST['nama'];
$tempat = $_POST['tempat'];

//action
$qinsert = mysql_query("INSERT INTO tb_coba VALUES('','$nama','$tempat')");
header:location('form.html');
?>

- <?php dan ?> adalah pembuka dan penutup pemrograman dengan bahasa PHP.
- include('koneksi.php'); adalah penyertaan file bernama koneksi.php ke dalam program, dan file ini terletak satu direktori dengan penyimpanan file yang sedang dibuat ini.
- tanda '$' adalah untuk menyatakan variabel, dalam proses ini adalah penamaan variabel. Untuk seterusnya tanda '$' akan terus digunakan ketika variabel dipanggil. Misal dalam program tersebut '$nama' adalah nama variabelnya, kemudian variabel diisi dengan data dari form.html, form dengan nama 'nama' datanya akan tersimpan dalam variabel tersebut. Nama form isian sangat penting karena akan digunakan saat proses ini.
- $_POST adalah metode penyimpanan/pengiriman data dari form ke dalam file action ini, pada form.html terdapat script method="POST".
- $qinsert juga merupakan variabel, yang diisi dengan query mysql untuk proses penyimpanan data ke database.
- mysql_query("") merupakan script untuk memasukkan query mysql ke dalam program PHP, query mysql dimasukkan diantara tanda petik dua.
- tb_coba adalah nama tabel yang telah kita buat di database.
- kemudian setelah script VALUES di dalam kurung ada 3 bagian petik (') yang menandakan dalam tabel di database ada 3 field/kolom yang akan diisi, petik kosong/tanpa nama variabel didalamnya berarti tidak ada input dari proses ini. Karena petik pertama akan terisi ke dalam field 'id' yang kita buat auto increment atau terisi otomatis. Kemudian field yang selanjutnya akan diisi dengan data dari variabel $nama dan $tempat.

Nama file 'ac_coba.php' diisikan pada bagian script form, yaitu pada 'action=' sehingga menjadi 'action=ac_coba.php' (letak file html dan php dalam direktori).

<form method="POST" action="ac_coba.php" enctype="multipart/form-data">

Sebelum testing, pastikan dulu file-file html maupun php yang akan dicoba diletakkan di dalam direktori xampp/htdocs (terletak dimana XAMPP diinstal). Kemudian testing dengan memanggil file htmlnya, misal nama file htmlnya 'form.html' maka dipanggil pada browser localhost/form.html. Perlu diingat, dalam program ac_coba.php tersebut tidak disertai dengan validasi bahwa data berhasil diinsert ke database atau tidak, sehingga perlu dicek manual pada phpmyadmin.

Semoga artikel ini bermanfaat, mohon maaf apabila ada kesalahan. Silakan komentar jika ada pertanyaan, dan silakan share jika berkenan. Selamat mencoba :)

0 comments:

Post a Comment