Minggu, 14 Juni 2020

Praktikum 44 : Introducing Eloquent

Assalamu'alaikum warrahmatullahi wabarakatuh.

Kembali lagi di postingan berikutnya, kali ini akan memperkenalkan eloquent.

Pertama buat file Siswa.php di folder app.

$table adalah variabel untuk menentukan nama tabel pada database untuk model ini.

$fillable adalah variabel untuk menentukan field apa saja yang akan di fill atau di insert ke tabel pada model ini. Biasanya digunakan untuk mass-assignment.

Modifikasilah function index pada file SiswaController.php seperti berikut ini.

Seluruh method yang dipanggil setelah inisialisasi Eloquent sama dengan penggunaan DB Facades.

Modifikasi function store nya.

Modifikasi function update.

Method find hanya ada pada Eloquent Model, digunakan untuk mencari data pada model berdasarkan primary key. Biasanya primary key yang dicari adalah id. Selain id Anda dapat mengaturnya pada model dengan meng-override variabel public $primaryKey.

Jika dalam query SQL, fungsi di atas akan menciptakan query sebagai berikut:

SELECT * FROM t_siswa WHERE id = '$id'

Sekarang modifikasi juga function destroy.

ORM Eloquent for Inserting Data

ORM Eloquent for Updating Data

Sekian saja postingan kali ini. Terimakasih sudah berkunjung.

Wasslamu'alaikum warrahmatullahi wabarakatuh.

Praktikum 43 : Edit & Delete Data with DB

Assalamu'alaikum warrahmatullahi wabarakatuh

Sudah lama saya tidak mengupload postingan baru. Kali ini saya membawa materi baru tentang edit dan delete data menggunakan database.

Pertama buka file belajar.blade,php dan tambahkan kolom baru untuk aksi edit.

Lalu buka file web.php dan tambahkan route edit.

{id} adalah parameter yang harus ada pada url nya dan parameter tersebut akan dilempar ke controller.

Buka file SiswaController.php dan tambahkan function edit.

Fungsi FIND() PADA \DB::table adalah untuk mencari data pada t_siswa berdasarkan id atau primary key nya, sehingga return dari pemanggilan fungsi tersebut berupa objek.

Buka file form.blade.php dan edit sebagai berikut.

Lalu tambahkan function update di file SiswaController.php

Lalu buka file web.php dan tambahkan route untuk update.

Setelah itu buka file belajar.blade.php dan tambahkan kolom baru untuk delete.

Tambahkan route edit pada file web.php

Terakhir tambahkan function destroy pada file SiswaController.php

Sekian untuk postingan kali ini. Terimakasih sudah berkunjung~

Wassalamu'alaikum warrahmatullahi wabarakatuh.

Sabtu, 04 April 2020

Praktium 42 : Create Data with Database Facade, Validation, dan Old Input

Assalamu'alaikum warrahmatulahi wabarakatuh.

Kembali lagi di postingan baru, kali ini akan membahas tentang create menggunakan DB Facade, validasi dan old input.

Langsung ke studi kasus yang pertama, yaitu:

Lakukan create data with DB Facade, validation dan old input pada tabel t_kelas. Buatlah tampilan form untuk menambahkan data kelas.

Implementasikan validasi untuk tabel t_kelas.

Pertama, buka file tugas.blade.php dan tambahkan link menuju form.



URL digunakan menciptakan URL menuju url tertentu. URL yang diciptakan akan ditambahkan base_url dari project kita.

Selanjutnya buka file web.php dan tambahkn route create.


Buka file KelasController.php dan tambahkan function create untuk menampilkan view dengan nama form yang terdapat pada folder kelas.


Buat file formkelas.blade.php yang disimpan di folder kelas. Jika belum ada foldernya maka dibuat terlebih dahulu foldernya.


CSRF (Cross-Site Request Forgery) merupakan bentuk eksploitasi website yang dieksekusi atas wewenang korban, tanpa dikehendakinya. CSRF menipu website melalui request dari user yang dipercaya. Serangan bekerja melalui link atau script pada halaman site yang bisa diakses user.

csrf_token() digunakan untuk membuat csrf token.

csrf_field() digunakan untuk membuat input hidden_token beserta tokennya.

