PHP · PHP Tutorial · Uncategorized

PHP Tutorial 1 : CRUD Sederhana, contoh kasus web berita sederhana

Lompatin – Bismillah,
Berhubung ada yang request ke saya tutorial “web macromedia”, saya kurang paham apa maksudnya “web macromedia”, mungkin maksudnya membuat web dengan macromedia dreamweaver kali ya?. Perlu saya luruskan, memang saya pernah bilang saya akan membuatkan tutorial web app, tapi saya akan bawa langsung ke coding PHP, atau teknologi web lainnya, jadi apapun editor yang anda gunakan, itu tergantung kepada anda. Oh iya, saya juga sepertinya nggak akan membuatkan tutorial untuk editor tertentu.

PHP bukanlah sebuah bahasa yang seribet Java untuk dipahami, untuk itu saya akan langsung masuk ke kasus-kasus dalam tutorial-tutorial saya kedepannya, InsyaAllah. Kali ini saya akan membawa ke kasus Create, Read, Update, dan Delete (CRUD) sederhana menggunakan PHP, o ya, kalau ada teman-teman kuliah saya yang membaca tulisan ini, dan masih bingung dengan CRUD di PHP, boleh pahami tutorial ini 😀 , ada beberapa konsep penting dalam pemograman web yang akan saya bahas . Kita akan membuat sebuah web berita sederhana, jangan dibayangin dulu ada login page dan sebagainya, karena yang akan kita buat hanya ada form tambah berita baru, edit, fitur hapus, dan menampilkan beritanya, jangan terlalu berharap tinggi dulu 😀 .
Saya menulis tutorialnya bukan untuk pembaca yang buta sama sekali dengan php, paling tidak tahulah dengan dasar-dasar php, seperti variabel, array, looping, bagaimana menjalankannya dibrowser, dll.

Saya benar-benar berharap setidaknya pembaca sudah sedikit banyaknya paham dengan html, dan harapan saya yang lain pembaca sudah bisa menggunakan dasar-dasar dari mysql database.
Pertama buat database mysqlnya dengan nama database ‘berita’, dengan tabel ‘tbl_berita’. Dengan field :

  • id – AI
  • judul
  • isi
  • tanggal – timestamp
CREATE TABLE IF NOT EXISTS `tbl_berita` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `judul` varchar(50) NOT NULL,
  `isi` text NOT NULL,
  `tanggal` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ;

Selanjutnya yang harus kita siapkan adalah file index.php, setiap kita mengakses sebuah folder tertentu di web hosting kita, file pertama yang akan dicari untuk ditampilakan adalah file index.
Berikut ini adalah file index.php :

index

Pada file index tersebut tolong pembaca pahami bagaimana penulisan antara kode php dan html, dan bagaimana penyisipan kode html didalam php, didalam echo bisa kita letakan kode-kode html kita. Lalu kita bisa lihat ada syntax lain yaitu include,  nah kalau kita punya banyak file dalam projek kita misalnya, dan kita ingin memasukan atau meng embed kan file-file kita itu ke sebuah file lainnya, maka kita gunakan include.  Sekarang difile index.php kita kita sudah memiliki file lain yaitu koneksi.php, serta list.php, nanti kita akan bahas satu persatu fungsi file-file tersebut.
Selanjutnya kita punya file koneksi.php :

koneksi

File koneksi.php adalah kunci utama kita untuk bisa terkoneksi kedatabase yang tadi sudah kita buat. Pada file tersebut terdapat mysql_connect yang bertugas mengehandle koneksi, didalam kurungnya terdapat nama_host, nama_user, dan password database kita. Kemudian mysql_select_db berfungsi memilih database mana yang akan kita gunakan. Dua baris kode ini sudah cukup menghubungkan kita kedatabase yang tadi sudah kita buat.
Selanjutnya file lain yg kita includekan ke file index kita, list.php :

list

