Laporan Pengalaman Praktek Industri (1)
LAPORAN PENGALAMAN LAPANGAN INDUSTRI
IMPLEMENTASI YII2 FRAMEWORK DALAM PEMBUATAN BACKEND
WEBSITE INFORMASI BISNIS
Oleh :
FANNY OKTAVIA
1306572/2013
PROGRAM STUDI S1 PENDIDIKAN TEKNIK INFORMATIKA
JURUSAN TEKNIK ELEKTRONIKA
FAKULTAS TEKNIK
UNIVERSITAS NEGERI PADANG
2016
Halaman Pengesahan Perusahaan
Laporan Ini Disampaikan Untuk Memenuhi Sebagian dari Persyaratan
Penyelesaian Pengalaman Lapangan Industri FT-UNP Padang
Semester Juli – Desember 2016
Oleh
Fanny Oktavia
Nim: 1306572. 2013
Jurusan Teknik Elektronika
Program Studi Pendidikan Teknik Informatika dan Komputer
Diperiksa dan disahkan oleh:
Supervisor
Muhammad Aser, S.Pd
Menyetujui
Direktur
Geovanne Farell, S.Pd, M.Pd.T
i
Lembaran Pengesahan Fakultas
Laporan Ini Disampaikan Untuk Memenuhi Sebagian dari Persyaratan
Penyelesaian Pengalaman Lapangan Industri FT-UNP Padang
Semester Juli – Desember 2016
Oleh
Fanny Oktavia
Nim: 1306572. 2013
Jurusan Teknik Elektronika
Program Studi Pendidikan Teknik Informatika dan Komputer
Diperiksa dan disahkan oleh :
Dosen Pembimbing
Yeka Hendriyani , S.Kom, M.Kom
Nip: 198405202010122003
a.n. Dekan FT UNP
Kepala Unit Hubungan Industri
Drs. Bahrul Amin, ST, M. Pd
NIP. 19630212 198603 1 02
ii
KATA PENGANTAR
Puji dan syukur penulis ucapkan atas kehadirat Allah SWT karena berkat
rahmat, hidayah, dan karunia-Nya,penulis
dapat menyelesaikan laporan
Pengalaman Lapangan Industri (PLI) dengan baik dan benar. Shalawat beriringan
salam untuk Nabi Muhammad SAW yang telah membawa umat manusia dari
kejahiliyahan ke peradaban yang penuh ilmu pengatahuan.
Laporan Pengalaman Lapangan Industri ini disusun berdasarkan apa yang
telah dikerjakan di PT Aka Solusi Teknologi, dimulai pada tanggal 13 Juni 2016
s/d 13 Agustus 2016. Laporan ini disusun untuk memenuhi syarat kelulusan mata
kuliah Pengalaman Lapangan Industri pada jurusan Pendidikan teknik Informatika
dan Komputer. Judul laporan ini yaitu “Implementasi YII2 Framework dalam
Pembuatan Backend Website Informasi Bisnis”.
Dengan segala kerendahan hati penulis mengucapkan terima kasih yang
sebesar-besarnya kepada:
1. Bapak Drs. Syahril, Ph.D selaku Dekan Fakultas Teknik Universitas Negeri
Padang.
2. Bapak Drs. Hanesman, M.M selaku Ketua Jurusan Teknik Elektronika
Universitas Negeri Padang.
3. Bapak Bahrul Amin, S.T, M.Pd selaku kepala Unit Hubungan Industri FT
Universitas Negeri Padang.
iii
4. Bapak Thamrin selaku koordinator PLI Jurusan Elektronika FT UNP.
5. Ibu Yeka Hendriyani, S.Kom, M.Kom selaku dosen pembimbing PLI
6. Bapak Geovanne Farell ,S.Pd, M.Pd.T selaku direktur dan Bapak Muhammad
Aser,S.Pd sebagai Supervisor di PT Aka Solusi Teknologi.
7. Karyawan PT Aka Solusi Teknologi
8. Orang tua dan seluruh keluarga yang selalu ada di setiap waktu dam selalu
memberikan dukungan yang tak ternilai harganya
9. Teman-teman seperjuangan yang telah membantu dalam proses pelaksanaan
PLI dan penyusunan laporan PLI.
Laporan ini disusun oleh penulis dengan segala upaya agar menghasilkan
laporan yang baik. Kekhilafan dan kesalahan merupakan bagian dari proses
kehidupan, jika terdapat kekhilafan dan kesalahan dalam penulisan Laporan
Pengalaman Industri ini penulis mengharapkan kritikan dan saran pembaca demu
bahan pembelajaran bagi penulis kedepannya.
Penulis berharap laporan ini bermanfaat bagi penulis dan pembaca, serta
menjadi semangat dan motivasi bagi rekan-rekan yang akan melaksanakan PLI.
Padang,
Penulis
iv
Agustus 2016
DAFTAR ISI
KATA PENGANTAR .......................................................................................... iii
DAFTAR GAMBAR ........................................................................................... vii
DAFTAR TABEL ................................................................................................ ix
DAFTAR LAMPIRAN ......................................................................................... x
BAB I PENDAHULUAN ...................................................................................... 1
A. Latar Belakang Pelaksanaan PLI................................................................. 1
B. Deskripsi Tentang Perusahaan / Instansi PLI .............................................. 3
C. Perencanaan Kegiatan PLI .......................................................................... 8
D. Pelaksanaan Kegiatan PLI ........................................................................... 8
BAB II IMPLEMENTASI YII2 FRAMEWORK DALAM PEMBUATAN
WEBSITE INFORMASI BISNIS ...................................................................... 10
A. Teori Singkat ............................................................................................. 10
a. Framework .............................................................................................. 10
b. YII2 ......................................................................................................... 12
c. MySQL ................................................................................................... 16
d. PHP ......................................................................................................... 18
e. Back End ................................................................................................. 20
B. Proses Pengerjaan ...................................................................................... 20
a. Proses Penginstalan ................................................................................. 20
b. Directory Pada YII2 Framework ............................................................ 23
c. Pembuatan Database ............................................................................... 24
d. Menghubungkan Database pada YII2 ..................................................... 27
e. Generating Code dengan Gii ................................................................... 28
f. Menambah Template AdminLTE pada Halaman Admin ....................... 32
v
g. Implementasi YII2 Framework pada Backend ....................................... 34
BAB III PENUTUP ............................................................................................. 59
A. Kesimpulan................................................................................................ 59
B. Saran .......................................................................................................... 61
DAFTAR PUSTAKA .......................................................................................... 63
vi
DAFTAR GAMBAR
Gambar 1.
Gambar Struktur Organisasi ..................................................... 6
Gambar 2.
Skema MVC (Model, View, Controller) .................................. 11
Gambar 3.
Inisialisasi project ...................................................................... 22
Gambar 4.
YII2 Berhasil di install .............................................................. 22
Gambar 5.
Struktur Database Bisnis .......................................................... 24
Gambar 6.
Database ..................................................................................... 26
Gambar 7.
Halaman Yii Code Generator................................................... 28
Gambar 8.
Model Generator pada posting ................................................ 29
Gambar 9.
Model Generator yang sukses digenerate ............................... 29
Gambar 10.
CRUD generator untuk Posting ............................................... 30
Gambar 11.
CRUD Generator berhasil ........................................................ 31
Gambar 12.
Melakukan generate pada Controller Generator ................... 31
Gambar 13.
Controller Generate berhasil ................................................... 32
Gambar 14.
Submenu ..................................................................................... 32
Gambar 15.
memasukkan template adminLTE pada main-local.php ...... 33
Gambar 16.
tampilan AdminLTE pertama kali install............................... 33
Gambar 17.
Merubah Warna AdminLTE ................................................... 34
Gambar 18.
tampilan AdminLTE dengan warna yang berbeda ............... 34
Gambar 19.
Menu Login saat pertama kali menginstall YII2 ................... 35
Gambar 20.
Menu Login setelah diterapkan tema adminLTE .................. 35
Gambar 21.
Menu Home pada Halaman Admin ......................................... 36
Gambar 22.
Posting ........................................................................................ 36
Gambar 23.
Create Posting ............................................................................ 37
Gambar 24.
Kolom isi yang Menggunakan Widget TinyMce .................... 38
Gambar 25.
File Input dalam mnegupload file ............................................ 40
Gambar 26.
Dropdown list pada kategori .................................................... 40
Gambar 27.
View Posting ............................................................................... 41
Gambar 28.
Slider ........................................................................................... 44
Gambar 29.
Create Slider .............................................................................. 45
Gambar 30.
View Slider ................................................................................. 47
Gambar 31.
Create Kategori ......................................................................... 51
vii
Gambar 32.
View Kategori ............................................................................ 53
Gambar 33.
Kontak ........................................................................................ 54
Gambar 34.
Detail kontak .............................................................................. 56
Gambar 35.
Detail komentar ......................................................................... 57
viii
DAFTAR TABEL
Tabel 1.
Pelaksanaan Praktek Lapangan Industri ......................................... 8
Tabel 2.
Perbedaan YII2 Basic dan YII2 Advanced .................................... 16
ix
DAFTAR LAMPIRAN
Lampiran 1. Surat Permohonan Pengalaman Lapangan Industri
Lampiran 2. Surat Balasan Perusahaan
Lampiran 3. Daftar Hadir PLI
Lampiran 4. Catatan Konsultasi Laporan dengan Supervisor
Lampiran 5. Catatan Konsultasi Laporan dengan Dosen Pembimbing
x
xi
i
BAB I
PENDAHULUAN
A. Latar Belakang Pelaksanaan PLI
Fakultas Teknik Universitas Negeri Padang sebagai salah satu
lembaga pendidikan yang berupaya mengembangkan dan meningkatkan
Sumber Daya Manusia (SDM), yakni menjadikan manusia seutuhnya yang
memiliki wawasan ilmu pengetahuan dan teknologi (IPTEK) dan bertaqwa
kepada Tuhan Yang Maha Esa.
Fakultas Teknik Universitas Negeri Padang (FT-UNP) juga berupaya
melaksanakan program-program pendidikan yang betujuan menghasilkan
lulusan yang tidak saja memahami ilmu pengetahuan dan teknologi akan
tetapi juga mampu mempraktekkan serta mengembangkannya baik dalam
pendidikan maupun didalam dunia industri.
Upaya yang dilakukan Fakultas Teknik Negeri Padang adalah
mengadakan suatu program pengalaman
yaitu dengan mengirim
Mahasiswa-mahasiswanya keperusahaan yang relevan dengan jurusan
masing-masing yang dinamakan dengan Pengalaman Lapangan Industri
(PLI) yang merupakan salah satu syarat bagi mahasiswa Fakultas Teknik
untuk menyelesaikan Pendidikan Diploma 3 (D3) dan Strara 1 (S1).
Kegiatan PLI harus dilaksanakan untuk memenuhi persyaratan
wisuda, dan menjadi mata kuliah wajib yang harus dilaksanakan, mata
1
2
kuliah Pengalaman Lapangan Industri dengan nomor seksi
201610760063 dan 3 sks, PLI ini dilaksanakan selama 2 bulan dari tanggal
13 Juni 2016 – 13 Agustus 2016. Selain merupakan salah satu syarat untuk
menyelesaikan pendidikan, PLI ini dilakukan untuk menambah wawasan
dan merupakan wadah pengenalan lingkungan kerja untuk meningkatkan
pengetahuan keterampilan. Sehingga pada saat memasuki dunia kerja. PT
Aka Solusi Teknologi merupakan salah satu perusahaan yang bergerak di
bidang teknologi informasi. Telah banyak produk yang dihasilkan seperti
aplikasi yeng berbasis WEB, desktop, maupun mobile. PT Aka Solusi
Teknologi memberikan layanan jasa pembuatan dan pengembangan aplikasi
yang disesuaikan dengan kebutuhan klien. Salah satu produk yang dibuat
yaitu “Website Informasi Bisnis”
1. Tujuan Penulisan
Tujuan dari Pelaksanaan Pengalaman Lapangan Industri FT UNP
adalah sebagai berikut :
a. Merupakan
salah
satu
sarana
bagi
mahasiswa
untuk
mengaplikasikan ilmu yang diperoleh diperkuliahan
b. Menambah wawasan dan pengetahuan tentang dunia kerja dengan
memperhatikan, mempelajari, dan memahami proses kerja beserta
aturan-aturannya.
c. Meningkatkan keterampilan dan kreatifitas mahasiswa melalui
keterlibatan langsung dalam berbagai kegiatan perusahaan.
2. Manfaat Pelaksanaan PLI
Kegiatan Pengalaman Lapangan Industri (PLI) ini memberikan
pengalaman kerja bagi penulis di instansi terkait serta sebagai sarana
dalam menambah ilmu pengetahuan dan wawasan dalam bidang Teknik
Informatika. Selain itu kegiatan Pengalaman Lapangan Industri ini juga
sebagai salah satu syarat untuk kelulusan di Program Studi S1
Pendidikan teknik Informatika dan Komputer
3. Waktu dan Tempat Pelaksanaan PLI
Pengalaman Lapangan Industri (PLI) ini dilaksanakan pada
tanggal 7 Juni – 12 Agustus 2016 yang bertempat di PT. Aka Solusi
Teknologi Jalan Ujung Gurun No. 87, Kelurahan Ujung Gurun, Padang,
Sumatera Barat.
B. Deskripsi Tentang Perusahaan / Instansi PLI
PT. Aka Solusi Teknologi adalah perusahaan teknologi inovatif
yang secara konsisten menghasilkan perangkat lunak dan desain Solusi
Bisnis berkompetensi tinggi serta jaringan yang luas, profesionalisme
dan semangat kerja positif PT. Aka Solusi Teknologi menghadirkan
solusi cerdas untuk mencapai tujuan bersama melalui pembangunan
inovasi dan teknologi terbaru sehingga tercipta produk dengan
antarmuka yang mudah digunakan.
1.
Produk dan Layanan
a. Pengembangan Aplikasi
PT. Aka Solusi Teknologi menciptakan produk software dan
dan website sesuai keinginan dan kebutuhan pelanggan. Mengikuti
standar yang ditetapkan untuk penggunaan pribadi, organisasi dan
perusahaan. Faktor keamanan dan kepuasan pelanggan, merupakan
perhatian utama.
b. Integrasi Sistem
Sistem yang menyeluruh akan memudahkan pelanggan dalam
pemanfaatan dan pemantauan. Dengan keahlian yang dimiliki PT.
Aka
Solusi
Teknologi
akan
membantu
pelanggan
untuk
mewujudkan kemudahan tersebut.
c. Konsultasi dan Training
Perkembangan yang sangat pesat dibidang Hardware dan
Software,
membutuhkan
perencanaan
yang
matang
untuk
penggunan, sehingga keputusan yang ditetapkan efisien dari segi
biaya dan efektif dari segi kinerja.
d. Pengadaan Peralatan IT
Seiring
berkembangnya
teknologi,
kebutuhan
perangkat
pendukung akan semakin meningkat. Dengan beragam produk dan
spesifikasi yang dipasarkan, PT. Aka Solusi Teknologi siap
membantu customer dalam memenuhi kebutuhan tersebut.
2. Tempat dan Kedudukan PT. Aka Solusi Teknologi
Tempat dan kedudukan Kantor PT. Aka Solusi Teknologi
bertempat di Jalan Ujung Gurun No. 87, Kelurahan Ujung Gurun,
Padang, Sumatera Barat.
3. Bidang Pekerjaan PT. Aka Solusi Teknologi
PT. Aka Solusi Teknologi bergerak dibidang usaha software
development , sistem informasi, konsultan IT, dan pengadaan peralatan
IT.
4. Struktur Organisasi
Gambar 1. Gambar Struktur Organisasi
5. Disiplin Kerja
Tertib adalah peraturan yang dibuat secara tertulis yang memuat
tentang syarat-syarat kerja serta disiplin karyawan PT. Aka Solusi
Teknologi. Karyawan PT. Aka Solusi Teknologi memulai kerja sebagai
disiplin kerja yang dilaksanakan pada pukul 08.00 wib setiap hari
dengan peraturan kerja yang dibuat dengan maksud untuk menjadi
pedoman dalam melaksanakan tugas masing-masing yang pada
umumnya memuat berbagai tata cara yang harus diindahkan oleh setiap
karyawan yang berisikan tentang hak-hak dan kewajiban masingmasing pihak dengan tujuan:
a.
Memelihara hubungan kerjasama baik dinamis antara perusahaan
dan karyawan.
b.
Menggalang bersama untuk meningkatkan produktivitas kerja.
c.
Sebagai perlindungan yang dapat memberikan kapasitas terhadap
hak dan kewajiban pengusaha dan karyawan.
d.
Terpelihara keserasian, kerapian dan kesejahteraan karyawan demi
kelancaran aktifitas perusahaan.
6. Keselamatan Kerja
Teknologi informasi dan komunikasi merupakan teknologi tinggi
yang
akhir-akhir
ini
berkembang
sangat
pesat.
Dengan
diperkenalkannya teknologi yang baru di tempat kerja atau lingkungan
rumah, aspek keshatan dan keselamatan kerja harus dipertimbangkan
dengan seksama.
Aspek-aspek yang diperhatikan dalam bekerja dibidang TI adalah
sebagai berikut:
a.
Menggunakan komputer harus pada posisi yang benar dan jangan
sampai terlalu lama, karena dapat menyebabkan kerusakan pada
mata.
b.
Kehati-hatian dalam pemasangan listrik untuk komputer, karena
dapat mengakibatkan hal yang fatal. Sehingga dalam pemasangan
jaringan atau memanjat tower diperlukan kehati-hatian, dan
menggunakan pengamanan yang lengkap, seperti menggunakan
safetybelt dan lain-lainnya.
C. Perencanaan Kegiatan PLI
Adapun rencana kegiatan yang dirinci tau disusun dalam
melaksanakan PLI sebagai berikut:
Tabel 1. Pelaksanaan Praktek Lapangan Industri
No
1
Tanggal
7 Juni 2016
Kegiatan
Kunjungan Tempat Praktek
2
13 - 25 Juni 2016
Orientasi Lapangan
3
26 Juni – 1 Agustus 2016
Kegiatan Pengalaman Lapanagan
Industri di PT. Aka Solusi Teknologi.
Perbaikan Aplikasi dan Pembuatan
4
2-13 Agustus 2016
Laporan
D. Pelaksanaan Kegiatan PLI
Penulis melaksanakan PLI di PT. Aka Solusi Teknologi pada tanggal
7 Juni – 12 Agustus 2016. Adapun kegiatan yang dilaksanakan selama kerja
praktek di PT. Aka Solusi Teknologi.
a. Kegiatan Umum
a. Pengenalan terhadap ruang lingkup kerja, tata tertib perusahaan
dan struktur organisasi perusahaan.
b. Pengenalan terhadap perangkat lunak dan perangkat keras di PT.
Aka Solusi Teknologi.
b. Kegiatan Khusus
a. Mengerjakan website Bisnis sesuai dengan perintah dari Supervisor
menggunakan framework YII2.
b. Membantu programmer menemukan bug dalam beberapa aplikasi
yang dikembangkan PT. Aka Solusi Teknologi..
BAB II
IMPLEMENTASI YII2 FRAMEWORK DALAM PEMBUATAN WEBSITE
INFORMASI BISNIS
A. Teori Singkat
a. Framework
Framework adalah kerangka kerja yang juga dapat diartikan
sebagai kumpulan script (terutama class dan function) yang dapat
membantu developer/programmer dalam menangani berbagai masalahmasalah dalam pemrograman seperti koneksi ke database, pemanggilan
variabel, file,dll sehingga developer lebih fokus dan lebih cepat
membangun aplikasi. Bisa juga dikatakan Framework adalah
komponen pemrorgaman yang siap re-use kapan saja, sehingga
programmer tidak harus membuat skrip yang sama untuk tugas yang
sama
dari
awal.
Framework
menggunkan
konsep
MVC
(Model,view,controller ) sebagai asiterktur untuk membangun sebuah
aplikasi.
Konsep MVC
MVC
adalah
konsep
pemrograman,
dimana
logika
pemrograman, query database, dan tampillannya dipisahkan
sehingga kode-kode penyusun sebuah aplikasi web terlihat lebih
sederhana dan terstruktur. Jadi, tidak akan ada query database di
dalam sebuah file yang memang ditujukan untuk tampilan.
Gambaran tentang konsep MVC, seperti di bawah ini :
10
Gambar 2. Skema MVC (Model, View, Controller)
Bagian dari MVC, yaitu :
1) Model
Model mewakili struktur data. Model berfungsi untuk mengontrol
data, berupa CRUD (Create, Read, Update & Delete) pada database
yang digunakan oleh sistem. Model berisi class dan fungsi seperti
Controller , tidak seperti pada view . Pemanggilan model hampir
sama dengan pemanggilan view, namun perbedaannya dalam
pemanggilan model dilakukan dengan pemanggilan fungsi.
2) View
View adalah bagian yang mengatur tampilan ke pengguna. View
berisi kode-kode html, css, maupun javascript yang digunakan
sebagai tampilan web nantinya.
3) Controller
Controller merupakan bagian yang menjembatani model dan view.
Controller berisi perintah-perintah yang berfungsi untuk memproses
suatu data dan mengirimkannya ke halaman web. Controller yang
menghandle input dari user.
b. YII2
Yii adalah framework (kerangka kerja) PHP berbasis-komponen,
berkinerja tinggi untuk pengembangan aplikasi Web berskala-besar. Yii
menyediakan reusability maksimum dalam pemrograman Web dan
mampu meningkatkan kecepatan pengembangan secara signifikan.
Nama Yii (dieja sebagai /i:/) singkatan dari "Yes It Is!".
a. Fitur
Berikut ini beberapa fitur-fitur yang terdapat pada Yii :
1) Arsitektur programing menggunakan konsep Model, View,
Controller atau biasa disebut MVC.
2) Object Relational Mapping atau ORM merupakan salah satu
fitur di dalam Yii yang mengurusi pengelolaan database, jika
kita lihat secara spesifik maka Yii sebenarnya menyediakan
mekanisme seperti DAO (Data Access Object),
Builder ,
Query
Active Record(ORM) dan Database Migration.
Dengan ORM pekerjaan developer menjadi terbantu karena
tidak lagi menulis query SQL yang rumit, cukup dengan
memanggil fungsi-fungsi tertentu di dalam library Yii.
3) Form input dan Validasi adalah fitur yang mengatur inputan
pada suatu form dan sekaligus membantu melakukan validasi
pada inputan.
4) Widget merupakan konsep di Yii yang menyediakan
komponen-komponen user interface yang siap pakai, misalnya
data grid,
autocomplete,
widget-widget
ini
ada
library Jquery sehingga
tree view dan lain-lain. Adapun
yang
terintegrasi
dengan
memungkinkan
untuk
mekanisme AJAX.
5) Autentikasi hak akses dan Autorisasi loging dan logout.
6) Masalah tampilan (view) Yii menggunakan konsep skinning
kita bisa meng-costumize tampilan komponen user interface di
aplikasi kita menggunakan CSS sedangkan dengan konsep
Theming kita bisa mengganti-ganti seluruh tampilan aplikasi.
7) Web
service,
pada
Yii
dapat
meng-generate
spesifikasi WSDL service secara otomatis.
8) Translasi, Yii menyediakan fitur penterjemah untuk pesan,
tanggal dan format waktu sesuai zona waktu dan daerah.
9) Caching, dengan fitur caching akses terhadap aplikasi yang
dibangun menggunakan Yii akan lebih ringan ketika diakses
oleh penggunanya.
10) Pesan Error dan Logging yang ada pada Yii bisa memilih untuk
menampilkan langsung ataupun disimpan ke suatu file di server.
Security di dalam Yii membantu dalam mencegah serangan-
serangan
seperti SQL
Injection, XSS,
CSRF,
Cookie
Tampering, dan lain-lain.
11) 3rd Party, Yii telah di desain sedemikian rupa sehingga kita bisa
memasang library external dari pihak ketiga untuk di sematkan
dalam aplikasi.
12) Extension, Yii memiliki segudang extensions. Extension sendiri
merupakan kontribusi dari pengguna-pengguna Yii dengan
membuat widget, library ataupun component yang bisa dipakai
dan belum ada di Yii secara built-in.
13) Dokumentasi Yii.
Dalam menggunakan framework YII2 ada beberapa hal yang
harus diketahui oleh pengguna, yaitu sebagai berikut:
1. Persyaratan
Untuk
menjalankan
aplikasi
Web
berbasis
Yii,
diperlukan server Web yang mendukung PHP 5.1.0. Bagi para
pengembang
yang
ingin
menggunakan
Yii,
mengerti
pemrograman berorientasi-objek (OOP) akan sangat membantu,
karena Yii merupakan framework OOP murni.
2. Penggunaan Yii
Yii adalah framework pemrograman umum Web yang
bisa dipakai untuk mengembangkan semua jenis aplikasi Web.
Dikarenakan sangat ringan dan dilengkapi dengan mekanisme
caching yang canggih, Yii sangat cocok untuk pengembangan
aplikasi dengan lalu lintas-tinggi, seperti portal, forum, sistem
manajemen konten (CMS), sistem e-commerce, dan lain-lain.
3. Perbandingan Yii dengan Framework lain
Seperti kebanyakan PHP framework , Yii adalah MVC
framework. Yii melampaui framework PHP lain dalam hal
efisiensi, kekayaan-fitur, dan kejelasan dokumnetasi. Yii
didesain dengan hati-hati dari awal agar sesuai untuk
pengembangan aplikasi Web secara serius. Yii bukan berasal
dari produk pada beberapa proyek maupun konglomerasi
pekerjaan pihak ketiga. Yii adalah hasil dari pengalaman kaya
dari para pembuat pada pengembangan aplikasi Web dan
investigasi framework pemrogaraman Web dan aplikasi yang
paling populer.
Yii 2 Framework adalah versi terbaru dari YII yang
merupakan complete rewrite, yang telah mengadopsi teknologi
dan protokol terbaru termasuk Composer, PSR, namespaces,
traits, dan lain-lain. yii2 juga terbagi menjadi yii2 basic dan yii2
advanced. Perbedaan YII 2 basic dan YII 2 advaced seperti
tabel berikut:
Tabel 2. Perbedaan YII2 Basic dan YII2 Advanced
c.
MySQL
MySQL adalah sebuah perangkat lunak sistem manajemen basis
data SQL (bahasa Inggris: database management system) atau DBMS
yang multhithread, multi-user, dengan sekitar 6 juta instalasi di seluruh
dunia. MySQL AB membuat MySQL tersedia sebagai perangkat lunak
gratis dibawah lisensi GNU General Public License (GPL), tetapi
mereka juga menjual dibawah lisensi komersial untuk kasus-kasus di
mana penggunaannya tidak cocok dnegan penggunaan GPL.
Tidak sama dengan proyek-proyek seperti Apache, di mana
perangkat lunak dikembangkan oleh komunitas umum, dan hak cipta
untuk kode sumber dimiliki oleh penulisnya masing-masing, MySQL
dimiliki dan disponsori oleh sebuah perusahaan komersial Swedia
MySQL AB, di mana memegang hak cipta hampir atas semua kode
sumbernya. Kedua orang Swedia dan satu orang Finlandia yang
mendirikan MySQL AB adalah: David Axmark, Allan Larsson, dan
Michael ”Monty” Widenius.
MySQL memiliki keistimewaan diantaranya:
1. Portabilitas. MySQL dapat berjalan stabil pada berbagai sistem
operasi seperti Windows, Linux, FreeBSD, Mac Os X Server,
Solaris, Amiga, dan masih banyak lagi.
2. Perangkat lunak sumber terbuka. MySQL didistribusikan sebagai
perangkat lunak sumber terbuka, dibawah lisensi GPL sehingga
dapat digunakan secara gratis.
3. Multi-user. MySQL dapat digunakan oleh beberapa pengguna dalam
waktu yang bersamaan tanpa mengalami masalah atau konflik.
4. ‘performance
tuning’,
MySQL
memiliki
kecepatan
yang
menakjubkan dalam menangani query sedeerhana, dengan kata lain
dapat memproses lebih banyak SQL per satuan waktu.
5. Ragam tipe data. MySQL memiliki ragam tipe data yang sangat
kaya, seperti signed / unsigned integer, float, double, char, text, date,
timestamp, dan lain-lain.
6. Perintah dan fungsi. MySQL memiliki operator dan fungsi secara
penuh yang mendukung perintah Select dan Where dalam perintah
(query).
7. Keamanan. MySQL memiliki beberapa lapisan keamanan seperti
level subnetmask, nama host, dan izin akses user dengan sistem
perizinan yang mendetail serta sandi terenkripsi.
8. Skalabilitas dan Pembatasan.
d. PHP
PHP adalah bahasa pemrograman script server-side yang
didesain untuk mengembangkan web. Selain itu, PHP juga bisa
digunakan sebagai bahasa pemrograman umum. PHP dikembnagkan
pada tahun 1995 oleh Rasmus Lerdorf, dan sekarang dikelola oleh The
PHP Group. Situs resmi PHP beralamat di http://www.php.net .
PHP disebut sebagai bahasa pemrograman server side karena
PHP diproses pada komputer server. Hal ini berbeda dibandingkan
dengan bahasa pemrograman client-side seperti JavaScript yang
diproses pada web browser (client). Pada awalnya PHP merupakan
singkatan dari Personal Home Page. Sesuai dengan namanya, PHP
digunakan untuk membuat website pribadi. Dalam beberapa tahun
perkembangannya, PHP menjelma menjadi bahasa pemrograman web
yang powerful dan tidak hanya digunakan untuk membuat halaman web
sederhana, tetapi juga website populer yang digunakan oleh jutaan
orang seperti wikipedia, wordpress, joomla, dll. PHP dapat digunakan
dengan gratis dan bersifat open source. PHP dirilis dalam lisensi PHP
Lisence, sedikit berbeda dengan lisensi GNU General Public Lisence
(GPL) yang biasa digunakann untuk proyek Open Source.
Kelebihan PHP dari bahasa pemrograman lain yaitu :
1) Bahasa pemrograman PHP adalah sebuah bahasa script yang tidak
melakukan sebuah kompilasi dalam penggunaannya.
2) Web Server yang mendukung PHP dapat ditemukan dimana- mana
dari mulai apache, IIS, Lighttpd, hingga Xitami dengan konfigurasi
yang relatif mudah.
3) Dalam pengembangannya lebih mudah karena banyak milis – milis
dan developer yang siap membantu dalam pengembangan.
4) Dalam sisi pemahaman, PHP adalah bahasa scripting yang paling
mudah karena memiliki referensi paling banyak.
5) PHP adalah bahasa open source yang dapat digunakan di berbagai
mesin (Linux, Unix, Macintosh, Windows) dan dapat dijalankan
secara runtime melalui console serta juga dapat menjalankan
perintah-peritah sistem.
e.
Back End
Back End adalah istilah halaman belakang pada situs bersistem
CMS (Content Management System). Memungkinkan seseorang untuk
masuk sebagai administrator dan melakukan perubahan informasi
dalam website mereka. Untuk memiliki tingkatan halaman yang aman ,
setidaknya halaman Back-end dilindungi dengan https dan juga SSL
yang akan membuat enskripsi menjadi aman , dan juga password
administrator yang berformat MD5. Dengan memiliki halaman Backend akan memudahkan seorang user untuk meng-update situs mereka.
Pada CMS konsep Back-end haruslah benar-benar aman , sebab
jika seorang hacker dapat menembusnya maka mereka dapat
melakukan apa-apa terhadap situs. Biasanya back-end page ini dapat
diakses dengan mengetikkan beberapa nama direktori khusus admin.
Tingkatan User biasanya akan berdampak kepada kemampuan
mereka dalam mengakses beberapa menu. Tingkatan tertinggi terdapat
pada Super Administrator, administrator, Global Publisher, Publisher.
B. Proses Pengerjaan
a. Proses Penginstalan
Website Informasi Bisnis ini dikerjakan menggunakan framework
YII2. Untuk itu, maka perlu dilakukan penginstallan YII2 framework
menggunakan composer. Composer adalah tools Dependency Manager
untuk pemograman PHP yang bertujuan memudahkan pengintallan
aplikasi web berbasis PHP. Untuk mendownload composer, bisa di
download
di
getcomposer.org/download.
Selanjutnya,
lakukan
penginstallan YII2 framework sebagai berikut :
a. Buka command prompt
b. Masuk ke directory xampp, ketikkan cd c:\xampp\php pada command
prompt
c. Lalu ketik
php.exe -r
"readfile('https://getcomposer.org/installer');" |
php.exe
d. Update composer, ketikkan
php.exe composer.phar self-update
e. Buat project baru dengan mengetikkan kode berikut :
php.exe composer.phar global require "fxp/composerasset-plugin:1.0.0-beta3"
f. Kemudian ketik
php.exe composer.phar create-project --prefer-dist -stability=dev yiisoft/yii2-app
advanced ../htdocs/bisnis1
g. Lalu inisialisasi project dengan mengetikkan
php.exe ../htdocs/bisnis1/init
h. Lalu akan ada pilihan 0 untuk Development or 1 untuk Poduction,
pilih 0 lalu enter , Lalu ada pertanyaan lagi , ketik yes
Gambar 3. Inisialisasi project
i. Project
sudah
terinstal.
Untuk
menguji
,
ketikkan
localhost/bisnis1/backend/web pada browser , maka akan tampil
sebagai berikut :
Gambar 4. YII2 Berhasil di install
b. Directory Pada YII2 Framework
Ketika menginstall yii dengan advanced application template,
maka kita akan menjumpai beberapa folder utama dan beberapa file,
berikut ini penjelasan mengenai fungsi masing-masing folder :
a. backend – pengembangan web yang berhubungan dengan database dan
sistem
b. common – common file untuk semua aplikasi.
c. console – aplikasi console.
d. environments - konfigurasi environment
e. frontend - – pengembangan web yang berhubungan dengan disain
tampilan
Penjelasan untuk beberapa file :
a. .gitignore berisi daftar direktori diabaikan oleh sistem versi git. Jika
ada kode yang dibutuhkan, tapi ada di repository, tambahkan disini.
b. composer.json – Penjelasan tentang konfigurasi composer
c. init – Inisialisasi script
d. init.bat - same for Windows.
e. LICENSE.md – Info lisensi project
f. README.md – Informasi dasar tentang penginstallan
g. requirements.php – Syarat-syarat untuk penginstallan yii
h. yii - console application bootstrap.
i. yii.bat - same for Windows.
Intinya, ada 3 aplikasi yaitu frontend, backend dan console.
1) Frontend adalah aplikasi web yang akan ditampilkan untuk end user.
2) Backend adalah aplikasi web yang berfungsi untuk administrator
dalam mengelola aplikasi frontend.
3) Console adalah aplikasi yang digunakan untuk cron jobs and low-level
server management, serta digunakan selama deployment aplikasi dan
menghandle migrations dan assets.
4) Folder common berisi file-file yang digunakan oleh lebih dari satu
aplikasi, sebagai contoh global configuration seperti pengaturan koneksi
database, atau general model seperti model user .
c. Pembuatan Database
Database yang dibentuk adalah sebagai berikut:
Gambar 5. Struktur Database Bisnis
Dengan nama database bisnis, diisikan tabel – tabel seperti berikut ini :
Nama Tabel
Field
User
id (int :11 primarykey)
username (varchar : 255)
auth_key (varchar : 32)
password_hash(varchar :255)
password_reset_token(varchar :255)
email (varchar :255)
status (smallint : 6)
created_at (int :11)
updated_at (int :11)
Posting
idPosting (int : 11 primarykey)
judul (varchar :200)
isi (text)
tglPosting(datetime)
foto (varchar :200)
idKategori (int :11)
slug (varchar :255)
Slider
idSlider (int :11) primarykey
judul (varchar :255)
foto (varchar :255)
Kategori
idKategori (int :11)
namaKategori (varchar :200)
Contact
id_contact (int :11) primary key
phone (int :11)
nama (varchar :255)
email (varchar :255)
pesan (text)
waktu (datetime)
Comment
idComment (int :11 primary key)
content (text)
status (int :15)
create_time (int :11)
uname (varchar :128)
email (varchar : 128)
idPosting (int :11 foreign key)
Gambar 6. Database
d. Menghubungkan Database pada YII2
1) Buka pada folder common dan pilih folder config
2) Kemudian pilih main-local.php
3) Akan keluar script seperti berikut ini :
IMPLEMENTASI YII2 FRAMEWORK DALAM PEMBUATAN BACKEND
WEBSITE INFORMASI BISNIS
Oleh :
FANNY OKTAVIA
1306572/2013
PROGRAM STUDI S1 PENDIDIKAN TEKNIK INFORMATIKA
JURUSAN TEKNIK ELEKTRONIKA
FAKULTAS TEKNIK
UNIVERSITAS NEGERI PADANG
2016
Halaman Pengesahan Perusahaan
Laporan Ini Disampaikan Untuk Memenuhi Sebagian dari Persyaratan
Penyelesaian Pengalaman Lapangan Industri FT-UNP Padang
Semester Juli – Desember 2016
Oleh
Fanny Oktavia
Nim: 1306572. 2013
Jurusan Teknik Elektronika
Program Studi Pendidikan Teknik Informatika dan Komputer
Diperiksa dan disahkan oleh:
Supervisor
Muhammad Aser, S.Pd
Menyetujui
Direktur
Geovanne Farell, S.Pd, M.Pd.T
i
Lembaran Pengesahan Fakultas
Laporan Ini Disampaikan Untuk Memenuhi Sebagian dari Persyaratan
Penyelesaian Pengalaman Lapangan Industri FT-UNP Padang
Semester Juli – Desember 2016
Oleh
Fanny Oktavia
Nim: 1306572. 2013
Jurusan Teknik Elektronika
Program Studi Pendidikan Teknik Informatika dan Komputer
Diperiksa dan disahkan oleh :
Dosen Pembimbing
Yeka Hendriyani , S.Kom, M.Kom
Nip: 198405202010122003
a.n. Dekan FT UNP
Kepala Unit Hubungan Industri
Drs. Bahrul Amin, ST, M. Pd
NIP. 19630212 198603 1 02
ii
KATA PENGANTAR
Puji dan syukur penulis ucapkan atas kehadirat Allah SWT karena berkat
rahmat, hidayah, dan karunia-Nya,penulis
dapat menyelesaikan laporan
Pengalaman Lapangan Industri (PLI) dengan baik dan benar. Shalawat beriringan
salam untuk Nabi Muhammad SAW yang telah membawa umat manusia dari
kejahiliyahan ke peradaban yang penuh ilmu pengatahuan.
Laporan Pengalaman Lapangan Industri ini disusun berdasarkan apa yang
telah dikerjakan di PT Aka Solusi Teknologi, dimulai pada tanggal 13 Juni 2016
s/d 13 Agustus 2016. Laporan ini disusun untuk memenuhi syarat kelulusan mata
kuliah Pengalaman Lapangan Industri pada jurusan Pendidikan teknik Informatika
dan Komputer. Judul laporan ini yaitu “Implementasi YII2 Framework dalam
Pembuatan Backend Website Informasi Bisnis”.
Dengan segala kerendahan hati penulis mengucapkan terima kasih yang
sebesar-besarnya kepada:
1. Bapak Drs. Syahril, Ph.D selaku Dekan Fakultas Teknik Universitas Negeri
Padang.
2. Bapak Drs. Hanesman, M.M selaku Ketua Jurusan Teknik Elektronika
Universitas Negeri Padang.
3. Bapak Bahrul Amin, S.T, M.Pd selaku kepala Unit Hubungan Industri FT
Universitas Negeri Padang.
iii
4. Bapak Thamrin selaku koordinator PLI Jurusan Elektronika FT UNP.
5. Ibu Yeka Hendriyani, S.Kom, M.Kom selaku dosen pembimbing PLI
6. Bapak Geovanne Farell ,S.Pd, M.Pd.T selaku direktur dan Bapak Muhammad
Aser,S.Pd sebagai Supervisor di PT Aka Solusi Teknologi.
7. Karyawan PT Aka Solusi Teknologi
8. Orang tua dan seluruh keluarga yang selalu ada di setiap waktu dam selalu
memberikan dukungan yang tak ternilai harganya
9. Teman-teman seperjuangan yang telah membantu dalam proses pelaksanaan
PLI dan penyusunan laporan PLI.
Laporan ini disusun oleh penulis dengan segala upaya agar menghasilkan
laporan yang baik. Kekhilafan dan kesalahan merupakan bagian dari proses
kehidupan, jika terdapat kekhilafan dan kesalahan dalam penulisan Laporan
Pengalaman Industri ini penulis mengharapkan kritikan dan saran pembaca demu
bahan pembelajaran bagi penulis kedepannya.
Penulis berharap laporan ini bermanfaat bagi penulis dan pembaca, serta
menjadi semangat dan motivasi bagi rekan-rekan yang akan melaksanakan PLI.
Padang,
Penulis
iv
Agustus 2016
DAFTAR ISI
KATA PENGANTAR .......................................................................................... iii
DAFTAR GAMBAR ........................................................................................... vii
DAFTAR TABEL ................................................................................................ ix
DAFTAR LAMPIRAN ......................................................................................... x
BAB I PENDAHULUAN ...................................................................................... 1
A. Latar Belakang Pelaksanaan PLI................................................................. 1
B. Deskripsi Tentang Perusahaan / Instansi PLI .............................................. 3
C. Perencanaan Kegiatan PLI .......................................................................... 8
D. Pelaksanaan Kegiatan PLI ........................................................................... 8
BAB II IMPLEMENTASI YII2 FRAMEWORK DALAM PEMBUATAN
WEBSITE INFORMASI BISNIS ...................................................................... 10
A. Teori Singkat ............................................................................................. 10
a. Framework .............................................................................................. 10
b. YII2 ......................................................................................................... 12
c. MySQL ................................................................................................... 16
d. PHP ......................................................................................................... 18
e. Back End ................................................................................................. 20
B. Proses Pengerjaan ...................................................................................... 20
a. Proses Penginstalan ................................................................................. 20
b. Directory Pada YII2 Framework ............................................................ 23
c. Pembuatan Database ............................................................................... 24
d. Menghubungkan Database pada YII2 ..................................................... 27
e. Generating Code dengan Gii ................................................................... 28
f. Menambah Template AdminLTE pada Halaman Admin ....................... 32
v
g. Implementasi YII2 Framework pada Backend ....................................... 34
BAB III PENUTUP ............................................................................................. 59
A. Kesimpulan................................................................................................ 59
B. Saran .......................................................................................................... 61
DAFTAR PUSTAKA .......................................................................................... 63
vi
DAFTAR GAMBAR
Gambar 1.
Gambar Struktur Organisasi ..................................................... 6
Gambar 2.
Skema MVC (Model, View, Controller) .................................. 11
Gambar 3.
Inisialisasi project ...................................................................... 22
Gambar 4.
YII2 Berhasil di install .............................................................. 22
Gambar 5.
Struktur Database Bisnis .......................................................... 24
Gambar 6.
Database ..................................................................................... 26
Gambar 7.
Halaman Yii Code Generator................................................... 28
Gambar 8.
Model Generator pada posting ................................................ 29
Gambar 9.
Model Generator yang sukses digenerate ............................... 29
Gambar 10.
CRUD generator untuk Posting ............................................... 30
Gambar 11.
CRUD Generator berhasil ........................................................ 31
Gambar 12.
Melakukan generate pada Controller Generator ................... 31
Gambar 13.
Controller Generate berhasil ................................................... 32
Gambar 14.
Submenu ..................................................................................... 32
Gambar 15.
memasukkan template adminLTE pada main-local.php ...... 33
Gambar 16.
tampilan AdminLTE pertama kali install............................... 33
Gambar 17.
Merubah Warna AdminLTE ................................................... 34
Gambar 18.
tampilan AdminLTE dengan warna yang berbeda ............... 34
Gambar 19.
Menu Login saat pertama kali menginstall YII2 ................... 35
Gambar 20.
Menu Login setelah diterapkan tema adminLTE .................. 35
Gambar 21.
Menu Home pada Halaman Admin ......................................... 36
Gambar 22.
Posting ........................................................................................ 36
Gambar 23.
Create Posting ............................................................................ 37
Gambar 24.
Kolom isi yang Menggunakan Widget TinyMce .................... 38
Gambar 25.
File Input dalam mnegupload file ............................................ 40
Gambar 26.
Dropdown list pada kategori .................................................... 40
Gambar 27.
View Posting ............................................................................... 41
Gambar 28.
Slider ........................................................................................... 44
Gambar 29.
Create Slider .............................................................................. 45
Gambar 30.
View Slider ................................................................................. 47
Gambar 31.
Create Kategori ......................................................................... 51
vii
Gambar 32.
View Kategori ............................................................................ 53
Gambar 33.
Kontak ........................................................................................ 54
Gambar 34.
Detail kontak .............................................................................. 56
Gambar 35.
Detail komentar ......................................................................... 57
viii
DAFTAR TABEL
Tabel 1.
Pelaksanaan Praktek Lapangan Industri ......................................... 8
Tabel 2.
Perbedaan YII2 Basic dan YII2 Advanced .................................... 16
ix
DAFTAR LAMPIRAN
Lampiran 1. Surat Permohonan Pengalaman Lapangan Industri
Lampiran 2. Surat Balasan Perusahaan
Lampiran 3. Daftar Hadir PLI
Lampiran 4. Catatan Konsultasi Laporan dengan Supervisor
Lampiran 5. Catatan Konsultasi Laporan dengan Dosen Pembimbing
x
xi
i
BAB I
PENDAHULUAN
A. Latar Belakang Pelaksanaan PLI
Fakultas Teknik Universitas Negeri Padang sebagai salah satu
lembaga pendidikan yang berupaya mengembangkan dan meningkatkan
Sumber Daya Manusia (SDM), yakni menjadikan manusia seutuhnya yang
memiliki wawasan ilmu pengetahuan dan teknologi (IPTEK) dan bertaqwa
kepada Tuhan Yang Maha Esa.
Fakultas Teknik Universitas Negeri Padang (FT-UNP) juga berupaya
melaksanakan program-program pendidikan yang betujuan menghasilkan
lulusan yang tidak saja memahami ilmu pengetahuan dan teknologi akan
tetapi juga mampu mempraktekkan serta mengembangkannya baik dalam
pendidikan maupun didalam dunia industri.
Upaya yang dilakukan Fakultas Teknik Negeri Padang adalah
mengadakan suatu program pengalaman
yaitu dengan mengirim
Mahasiswa-mahasiswanya keperusahaan yang relevan dengan jurusan
masing-masing yang dinamakan dengan Pengalaman Lapangan Industri
(PLI) yang merupakan salah satu syarat bagi mahasiswa Fakultas Teknik
untuk menyelesaikan Pendidikan Diploma 3 (D3) dan Strara 1 (S1).
Kegiatan PLI harus dilaksanakan untuk memenuhi persyaratan
wisuda, dan menjadi mata kuliah wajib yang harus dilaksanakan, mata
1
2
kuliah Pengalaman Lapangan Industri dengan nomor seksi
201610760063 dan 3 sks, PLI ini dilaksanakan selama 2 bulan dari tanggal
13 Juni 2016 – 13 Agustus 2016. Selain merupakan salah satu syarat untuk
menyelesaikan pendidikan, PLI ini dilakukan untuk menambah wawasan
dan merupakan wadah pengenalan lingkungan kerja untuk meningkatkan
pengetahuan keterampilan. Sehingga pada saat memasuki dunia kerja. PT
Aka Solusi Teknologi merupakan salah satu perusahaan yang bergerak di
bidang teknologi informasi. Telah banyak produk yang dihasilkan seperti
aplikasi yeng berbasis WEB, desktop, maupun mobile. PT Aka Solusi
Teknologi memberikan layanan jasa pembuatan dan pengembangan aplikasi
yang disesuaikan dengan kebutuhan klien. Salah satu produk yang dibuat
yaitu “Website Informasi Bisnis”
1. Tujuan Penulisan
Tujuan dari Pelaksanaan Pengalaman Lapangan Industri FT UNP
adalah sebagai berikut :
a. Merupakan
salah
satu
sarana
bagi
mahasiswa
untuk
mengaplikasikan ilmu yang diperoleh diperkuliahan
b. Menambah wawasan dan pengetahuan tentang dunia kerja dengan
memperhatikan, mempelajari, dan memahami proses kerja beserta
aturan-aturannya.
c. Meningkatkan keterampilan dan kreatifitas mahasiswa melalui
keterlibatan langsung dalam berbagai kegiatan perusahaan.
2. Manfaat Pelaksanaan PLI
Kegiatan Pengalaman Lapangan Industri (PLI) ini memberikan
pengalaman kerja bagi penulis di instansi terkait serta sebagai sarana
dalam menambah ilmu pengetahuan dan wawasan dalam bidang Teknik
Informatika. Selain itu kegiatan Pengalaman Lapangan Industri ini juga
sebagai salah satu syarat untuk kelulusan di Program Studi S1
Pendidikan teknik Informatika dan Komputer
3. Waktu dan Tempat Pelaksanaan PLI
Pengalaman Lapangan Industri (PLI) ini dilaksanakan pada
tanggal 7 Juni – 12 Agustus 2016 yang bertempat di PT. Aka Solusi
Teknologi Jalan Ujung Gurun No. 87, Kelurahan Ujung Gurun, Padang,
Sumatera Barat.
B. Deskripsi Tentang Perusahaan / Instansi PLI
PT. Aka Solusi Teknologi adalah perusahaan teknologi inovatif
yang secara konsisten menghasilkan perangkat lunak dan desain Solusi
Bisnis berkompetensi tinggi serta jaringan yang luas, profesionalisme
dan semangat kerja positif PT. Aka Solusi Teknologi menghadirkan
solusi cerdas untuk mencapai tujuan bersama melalui pembangunan
inovasi dan teknologi terbaru sehingga tercipta produk dengan
antarmuka yang mudah digunakan.
1.
Produk dan Layanan
a. Pengembangan Aplikasi
PT. Aka Solusi Teknologi menciptakan produk software dan
dan website sesuai keinginan dan kebutuhan pelanggan. Mengikuti
standar yang ditetapkan untuk penggunaan pribadi, organisasi dan
perusahaan. Faktor keamanan dan kepuasan pelanggan, merupakan
perhatian utama.
b. Integrasi Sistem
Sistem yang menyeluruh akan memudahkan pelanggan dalam
pemanfaatan dan pemantauan. Dengan keahlian yang dimiliki PT.
Aka
Solusi
Teknologi
akan
membantu
pelanggan
untuk
mewujudkan kemudahan tersebut.
c. Konsultasi dan Training
Perkembangan yang sangat pesat dibidang Hardware dan
Software,
membutuhkan
perencanaan
yang
matang
untuk
penggunan, sehingga keputusan yang ditetapkan efisien dari segi
biaya dan efektif dari segi kinerja.
d. Pengadaan Peralatan IT
Seiring
berkembangnya
teknologi,
kebutuhan
perangkat
pendukung akan semakin meningkat. Dengan beragam produk dan
spesifikasi yang dipasarkan, PT. Aka Solusi Teknologi siap
membantu customer dalam memenuhi kebutuhan tersebut.
2. Tempat dan Kedudukan PT. Aka Solusi Teknologi
Tempat dan kedudukan Kantor PT. Aka Solusi Teknologi
bertempat di Jalan Ujung Gurun No. 87, Kelurahan Ujung Gurun,
Padang, Sumatera Barat.
3. Bidang Pekerjaan PT. Aka Solusi Teknologi
PT. Aka Solusi Teknologi bergerak dibidang usaha software
development , sistem informasi, konsultan IT, dan pengadaan peralatan
IT.
4. Struktur Organisasi
Gambar 1. Gambar Struktur Organisasi
5. Disiplin Kerja
Tertib adalah peraturan yang dibuat secara tertulis yang memuat
tentang syarat-syarat kerja serta disiplin karyawan PT. Aka Solusi
Teknologi. Karyawan PT. Aka Solusi Teknologi memulai kerja sebagai
disiplin kerja yang dilaksanakan pada pukul 08.00 wib setiap hari
dengan peraturan kerja yang dibuat dengan maksud untuk menjadi
pedoman dalam melaksanakan tugas masing-masing yang pada
umumnya memuat berbagai tata cara yang harus diindahkan oleh setiap
karyawan yang berisikan tentang hak-hak dan kewajiban masingmasing pihak dengan tujuan:
a.
Memelihara hubungan kerjasama baik dinamis antara perusahaan
dan karyawan.
b.
Menggalang bersama untuk meningkatkan produktivitas kerja.
c.
Sebagai perlindungan yang dapat memberikan kapasitas terhadap
hak dan kewajiban pengusaha dan karyawan.
d.
Terpelihara keserasian, kerapian dan kesejahteraan karyawan demi
kelancaran aktifitas perusahaan.
6. Keselamatan Kerja
Teknologi informasi dan komunikasi merupakan teknologi tinggi
yang
akhir-akhir
ini
berkembang
sangat
pesat.
Dengan
diperkenalkannya teknologi yang baru di tempat kerja atau lingkungan
rumah, aspek keshatan dan keselamatan kerja harus dipertimbangkan
dengan seksama.
Aspek-aspek yang diperhatikan dalam bekerja dibidang TI adalah
sebagai berikut:
a.
Menggunakan komputer harus pada posisi yang benar dan jangan
sampai terlalu lama, karena dapat menyebabkan kerusakan pada
mata.
b.
Kehati-hatian dalam pemasangan listrik untuk komputer, karena
dapat mengakibatkan hal yang fatal. Sehingga dalam pemasangan
jaringan atau memanjat tower diperlukan kehati-hatian, dan
menggunakan pengamanan yang lengkap, seperti menggunakan
safetybelt dan lain-lainnya.
C. Perencanaan Kegiatan PLI
Adapun rencana kegiatan yang dirinci tau disusun dalam
melaksanakan PLI sebagai berikut:
Tabel 1. Pelaksanaan Praktek Lapangan Industri
No
1
Tanggal
7 Juni 2016
Kegiatan
Kunjungan Tempat Praktek
2
13 - 25 Juni 2016
Orientasi Lapangan
3
26 Juni – 1 Agustus 2016
Kegiatan Pengalaman Lapanagan
Industri di PT. Aka Solusi Teknologi.
Perbaikan Aplikasi dan Pembuatan
4
2-13 Agustus 2016
Laporan
D. Pelaksanaan Kegiatan PLI
Penulis melaksanakan PLI di PT. Aka Solusi Teknologi pada tanggal
7 Juni – 12 Agustus 2016. Adapun kegiatan yang dilaksanakan selama kerja
praktek di PT. Aka Solusi Teknologi.
a. Kegiatan Umum
a. Pengenalan terhadap ruang lingkup kerja, tata tertib perusahaan
dan struktur organisasi perusahaan.
b. Pengenalan terhadap perangkat lunak dan perangkat keras di PT.
Aka Solusi Teknologi.
b. Kegiatan Khusus
a. Mengerjakan website Bisnis sesuai dengan perintah dari Supervisor
menggunakan framework YII2.
b. Membantu programmer menemukan bug dalam beberapa aplikasi
yang dikembangkan PT. Aka Solusi Teknologi..
BAB II
IMPLEMENTASI YII2 FRAMEWORK DALAM PEMBUATAN WEBSITE
INFORMASI BISNIS
A. Teori Singkat
a. Framework
Framework adalah kerangka kerja yang juga dapat diartikan
sebagai kumpulan script (terutama class dan function) yang dapat
membantu developer/programmer dalam menangani berbagai masalahmasalah dalam pemrograman seperti koneksi ke database, pemanggilan
variabel, file,dll sehingga developer lebih fokus dan lebih cepat
membangun aplikasi. Bisa juga dikatakan Framework adalah
komponen pemrorgaman yang siap re-use kapan saja, sehingga
programmer tidak harus membuat skrip yang sama untuk tugas yang
sama
dari
awal.
Framework
menggunkan
konsep
MVC
(Model,view,controller ) sebagai asiterktur untuk membangun sebuah
aplikasi.
Konsep MVC
MVC
adalah
konsep
pemrograman,
dimana
logika
pemrograman, query database, dan tampillannya dipisahkan
sehingga kode-kode penyusun sebuah aplikasi web terlihat lebih
sederhana dan terstruktur. Jadi, tidak akan ada query database di
dalam sebuah file yang memang ditujukan untuk tampilan.
Gambaran tentang konsep MVC, seperti di bawah ini :
10
Gambar 2. Skema MVC (Model, View, Controller)
Bagian dari MVC, yaitu :
1) Model
Model mewakili struktur data. Model berfungsi untuk mengontrol
data, berupa CRUD (Create, Read, Update & Delete) pada database
yang digunakan oleh sistem. Model berisi class dan fungsi seperti
Controller , tidak seperti pada view . Pemanggilan model hampir
sama dengan pemanggilan view, namun perbedaannya dalam
pemanggilan model dilakukan dengan pemanggilan fungsi.
2) View
View adalah bagian yang mengatur tampilan ke pengguna. View
berisi kode-kode html, css, maupun javascript yang digunakan
sebagai tampilan web nantinya.
3) Controller
Controller merupakan bagian yang menjembatani model dan view.
Controller berisi perintah-perintah yang berfungsi untuk memproses
suatu data dan mengirimkannya ke halaman web. Controller yang
menghandle input dari user.
b. YII2
Yii adalah framework (kerangka kerja) PHP berbasis-komponen,
berkinerja tinggi untuk pengembangan aplikasi Web berskala-besar. Yii
menyediakan reusability maksimum dalam pemrograman Web dan
mampu meningkatkan kecepatan pengembangan secara signifikan.
Nama Yii (dieja sebagai /i:/) singkatan dari "Yes It Is!".
a. Fitur
Berikut ini beberapa fitur-fitur yang terdapat pada Yii :
1) Arsitektur programing menggunakan konsep Model, View,
Controller atau biasa disebut MVC.
2) Object Relational Mapping atau ORM merupakan salah satu
fitur di dalam Yii yang mengurusi pengelolaan database, jika
kita lihat secara spesifik maka Yii sebenarnya menyediakan
mekanisme seperti DAO (Data Access Object),
Builder ,
Query
Active Record(ORM) dan Database Migration.
Dengan ORM pekerjaan developer menjadi terbantu karena
tidak lagi menulis query SQL yang rumit, cukup dengan
memanggil fungsi-fungsi tertentu di dalam library Yii.
3) Form input dan Validasi adalah fitur yang mengatur inputan
pada suatu form dan sekaligus membantu melakukan validasi
pada inputan.
4) Widget merupakan konsep di Yii yang menyediakan
komponen-komponen user interface yang siap pakai, misalnya
data grid,
autocomplete,
widget-widget
ini
ada
library Jquery sehingga
tree view dan lain-lain. Adapun
yang
terintegrasi
dengan
memungkinkan
untuk
mekanisme AJAX.
5) Autentikasi hak akses dan Autorisasi loging dan logout.
6) Masalah tampilan (view) Yii menggunakan konsep skinning
kita bisa meng-costumize tampilan komponen user interface di
aplikasi kita menggunakan CSS sedangkan dengan konsep
Theming kita bisa mengganti-ganti seluruh tampilan aplikasi.
7) Web
service,
pada
Yii
dapat
meng-generate
spesifikasi WSDL service secara otomatis.
8) Translasi, Yii menyediakan fitur penterjemah untuk pesan,
tanggal dan format waktu sesuai zona waktu dan daerah.
9) Caching, dengan fitur caching akses terhadap aplikasi yang
dibangun menggunakan Yii akan lebih ringan ketika diakses
oleh penggunanya.
10) Pesan Error dan Logging yang ada pada Yii bisa memilih untuk
menampilkan langsung ataupun disimpan ke suatu file di server.
Security di dalam Yii membantu dalam mencegah serangan-
serangan
seperti SQL
Injection, XSS,
CSRF,
Cookie
Tampering, dan lain-lain.
11) 3rd Party, Yii telah di desain sedemikian rupa sehingga kita bisa
memasang library external dari pihak ketiga untuk di sematkan
dalam aplikasi.
12) Extension, Yii memiliki segudang extensions. Extension sendiri
merupakan kontribusi dari pengguna-pengguna Yii dengan
membuat widget, library ataupun component yang bisa dipakai
dan belum ada di Yii secara built-in.
13) Dokumentasi Yii.
Dalam menggunakan framework YII2 ada beberapa hal yang
harus diketahui oleh pengguna, yaitu sebagai berikut:
1. Persyaratan
Untuk
menjalankan
aplikasi
Web
berbasis
Yii,
diperlukan server Web yang mendukung PHP 5.1.0. Bagi para
pengembang
yang
ingin
menggunakan
Yii,
mengerti
pemrograman berorientasi-objek (OOP) akan sangat membantu,
karena Yii merupakan framework OOP murni.
2. Penggunaan Yii
Yii adalah framework pemrograman umum Web yang
bisa dipakai untuk mengembangkan semua jenis aplikasi Web.
Dikarenakan sangat ringan dan dilengkapi dengan mekanisme
caching yang canggih, Yii sangat cocok untuk pengembangan
aplikasi dengan lalu lintas-tinggi, seperti portal, forum, sistem
manajemen konten (CMS), sistem e-commerce, dan lain-lain.
3. Perbandingan Yii dengan Framework lain
Seperti kebanyakan PHP framework , Yii adalah MVC
framework. Yii melampaui framework PHP lain dalam hal
efisiensi, kekayaan-fitur, dan kejelasan dokumnetasi. Yii
didesain dengan hati-hati dari awal agar sesuai untuk
pengembangan aplikasi Web secara serius. Yii bukan berasal
dari produk pada beberapa proyek maupun konglomerasi
pekerjaan pihak ketiga. Yii adalah hasil dari pengalaman kaya
dari para pembuat pada pengembangan aplikasi Web dan
investigasi framework pemrogaraman Web dan aplikasi yang
paling populer.
Yii 2 Framework adalah versi terbaru dari YII yang
merupakan complete rewrite, yang telah mengadopsi teknologi
dan protokol terbaru termasuk Composer, PSR, namespaces,
traits, dan lain-lain. yii2 juga terbagi menjadi yii2 basic dan yii2
advanced. Perbedaan YII 2 basic dan YII 2 advaced seperti
tabel berikut:
Tabel 2. Perbedaan YII2 Basic dan YII2 Advanced
c.
MySQL
MySQL adalah sebuah perangkat lunak sistem manajemen basis
data SQL (bahasa Inggris: database management system) atau DBMS
yang multhithread, multi-user, dengan sekitar 6 juta instalasi di seluruh
dunia. MySQL AB membuat MySQL tersedia sebagai perangkat lunak
gratis dibawah lisensi GNU General Public License (GPL), tetapi
mereka juga menjual dibawah lisensi komersial untuk kasus-kasus di
mana penggunaannya tidak cocok dnegan penggunaan GPL.
Tidak sama dengan proyek-proyek seperti Apache, di mana
perangkat lunak dikembangkan oleh komunitas umum, dan hak cipta
untuk kode sumber dimiliki oleh penulisnya masing-masing, MySQL
dimiliki dan disponsori oleh sebuah perusahaan komersial Swedia
MySQL AB, di mana memegang hak cipta hampir atas semua kode
sumbernya. Kedua orang Swedia dan satu orang Finlandia yang
mendirikan MySQL AB adalah: David Axmark, Allan Larsson, dan
Michael ”Monty” Widenius.
MySQL memiliki keistimewaan diantaranya:
1. Portabilitas. MySQL dapat berjalan stabil pada berbagai sistem
operasi seperti Windows, Linux, FreeBSD, Mac Os X Server,
Solaris, Amiga, dan masih banyak lagi.
2. Perangkat lunak sumber terbuka. MySQL didistribusikan sebagai
perangkat lunak sumber terbuka, dibawah lisensi GPL sehingga
dapat digunakan secara gratis.
3. Multi-user. MySQL dapat digunakan oleh beberapa pengguna dalam
waktu yang bersamaan tanpa mengalami masalah atau konflik.
4. ‘performance
tuning’,
MySQL
memiliki
kecepatan
yang
menakjubkan dalam menangani query sedeerhana, dengan kata lain
dapat memproses lebih banyak SQL per satuan waktu.
5. Ragam tipe data. MySQL memiliki ragam tipe data yang sangat
kaya, seperti signed / unsigned integer, float, double, char, text, date,
timestamp, dan lain-lain.
6. Perintah dan fungsi. MySQL memiliki operator dan fungsi secara
penuh yang mendukung perintah Select dan Where dalam perintah
(query).
7. Keamanan. MySQL memiliki beberapa lapisan keamanan seperti
level subnetmask, nama host, dan izin akses user dengan sistem
perizinan yang mendetail serta sandi terenkripsi.
8. Skalabilitas dan Pembatasan.
d. PHP
PHP adalah bahasa pemrograman script server-side yang
didesain untuk mengembangkan web. Selain itu, PHP juga bisa
digunakan sebagai bahasa pemrograman umum. PHP dikembnagkan
pada tahun 1995 oleh Rasmus Lerdorf, dan sekarang dikelola oleh The
PHP Group. Situs resmi PHP beralamat di http://www.php.net .
PHP disebut sebagai bahasa pemrograman server side karena
PHP diproses pada komputer server. Hal ini berbeda dibandingkan
dengan bahasa pemrograman client-side seperti JavaScript yang
diproses pada web browser (client). Pada awalnya PHP merupakan
singkatan dari Personal Home Page. Sesuai dengan namanya, PHP
digunakan untuk membuat website pribadi. Dalam beberapa tahun
perkembangannya, PHP menjelma menjadi bahasa pemrograman web
yang powerful dan tidak hanya digunakan untuk membuat halaman web
sederhana, tetapi juga website populer yang digunakan oleh jutaan
orang seperti wikipedia, wordpress, joomla, dll. PHP dapat digunakan
dengan gratis dan bersifat open source. PHP dirilis dalam lisensi PHP
Lisence, sedikit berbeda dengan lisensi GNU General Public Lisence
(GPL) yang biasa digunakann untuk proyek Open Source.
Kelebihan PHP dari bahasa pemrograman lain yaitu :
1) Bahasa pemrograman PHP adalah sebuah bahasa script yang tidak
melakukan sebuah kompilasi dalam penggunaannya.
2) Web Server yang mendukung PHP dapat ditemukan dimana- mana
dari mulai apache, IIS, Lighttpd, hingga Xitami dengan konfigurasi
yang relatif mudah.
3) Dalam pengembangannya lebih mudah karena banyak milis – milis
dan developer yang siap membantu dalam pengembangan.
4) Dalam sisi pemahaman, PHP adalah bahasa scripting yang paling
mudah karena memiliki referensi paling banyak.
5) PHP adalah bahasa open source yang dapat digunakan di berbagai
mesin (Linux, Unix, Macintosh, Windows) dan dapat dijalankan
secara runtime melalui console serta juga dapat menjalankan
perintah-peritah sistem.
e.
Back End
Back End adalah istilah halaman belakang pada situs bersistem
CMS (Content Management System). Memungkinkan seseorang untuk
masuk sebagai administrator dan melakukan perubahan informasi
dalam website mereka. Untuk memiliki tingkatan halaman yang aman ,
setidaknya halaman Back-end dilindungi dengan https dan juga SSL
yang akan membuat enskripsi menjadi aman , dan juga password
administrator yang berformat MD5. Dengan memiliki halaman Backend akan memudahkan seorang user untuk meng-update situs mereka.
Pada CMS konsep Back-end haruslah benar-benar aman , sebab
jika seorang hacker dapat menembusnya maka mereka dapat
melakukan apa-apa terhadap situs. Biasanya back-end page ini dapat
diakses dengan mengetikkan beberapa nama direktori khusus admin.
Tingkatan User biasanya akan berdampak kepada kemampuan
mereka dalam mengakses beberapa menu. Tingkatan tertinggi terdapat
pada Super Administrator, administrator, Global Publisher, Publisher.
B. Proses Pengerjaan
a. Proses Penginstalan
Website Informasi Bisnis ini dikerjakan menggunakan framework
YII2. Untuk itu, maka perlu dilakukan penginstallan YII2 framework
menggunakan composer. Composer adalah tools Dependency Manager
untuk pemograman PHP yang bertujuan memudahkan pengintallan
aplikasi web berbasis PHP. Untuk mendownload composer, bisa di
download
di
getcomposer.org/download.
Selanjutnya,
lakukan
penginstallan YII2 framework sebagai berikut :
a. Buka command prompt
b. Masuk ke directory xampp, ketikkan cd c:\xampp\php pada command
prompt
c. Lalu ketik
php.exe -r
"readfile('https://getcomposer.org/installer');" |
php.exe
d. Update composer, ketikkan
php.exe composer.phar self-update
e. Buat project baru dengan mengetikkan kode berikut :
php.exe composer.phar global require "fxp/composerasset-plugin:1.0.0-beta3"
f. Kemudian ketik
php.exe composer.phar create-project --prefer-dist -stability=dev yiisoft/yii2-app
advanced ../htdocs/bisnis1
g. Lalu inisialisasi project dengan mengetikkan
php.exe ../htdocs/bisnis1/init
h. Lalu akan ada pilihan 0 untuk Development or 1 untuk Poduction,
pilih 0 lalu enter , Lalu ada pertanyaan lagi , ketik yes
Gambar 3. Inisialisasi project
i. Project
sudah
terinstal.
Untuk
menguji
,
ketikkan
localhost/bisnis1/backend/web pada browser , maka akan tampil
sebagai berikut :
Gambar 4. YII2 Berhasil di install
b. Directory Pada YII2 Framework
Ketika menginstall yii dengan advanced application template,
maka kita akan menjumpai beberapa folder utama dan beberapa file,
berikut ini penjelasan mengenai fungsi masing-masing folder :
a. backend – pengembangan web yang berhubungan dengan database dan
sistem
b. common – common file untuk semua aplikasi.
c. console – aplikasi console.
d. environments - konfigurasi environment
e. frontend - – pengembangan web yang berhubungan dengan disain
tampilan
Penjelasan untuk beberapa file :
a. .gitignore berisi daftar direktori diabaikan oleh sistem versi git. Jika
ada kode yang dibutuhkan, tapi ada di repository, tambahkan disini.
b. composer.json – Penjelasan tentang konfigurasi composer
c. init – Inisialisasi script
d. init.bat - same for Windows.
e. LICENSE.md – Info lisensi project
f. README.md – Informasi dasar tentang penginstallan
g. requirements.php – Syarat-syarat untuk penginstallan yii
h. yii - console application bootstrap.
i. yii.bat - same for Windows.
Intinya, ada 3 aplikasi yaitu frontend, backend dan console.
1) Frontend adalah aplikasi web yang akan ditampilkan untuk end user.
2) Backend adalah aplikasi web yang berfungsi untuk administrator
dalam mengelola aplikasi frontend.
3) Console adalah aplikasi yang digunakan untuk cron jobs and low-level
server management, serta digunakan selama deployment aplikasi dan
menghandle migrations dan assets.
4) Folder common berisi file-file yang digunakan oleh lebih dari satu
aplikasi, sebagai contoh global configuration seperti pengaturan koneksi
database, atau general model seperti model user .
c. Pembuatan Database
Database yang dibentuk adalah sebagai berikut:
Gambar 5. Struktur Database Bisnis
Dengan nama database bisnis, diisikan tabel – tabel seperti berikut ini :
Nama Tabel
Field
User
id (int :11 primarykey)
username (varchar : 255)
auth_key (varchar : 32)
password_hash(varchar :255)
password_reset_token(varchar :255)
email (varchar :255)
status (smallint : 6)
created_at (int :11)
updated_at (int :11)
Posting
idPosting (int : 11 primarykey)
judul (varchar :200)
isi (text)
tglPosting(datetime)
foto (varchar :200)
idKategori (int :11)
slug (varchar :255)
Slider
idSlider (int :11) primarykey
judul (varchar :255)
foto (varchar :255)
Kategori
idKategori (int :11)
namaKategori (varchar :200)
Contact
id_contact (int :11) primary key
phone (int :11)
nama (varchar :255)
email (varchar :255)
pesan (text)
waktu (datetime)
Comment
idComment (int :11 primary key)
content (text)
status (int :15)
create_time (int :11)
uname (varchar :128)
email (varchar : 128)
idPosting (int :11 foreign key)
Gambar 6. Database
d. Menghubungkan Database pada YII2
1) Buka pada folder common dan pilih folder config
2) Kemudian pilih main-local.php
3) Akan keluar script seperti berikut ini :