@csrf merupakan fitur dari blade, sama dengan csrf_field, namun tidak perlu menggunakan bracket ( {{ }} ) untuk menampilkannya di HTML. Setiap request yang memiliki method selain GET (POST, PUT, PATCH, DELETE), syntax diatas wajib digunakan didalam form sebagai fungsi keamanan dari serangan CSRF.

Selanjutnya buka lagi file web.php dan tambahkan route post.


Buka file KelasController.php dan tambahkan function store.



Coba buka di browser dan hasilnya seperti ini.

Lalu klik Tambah Data Kelas

Isi form nya.

Lalu klik Simpan dan data baru akan ditambahkan.

Selanjutnya adalah menampilkan feedback pesan sukses/error. Buka file tugas.blade.php dan tambahkan kode berikut diatas URL.


@if digunakan untuk menampilkan suatu bagian pada HTML ketika kondisi pada PHP terpenuhi.

Pada contoh diatas, tampilkan div dengan class success jika session('success') tidak kosong. Div tersebut berisikan data/pesan yang ada pada session('success') tersebut.

Perhatikan penempatan blok @endif

Buka di browser untuk melihat hasilnya sebagai berikut.


Selanjutnya adalah validasi input menggunakan validation. Untuk melakukan validasi input agar sesuai dengan yang diharapkan, Laravel sudah menyediakan fiturnya, yaitu dengan menggunakan Facades Validator atau function validate.

Buka file KelasController.php dan tambahkan code di function store sebagai berikut.


Buka file formkelas.blade.php dan tambahkan code berikut di paling atas.


Buka di browser. Akan menampilkan error jika field yang diisi belum sesuai dengan yang ada di rule.


Cara menulis rule adalah dengan membuat array asosiatif yang didalamnya berisi key yang berupa nama field yang ada pada form dan value yang berisi string validasinya.

Jika terdapat lebih dari 2 validasi, gunakan simbol |

Jika string validasi memerlukan parameter, gunakan simbol titik dua :

Selanjutnya adalah menggunakan fungsi old untuk menampilkan value sebelumnya. Ketika form tidak lengkap atau tidak sesuai dengan rules seharusnya form yang sudah diisi oleh user yang sebelumnya harus tetap muncul.

Buka file formkelas.blade.php dan tambahkan value sebagai berikut.


Dan hasilnya begini.


Lalu studi kasus kedua adalah sebagai berikut.

Di tutorial ini terdapat BUG, temukan BUG nya dan pecahkan solusi dari BUG tersebut!

Dari apa yang saya temukan adalah BUG nya terletak pada bagian create data dimana pada file SiswaController.php ketika menambahkan function store. Pada bagian if, return nya diisi ('/siswa') yang mana harusnya adalah ('/belajar') karena itu yang menjadi index atau tampilan utama dari tabelnya. Pada file web.php juga harusnya membuat route dengan ('/belajar').

Terakhir studi kasus ketiga, yaitu:

Implementasikan fungsi old untuk field berjenis radio button dan field berjenis select option pada form siswa (field jenkel dan goldar).



Sepertinya sekian saja postingan untuk kali ini.

Terimakasih sudah berkunjung dan mohon maaf atas banyak kekurangannya.

Wassalamu'alaikum warrahmatullahi wabarakatuh.

Rabu, 18 Maret 2020

Praktikum 41 : Laravel Controllers & Interacting with Database

Assalamu'alaikum warrahmatullahi wabarakatuh

Di postingan kali ini saya akan membahas tentang controller dan interaksi dengan database.

Saya akan menjelaskan studi kasusnya saja yaitu sebagai berikut isinya.





Pertama buka cmd dan jalankan perintah php artisan make:controller KelasController




Sebelum itu isi terlebih dahulu tabel kelas pada database.


Buka file KelasController dan edit sebagai berikut.


Buat file blade baru untuk menampilkan view dari tabel kelas. Contoh beri nama tugas.blade.php dan isi sebagai berikut.


Begini tampilannya ketika di run.


Pertama tampilkan tabel diurutkan berdasarkan lokasi ruangan. Tambahkan kode sebagai berikut di file KelasController.


Jalankan di browser dan hasilnya seperti ini.


Kedua tampilkan tabel dengan nama walikelas yang berawalan huruf A. Karena di tabel saya tidak ada yang berawalan A maka saya ganti menjadi awalan K. Ubah kode pada Kelas Controller seperti ini.


Begini hasilnya.