Pada file list inilah konsep pertama CRUD kita akan kita bahas, yaitu READ, file list berfungsi membaca data yang ada didatabase lalu menampilkannya sebagai berita. Disini kita akan mulai masuk ke query sql, array serta looping dengan menggunakan while loop, mysql_query berfungsi untuk menjalankan setiap query sql yang kita tempatkan didalam tanda kurungnya tersebut, pada kasus ini query SELECT, lalu kita masukan kedalam variabel $query. pada while loop kita memasukan setiap data satu persatu kedalam variabel $data dengan menggunakan fungsi mysql_fetch_array. artinya bisa kita pahami kan, bahwa fungsi dari mysql_fetch_array adalah memasukan hasil query sql kedalam bentuk array.

Oh iya, pada file list kita pada link Hapus, bisa kita lihat ada parameter onclick, ini berfungsi untuk membuat konfirmasi ketika hendak menghapus sebuah berita, maksud saya, kita nggak berita kita terhapus secara tidak sengaja?.

Sekarang kita sudah punya halaman index yang sudah bisa konek ke database, dan sudah bisa membaca data didatabase, tapi belum bisa insert data ke database. Untuk itulah kita akan membuat file tambah.php untuk memenuhi fungsi CREATE kita tersebut. File tambah.php :

tambah

Baik, jika kita perhatikan, pada file tersebut terdapat dua bagian, bagian pertama yang atas untuk pemprosesan insert data ke database setelah form disubmit, dan yang kedua adalah formnya sendiri.
Kita bahas dulu formnya, saya harap pembaca sudah sedikit mengerti bagaimana membuat form di html, tag <form memiliki atribut action dan parameternya kosong, artinya form tersebut akan mengirim data ke dirinya sendiri, berbeda jika parameter tersebut kita isikan misalnya “proses.php”, maka form akan mengirim data ke file proses.php. Yang kedua kita punya method, kita isikan parameternya post, perbedaan antara get dan post adalah, get akan mengirimkan data melewati url, sedangkan post tidak mengirimkan data lewat url, tapi lansung ke file tersebut, terdapat keuntungan masing-masing pada kedua method tersebut, tapi saat ini kita menggunakan method post.

Ketika tombol submit diklik, makan form akan mulai mengirim data, saat itulah fungsi if mengecek apakah parameter didalam tanda kurungnya sudah benilai true atau belum. fungsi isset berfungsi untuk mengecek apakah sebuah variabel sudah ada/didefinisikan atau belum, saat tombol submit diklik secara otomatis variabel $_POST[‘tambah’] akan didefinisakan, variabel tersebut adalah bagian dari method post tadi, dan tambah adalah nama dari tombol submit itu sendiri. Kode didalam blok if akan dijalankan, dan data akan diinsert ke database.
Disana bisa kita lihat ada fungsi header, header location, berfungsi me-redirect halaman web sesuai dengan yang kita tentukan, jadi setelah data diinsert ke database, halaman langsung dipindahkan kehalaman home.

Untuk fungsi UPDATE, kita akan membuat sebuah file lagi, edit.php :

edit

File edit.php sedikit berbeda denga file tambah.php, perbedaannya pada query sql dan juga terdapat pada formnya. Pada form kita mengambil data ke database sesuai nilai ID nya yang lewatkan/kirim melalui URL, nanti pembaca bisa coba sendiri apa yang saya maksud. Variabel $_GET[id] akan mengambil nilai pada ULR ?id=xxx. Silahkan pembaca analisa sendiri file edit.php tersebut, karena tidak jauh berbeda prinsipnya dengan file-file sebelumnya.

Yang terakhir yaitu DELETE, kita akan membuat file hapus.php :

hapus

Saya rasa pembaca bisa dengan mudah memahami file diatas :D, karena tidak ada yang istimewa, hanya berbeda pada query sql nya saja.

1 2 3 4 5 6 7

Okay, sekian dulu tutorial kali ini, saya menerima kritik jika ada 😀
Maaf kalau banyak yang kurang….

2 tanggapan untuk “PHP Tutorial 1 : CRUD Sederhana, contoh kasus web berita sederhana

Tinggalkan komentar