Ketiga menampilkan tabel dengan mengurutkan jurusan dan nama kelas, edit pada KelasController sebagai berikut.


Berikut hasilnya.


Terakhir menampilkan data hanya dari jurusan TEAV saja. Ubah file KelasController sebagai berikut.


Berikut hasilnya.


Sekian untuk postingan kali ini. Terimakasih sudah berkunjung.

Wassalamu'alaikum warrahmatullahi wabarakatuh.

Selasa, 17 Maret 2020

Praktikum 40 : Database Migration

Assalamu'alaikum warrahmatullahi wabarakatuh

Untuk kali ini saya hanya akan menjelaskan tentang studi kasus yang saya kerjakan untuk materi database migration menggunakan laravel.

Yang pertama adalah membuat satu tabel percobaan dan membuat 15 field/kolom secara bebas.


Lalu isi field pada file t_percobaan sebagai berikut.


Buka lagi cmd dan jalankan perintah migrate.


Lalu periksa di database apakah tabel sudah muncul atau belum.


Selanjutnya studi kasus yang kedua adalah sebagai berikut.

Pertama buka cmd dan jalankan perintah php artisan make:migration create_t_kelas lalu setelah itu buka file t_kelas dan tambahkan field nama_kelas dan jurusan. Setelah itu buka lagi cmd dan jalankan perintah php artisan migrate lalu lihat di database apakah sudah muncul atau tidak. Saya tidak sempat mengscreenshot database yang ini karena tidak ingat dan langsung mengerjakan ke tahap berikutnya.

Setelahnya untuk menambahkan field baru yaitu field lokasi_ruangan. Pertama buka lagi cmd dan jalankan perintah php artisan make:migration add_lokasi_ruangan_t_kelas lalu buka file lokasi_ruangan dan edit sebagai berikut.


Lalu jangan lupa save terlebih dahulu baru buka kembali cmd dan jalankan perintah php artisan migrate dan cek pada database untuk melihat field sudah ditambahkan atau belum. Saya juga tidak sempat screenshot dan langsung mengerjakan poin berikutnya yaitu mengubah panjang field nama_kelas menjadi 50. Yang dilakukan adalah menjalankan perintah php artisan migrate:rollback seperti ini.


Lalu ubah panjang field nama_kelas pada file nama_kelas setelahnya buka kembali cmd dan jalankan perintah php artisan migrate.


Lalu cek pada database untuk memastikan perubahannya.


Selanjutnya adalah menambahkan field nama_wakel pada tabel, buka cmd dan jalankan perintah php artisan make:migration add_nama_wakel_t_kelas lalu buka file nama_wakel dan masukkan nama dan panjang field sebagai berikut.


Setelah itu save dan jalankan perintah php artisan migrate dan lihat perubahannya pada database.


Dan terakhir adalah mengubah nama field menjadi nama_walikelas. Pertama buka lagi cmd dan jalankan perintah php artisan make:migration change_nama_walikelas_t_kelas lalu lakukan perubahan nama field di file change_nama_walikelas sebagai berikut.


Setelahnya lihat di database untuk melihat perubahannya.


Saya rasa sekian saja untuk postingan kali ini. Terimakasih sudah berkunjung.

Wassalamu'alaikum warrahmatullahi wabarakatuh.

Selasa, 10 Maret 2020

Praktikum 39 : Framework Laravel

Assalamu'alaikum warrahmatullahi wabarakatuh

Bertemu lagi di postingan baru, kali ini saya akan membahas tentang Framework. Apa sih Framework?

Framework (kerangka kerja) adalah sebuah software untuk memudahkan para programmer membuat aplikasi atau web yang isinya adalah berbagai fungsi, plugin, dan konsep sehingga membentuk suatu sistem tertentu. Dengan menggunakan framework, sebuah aplikasi akan tersusun dan terstruktur dengan rapi. Singkatnya, framework adalah sebuah standar.

Framework ini menggunakan konsep MVC. MVC atau Model-View-Controller ini adalah sebuah metode untuk membuat sebuah aplikasi dengan memisahkan data (Model) dari tampilan (View) dan cara bagaimana memprosesnya (Controller). Dalam implementasinya kebanyakan framework dalam aplikasi website adalah berbasis arsitektur MVC. MVC memisahkan pengembangan aplikasi berdasarkan komponen utama yang membangun sebuah aplikasi seperti manipulasi data, antarmuka pengguna, dan bagian yang menjadi kontrol dalam sebuah aplikasi web.

Framework yang saya gunakan dan akan saya jelaskan disini adalah Laravel.

Laravel

Laravel adalah framework PHP MVC yang dikembangkan oleh Taylor Otwell pada tahun 2011. Berikut adalah beberapa fitur pada Laravel Framework.

  • RESTful Routing
RESTful adalah cara baru dalam mengelola request seperti GET, POST, PUT, PATCH, DELETE, dan STORE.
  • Composer
Composer adalah Depedency Management PHP yang membantu programmer untuk menggunakan library. Semua dependency ini di host di packagist.org
  • Command Line Tools (Artisan)
Fitur command line ini untuk memudahkan programmer melakukan beberapa pekerjaan, misalnya membuat database migration, server application, database seeding, creating controller & model dan masih banyak yang lainna.
  • Beautiful Template Engine
Laravel dilengkapi dengan template engine dengan nama Blade Template Engine untuk memudahkan penggabungan kode PHP pada HTML.
  • Eloquent ORM
Fitur Eloquent ORM (Object Relational Model) memungkinkan penulisan kode yang berhubungan dengan objek (Entitas/Tabel pada Database) dioperasikan menggunakan konsep OOP.
  • Database Migration
Fitur ini untuk menjaga histori migrasi database (CREATE, ALTER, DROP), mengaplikasikan migrasi baru ataupun mengembalikannya.


Struktur Folder Laravel

Folder utama laravel atau disebut dengan ROOT FOLDER
  • .env
File konfigurasi yang hanya berlaku untuk environment local saja atau dimana file ini berada.
  • composer.json
File yang berisi kumpulan dependency yang digunakan di project ini. Kita dapat menambahkannya dengan perintah composer require atau langsung menulisnya di dalam file ini.
  •  app
Tempat menyimpan seluruh file yang berhubungan dengan aplikasi yang akan dibangun dan tempat menyimpan file Model.
  • app/Http/Controllers
Tempat menyimpan file Controller.
  • config
Tempat menyimpan seluruh file yang berhubungan dengan konfigurasi aplikasi Laravel yang akan dibangun, mulai dari database, tempat menyimpan file hasil upload, konfigurasi untuk melakukan pengiriman email, dan sebagainya.
  • database
Tempat menyimpan seluruh file yang berhubungan dengan database migration dan database seeder.
  • public
Tempat menyimpan seluruh file yang nantinya dapat diakses secara publik oleh pengguna. 
  • resources
Tempat menyimpan seluruh file views dari aplikasi yang akan dibangun. Views menggunakan template engine bernama blade sehingga setiap kali kita membuat file untuk view, maka harus ditambahkan ekstensi .blade
  • web.php
File yang berisi kumpulan route dari sistem yang akan dibangung. Route ini yang nantinya diakses oleh pengguna dan diarahkan sesuai dengan kode yang kita ketik.

Sekarang coba buka file web.php dan lakukan perubahan sebagai berikut.


Dan buka pada browser maka begini hasilnya.

Bentuk umum mendefinisikan Route pada file web.php


Menulis nama-rute tidak boleh menggunakan simbol (!@#$%^&*()~`/,.;:'")

nama-rute tidak boleh mengandung spasi, sebaiknya spasi diganti menggunakan dash(-)

Memanggil View (1)

Buat file baru di resources/views/belajar.blade.php

Contohnya isi seperti ini:


Lalu selanjutnya, yaitu ubah file routes/web.php


view('nama_view') adalah fungsi bawaan laravel untuk memanggil view.

return view artinya mengembalikan (return) view yang telah dipanggil ke pengguna yang memanggil alamat tersebut.

Begiini hasil keluarannya.


Mengirim Data Ke View

Cara 1 : Menggabungkan data dalam satu variabel array sosiatif, sehingga data yang dikirim ke view hanya 1 saja.


Cara 2 : Membuat variabel masing-masing untuk data yang akan dikirim ke view, gunakan compact untuk mengirimkan data ke view nya.

Dalam bentuk teks biasa

Menampikan data yang sudah dikirim menggunakan blade template.


Berikut hasilnya.


Dalam bentuk tabel

Menampilkan data yang sudah dikirim menggunakan blade template.


Berikut hasilnya.
Jadi, apa perbedaan antara cara 1 dan 2 mengirim data ke view? Apa kekurangan dan kelebihan masing-masing cara tersebut?

Perbedaannya ialah, cara 1 menggunakan array sosiatif untuk menggabungkan data dalam satu variabel saja. Sedangkan cara 2 membuat variabel masing-masing untuk setiap data yang akan dikirim ke view dan menggunakan fungsi compact untuk mengirimkan data ke view.

Menurut saya, secara penulisan code lebih baik menggunakan cara ke 1 karena lebih efektif dan singkat dalam menuliskan variabel di return view yakni cukup menuliskan satu variabel saja meski ada banyak data yang dikirim. Dibandingkan cara ke 2 yang mengharuskan mengetik kembali nama-nama variabel di dalam compact.

Cukup sekian saja saya rasa untuk postingan kali ini. Maaf masih banyak kekurangannya dan terimakasih sudah berkunjung.

Wassalamu'alaikum warrahmatullahi wabarakatuh.

Senin, 24 Februari 2020

Praktikum 38 : OOP-PHP Overloading

Assalamu'alaikum warrahmatullahi wabarakatuh

Ketemu lagi di postingan baru, kali ini membahas soal overloadin pada OOP-PHP.

Overloading

Overloading di PHP menyediakan cara agar properti dan method dapat dibuat secara dinamis. Entitas dinamis ini diproses melalui method ajaib yang dapat dibangun di class untuk berbagai jenis tindakan.

Method overloading dipanggil saat berinteraksi dengan propertu atau method yang belum dideklarasikan atau tidak terlihat dalam baris program. Sisa dari bagian ini akan menggunakan istilah properti dan method yang tidak dapat diakses untuk merujuk pada kombinasi deklarasi dan visibilitas tersebut.

Semua method overloading harus didefinisikan sebagai public.

Berikut merupakan contoh pertama.


Dan ini adalah contoh kedua.


Kiranya sekian saja untuk postingan kali ini.

Mohon maaf karena banyak kekurangan dan terimakasih sudah berkunjung.

Wassalamu'alaikum warrahmatullahi wabarakatuh.

Praktikum 37 : OOP-PHP Auto Loading

Assalamu'alaikum warrahmatullahi wabarakatuh

Kita bertemu lagi di postingan baru, kali ini akan menjelaskan auto loading pada OOP-PHP.

Autoload

Banyak pengembang yang membuat aplikasi berorientasi objek membuat satu file sumber PHP per definisi Class. Salah satu gangguan terbesar adalah harus menulis daftar panjang yang diperlukan termasuk pada awal setiap skrip (satu untuk setiap class).

Di PHP 5, ini tidak lagi diperlukan. Fungsi spl_autoload_register() mendaftarkan sejumlah autoloader, memungkinkan class dan antarmuka dimuat secara otomatis jika mereka saat ini tidak didefinisikan. Dengan mendaftarkan autoloaders, PHP diberikan kesempatan terakhir untuk memuat class atau antarmuka sebelum gagal dan error.

Berikut merupakan contoh Autoload.


Object Interface

Object Interface memungkinkan kita membuat kode yang menentukan method mana yang harus diimplementasikan oleh suatu class, tanpa harus menentukan bagaimana mehod ini diterapkan.

Interface didefinisikan dengan cara yang sama seperti class, tetapi dengan kata kunci Interface menggantikan kata kunci class dan tanpa method apapun yang kontennya ditentukan.

Semua method yang dideklarasikan di Interface harus bersifat public. Ini adalah sifat Interface.

Perhatikan bahwa dimungkinkan untuk mendeklarasikan konstruktor di Interface, apa yang bisa berguna dalam beberapa konteks.

Implements

Untuk mengimplementasikan interface, operator implement digunakan. Semua method dalam interface harus diimplementasikan dalam class; error akan menghasilkan kesalahan fatal. Class dapat diimplement lebih dari satu interface jika diinginkan.

Berikut contoh Interface.


Berikut contoh Extendable Interface ke 1.


Berikut contoh Extendable Inteface ke 2.


Berikut contoh Interface With Constant.


Visibility

Visibilitas dari sebuah properti, method atau (pada PHP 7.1.0) sebuah konstanta dapat didefinisikan dengan mengawali deklarasi dengan kata kunci public, protected atau private.

Anggota class dideklarasikan public agar dapat diakses dimana saja. Anggota yang dinyatakan protected hanya dapat diakses di dalam class itu sendiri dan dengan mewarisi class induk. Anggota yang dinyatakan sebagai private hanya dapat diakses oleh class yang mendefinisikan anggotanya.

Property Visibility

Class property harus didefinisikan sebagai public, private, atau protected. Jika dideklarasikan menggunakan var, properti akan didefinisikan sebagai public.

Berikut contoh Property Declaration.


Method Visibility

Class method dapat didefinisikan sebagai public, private, atau protected. Method yang dinyatakan tanpa kata kunci akan didefinisikan sebagai public.

Berikut contoh Method Declaration.


Visibility Konstanta (Constant)

Pada PHP 7.1.0 konstanta class dapat didefinisikan sebagai public, private, atau protected. Konstanta yang dideklarasikan tanpa kata kunci didefinisikan sebagai public.

Berikut contoh Constant Declaration as of PHP 7.1.0


Visibility Dari Objek Lain

Objek dengan tipe yang sama akan memiliki akses satu sama lain, private dan protected meskipun bukan pada instance yang sama. Ini karena detail spesifik implementasinya sudah diketahui ketika berada di dalam objek tersebut.

Berikut contoh mengakses member private dari tipe objek yang sama.


Kiranya sekian saja postingan untuk kali ini.

Mohon maaf atas segala kekurangan postingan ini dan terimakasih sudah berkunjung.

Wassalamu'alaikum warrahmatullahi wabarakatuh.

Selasa, 11 Februari 2020

Praktikum 36 : OOP pada PHP

Assalamu'alaikum warrahmatullahi wabarakatuh

Halooo, bertemu lagi di postingan terbaru. Kali ini kita akan membahas soal OOP pada PHP. Apa sih OOP?

OOP adalah singkatan dari Object Oriented Programming atau yang lebih kita kenal sebagai PBO alias Pemrograman Berbasis Objek.

Yang kaya gimana tuh?

Jadi, OOP ini berbeda dengan pemrograman terstruktur. OOP ini menggunakan yang kita sebut sebagai class. Apa sih itu class? Class adalah sekumpulan objek yang memiliki atribut dan method.

OOP pada mata pelajaran PBO biasanya kita pakai dalam bahasa pemrograman Java. Tapi, karena ini web, maka kita akan menerapkan OOP dalam bahasa pemrograman PHP. Bagaimana sih OOP tuh? Yuk, mari dijelaskan di bawah ini.

Pertama, buat folder baru dengan nama OOP-PHP dan buat file Manusia.php


Kita membuat class Manusia dengan atribut jenis_kelamin, nama, dan tanggal_lahir. Dan kita juga membuat method bersuara()

Perbedaannya antara PHP dan Java adalah apabila pada Java untuk mendeklarasikan method menggunakan 'void' sedangkan pada PHP menggunakan 'function'.

Selanjutnya, kita membuat file baru, beri nama index.php dan buat code sebagai berikut.


Di awal kita memasukkan include file Manusia.php agar file index.php dapat mengambil data dari file tersebut.

Apabila di run maka yang muncul adalah nama dari objek Manusia tersebut. Silakan coba sendiri untuk melihat dan jangan lupa untuk menyalakan XAMPP terlebih dahulu ya!

Lalu misalnya kita ingin menambah function lain seperti ini:


Tambahkan code dibawah function yang pertama pada file Manusia.php dan buka file index.php untuk menambahkan juga pada echo atau outputnya seperti ini:


Selain itu mari kita coba menerapkan konsep inheritance atau pewarisan pada OOP-PHP ini. Apa itu pewarisan? Pewarisan adalah konsep menurunkan atribut dan sifat dari class induk atau superclass ke class anak atau subclass. Caranya pada PHP ini dengan memasukkan include superclass nya dan menambahkan code extends. Lengkapnya simak code berikut.

Pertama, buat file baru beri nama KelompokMakan.php


Dan tambahkan extends pada file Manusia.php


Lalu buka file index.php dan masukkan method pada echo nya sebagai berikut.


Menambahkan atribut dan method daripada objek seperti diatas dan apabila di run maka begini output nya.

Dan yang terakhir adalah studi kasus sebagai berikut.

Buat class baru dengan nama HewanPeliharaan yang terdiri dari atribut nama dan jenis dan method bersuara.

Berikut yang saya kerjakan untuk studi kasus ini.

File HewanPeliharaan.php


File running.php


Berikut merupakan outputnya.


Sudah sekian saja isi postingan kali ini. Mohon maaf banyak kekurangannya dan terimakasih sudah berkunjung~

Saya pamit, wassalamu'alaikum warrahmatullahi wabarakatuh.

Senin, 03 Februari 2020

Praktikum 35 : Validasi

Assalamu'alaikum warrahmatullahi wabarakatuh

Kembali di postingan baru, kali ini akan membahas tentang validasi. Apa sih validasi? Kalian pasti sudah tidak asing dengan kata ini.

Valid adalah benar, akurat, dsb. Validasi adalah pembuktian bahwa sudah benar atau belum. Lalu bagaimana kita mengimplementasikannya ke dalam codingan-codingan kemarin?

Kita hanya akan menambahkan beberapa code di file v_tambah.php dan tambah.php

Validasi akan muncul sebagai alert / peringatan ketika inputan pada tambah data kosong atau tidak sesuai.

Buka file v_tambah.php dan tambahkan code ini diatas form atau disesuaikan posisinya dengan desain layout kalian.


Baris code ini digunakan untuk menampilkan pesan sukses yang berasal dari variable $success. Dan digunakan untuk melakukan validasi apabila variable $nis kosong, maka munculkan pesan error menggunakan function flash.

Setelah itu buka file tambah.php dan tambahkan @ di sebelum $ sebagai berikut.


Dan terakhir tambahkan kode ini sebelum kode untuk mengambil data kelas.


Kiranya segini saja postingan kali ini, mohon maaf banyak kekurangannya~

Terima kasih sudah berkunjung🤩

Wassalamu'alaikum warrahmatlahi wabarakatuh.

Selasa, 28 Januari 2020

Praktikum 33 : CRUD Relasi 2 Tabel

Assalamu'alaikum warrahmatullahi wabarakatuh

Kembali lagi di postingan baru yang berjudul CRUD 2 Tabel.

Kalau CRUD tentulah kita sudah tau artinya kan?

CRUD = Create Read Update Delete

Adalah dasar-dasar tentang perintah SQL untuk penggunaan database yang sudah pernah saya bahas di postingan-postingan sebelumnya. Lalu sekarang ini apa? Relasi 2 tabel?

Untuk itu kita harus membuat tabel baru di database.


Kita akan membuat tabel kelas dimana ketika kita akan menambahkan data kelas, kita akan mengambil dan menyimpan data di tabel kelas tersebut.

Untuk mencegah error, kosongkan tabel siswa dengan TRUNCATE bukan DROP. Karena jika menggunakan DROP artinya menghapus tabelnya juga. TRUNCATE ada pada bagian Operasi seperti gambar dibawah.



Setelah itu ubah tabel siswa, ganti kolom kelas dengan id_kelas dan int(11).


Lalu buka file index.php dan ubah kode pada bagian :


Ubah juga pada file v_index.php sebagai berikut :

Buka file tambah.php dan tambahkan kode ini sebelum include view form siswa.

Dan buka file form siswa alias v_tambah.php dan tambahkan :

Buka file tambah.php dan ambil POST data dari form dan ditambahkan pada query INSERT nya.

Selain pada file tambah.php tambahkan juga pada file edit.php

Pada file edit.php juga jangan lupa tambahkan query untuk mengambil data kelas untuk ditampilkan di form.



Selesai~

Kiranya begitu saja postingan kali ini, terimakasih sudah berkunjung dan mohon maaf atas banyak kekurangannya.

Wassalamu'alaikum warrahmatullahi wabarakatuh~

Selasa, 21 Januari 2020

Praktikum 34 : Bootstrap Modal dan Ajax

Assalamu'alaikum warrahmatullahi wabarakatuh

Kembali lagi di postingan baru dan materi baru tentunya. Disini kita bertemu dengan bootstrap modal dan ajax. Apa sih itu?

Modal atau biasanya kita kenal dengan istilah pop-up, digunakan untuk menampilkan pesan atau konfirmasi dari sebuah action. Anda bisa menggunakan modal ini sebagai tempat untuk menampilkan informasi seperti promosi dan lain-lain.

Modal juga dapat digunakan untuk membuat sebuah konfirmasi persetujuan contohnya seperti persetujuan dari menghapus data. Jadi biasanya kalau kita akan menghapus data, maka muncul konfirmasi pertanyaan, "Apakah Anda yakin ingin menghapus data ini?" dan ada pilihan ya atau tidak.

Bootstrap memiliki class yang bisa Anda gunakan untuk membuat modal dengan mudah.

Pertama edit pada v_index.php


Dan tambahkan ini juga pada file v_index.php sebelum penutup tag body.


Lalu tambahkan btnDelete pada button Delete.


Dan tambahkan juga javascript sebelum penutup tag body.


Terakhir, tambahkan code berikut di file delete.php


Untuk saat ini, saya tidak bisa menampilkan hasilnya karena XAMPP saya bermasalah kemarin dan database saya terhapus. Nanti akan saya upgrade isi postingan kali ini jika sudah benar kembali.

Terimakasih sudah berkunjung, mohon maaf karena banyak kekurangan.

Wassalamu'alaikum warrahmatullahi wabarakatuh.

Selasa, 14 Januari 2020

Praktikum 33 : Upload File

Assalamu'alaikum warrahmatullahi wabarakatuh.

Balik lagi dengan postingan baru yang selanjutnya nih sekarang kita akan menambah untuk mengupload file berupa gambar di data siswa. Kuy, simak!

Sebelumnya pada postingan tentang form di HTML juga pernah membahas untuk mengupload file kan? Ayo kalau lupa lagi mari kunjungi postingan praktikum 8~

Pertama yang harus dilakukan tentu saja menambah kolom untuk file di database~


Jika sebelumnya belum membuat folder assets di folder tugas kalian, ayo buat terlebih dahulu untuk mengupload/menyimpan gambar.

Lalu buka file v_tambah.php dan tambahkan code:

Digunakan ketika form yang kita buat memiliki form upload (input type file).

Selain itu juga tambahkan template untuk mengupload file nya:

Buka file tambah.php dan tambahkan code:

Dan oh ya! Jangan lupa tambahkan pada query nya juga.

Tambahkan di file v_index.php juga sebagai berikut.

Terakhir buka file edit.php dan tambahkan code berikut ini.

Dan jangan lupa juga untuk menambahkan query nya.

Sudah selesai!

Kiranya sampai sini saja postingan kali ini, terimakasih lagi sudah berkunjung. Selamat belajar dan mencoba. Dan mohon maaf karena masih banyak kekurangannya.

Wassalamu'alaikum warrahmatullahi wabarakatuh.

Praktikum 32 : Login

Assalamu'alaikum warrahmatullahi wabarakatuh.

Sudah cukup lama sejak saya mengupload postingan. Saya baru saja kembali dari liburan sekolah dan disini sekarang untuk menulis postingan baru tentang materi baru di semester dua.

Ini masih berhubungan dengan postingan sebelumnya. Apabila postingan sebelumnya membahas soal Searching dan Ordering, maka kali ini saya akan membahas soal Login.

Pasti kata Login ini tidak asing bagi kita sebagai pengguna internet dan seisinya. Login ini adalah akses untuk masuk ke sebuah situs atau aplikasi. Untuk login kita harus mempunyai sebuah akun.

Maka dari itu, yang pertama kali dibuat adalah akun-akun untuk Login tersebut.

Buka database lalu buat tabel baru, yaitu tabel Login seperti ini:


Lalu isi tabelnya sebagai berikut.

username : admin
password : admin
level : 1

Gunakan enkripsi SHA1 pada kolom password.

Maka hasilnya seperti ini:

Selanjutnya buat file baru v_login.php untuk tampilan login sebagai berikut.


Dan buat file login.php untuk proses login nya.



Selain login, kita juga membuat untuk logout nya.



Satu lagi adalah authorization, untuk mengatur apabila user sudah login dan belum melakukan logout maka akan ditampilkan halaman utama (data siswa). Tapi jika belum login, maka user harus login terlebih dahulu baru bisa membuka data siswa.

Edit pada file library.php seperti ini.



Juga edit pada file index.php




Selesai~

Kira-kira seperti inilah materi tentang login dan authorization.

Terimakasih sudah berkunjung dan mohon maaf masih banyak kekurangannya. Selamat mencoba!

Wassalamu'alaikum warrahmatullahi wabarakatuh~