BAB II LANDASAN TEORI 2.1 PHP PHP adalah script bersifat server-side yang ditambahkan ke dalam HTML. Kelebihan PHP yang paling signifikan adalah kemampuannya untuk melakukan koneksi dengan berbagai macam database. PHP merupakan bahasa interpreter yang hampir mirip dengan bahasa C dan perl yang memiliki kesederhanaan dalam perintah. PHP dapat digunakan untuk meng-update database, menciptakan database dan mengerjakan perhitungan matematika. PHP adalah bahasa (scripting language) yang dirancang secara khusus untuk penggunaan bahasa web. PHP adalah tool untuk pembuatan halaman web dinamis seperti bahasa pemrograman web lainnya. PHP memproses seluruh perintah yang berada dalam script PHP di dalam web server dan menampilkan outputnya ke dalam web browser clien. Kelebihan PHP dari Bahasa Pemrograman lain antara lain : 1. Bahasa pemrograman PHP adalah sebuah bahasa script yang tidak dapat melakukan sebuah kompilasi dalam penggunaannya. 2. Web Server yang mendukung PHP dapat ditemukan dimana-mana dari mulai apache, IIS, Lighttpd, hingga Xitami dengan konfigurasu yang relatif mudah. 3. Dalam sisi pengembangan lebih mudah, karena banyaknya milis-milis dan developer yang siap membantu dalam pengembangan. 4. Dalam sisi pemahaman, PHP adalah bahasa scripting yang paling mudah karena memiliki referensi yang banyak. 5. PHP adalah bahasa open source yang dapat digunakan diberbagai mesin (Linux, Unix, Macintosh, Windows) dan dapat dijalankan secara runtime melalui consule serta juga dapat menjalankan perintah-perintah sistem. (Erudeye : 2015) 5 6 2.2 MySQL Perkembangannya disebut SQL yang merupakan kepanjangan dari Sructured Query Language. SQL merupakan bahasa terstruktur yang khusus digunakan untuk mengolah database. SQL pertama kali didefinisikan oleh American National Standart Institude (ANSI) pada tahun 1968. MySQL adalah sebuah sistem manajemen database yang bersifat open source. MySQL adalah pasangan serasi dari PHP. MySQL dibuat dan dikembangkan oleh MySQL AB yang berada di Swedia. MySQL dapat digunakan untuk membuat dan mengelola databasebeserta isinya. Kita dapat memanfaatkan MySQL untuk menambahkan, mengubah dan menghapus data yang berada dalam dabatase. MySQL merupakan sistem manajemen database yang bersifat at relational, artinya data-data yang dikelola dalam database akan diletakkan pada beberapa tabel yang terpisah sehingga manipulasi data akan menjadi jauh lebih cepat. MySQL memiliki beberapa keistimewaan, antara lain : 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 digunkan secara gratis. 3. Multi-user. MySQL dapat digunakan oleh beberapa pengguna dalam waktu yang bersamaan tanpa mengalami masalah atau konflik. 4. ‘Performancetuning’, MySQL memiliki kecepatan yang menakjubkan dalam menangani query sederhana, dengan kata lain dapat memproses lebih banyak SQL persatuan waktu. 5. Ragam tipe data. MySQL memiliki ragam tipe data yang sangat kaya, seperti signed/unsigned integer, float, double, char, text, date, timestamp, dan lainlain. 6. Perintah dan fungsi. MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah Select dan Where dalam perintah (query). 7 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. MySQL mampu menangani basis dalam skala besar, dengan jumlah rekaman(records) lebih dari 50 juta dan 60 ribu tabel serta 5 miliar baris. Selain itu batas indexs yang dapat ditampung mencapai 32 indeks pada tiap tabelnya. 9. Konektivitas. MySQL dapat melakukan koneksi dengan klien menggunakan protokol TCP/IP,Unix socket(UNIX),atau NamedPipes(NT). 10. Lokalisasi. MySQL dapat mendeteksi pesan kesalahan pada klien dengan menggunakan lebih dari dua puluh bahasa.Meskipun demikian, bahasa Indonesia belum termasuk didalamnya. 11. Antar Muka.MySQL memiliki antar muka (Interface) terhadap berbagai aplikasi dan bahasa pemrograman dengan menggunakan fungsi API (Application Programming Interface). 12. Klien dan Peralatan. MySQL dilengkapi dengan berbagai peralatan(tool) yang dapat digunakan untuk administrasi basis data, dan pada setiap peralatan yang ada disertakan petunjuk online. 13. Struktur tabel. MySQL memiliki struktur tabel yang lebih fleksibel dalam menangani ALTER TABLE, dibandingkan basis data lainnya semacam PostgreSQL ataupun Oracle.( Erudeye : 2015 ) 2.3 HTML Hyper Text Markup Language (HTML) adalah sebuah bahasa markup yang digunakan untuk membuat sebuah halaman web, menampilkan berbagai informasi di dalam sebuah penjelajah web Internet dan pemformatan hiperteks sederhana yang ditulis dalam berkas format ASCII agar dapat menghasilkan tampilan wujud yang terintegerasi. Dengan kata lain, berkas yang dibuat dalam perangkat lunak pengolah kata dan disimpan dalam format ASCII normal sehingga menjadi halaman web dengan perintah-perintah HTML. 8 Bermula dari sebuah bahasa yang sebelumnya banyak digunakan di dunia penerbitan dan percetakan yang disebut dengan SGML (Standard Generalized Markup Language), HTML adalah sebuah standar yang digunakan secara luas untuk menampilkan halaman web. HTML saat ini merupakan standar Internet yang didefinisikan dan dikendalikan penggunaannya oleh World Wide Web Consortium (W3C). HTML dibuat oleh kolaborasi Caillau TIM dengan Bernerslee Robert ketika mereka bekerja di CERN pada tahun 1989 (CERN adalah lembaga penelitian fisika energi tinggi di Jenewa). ( Erudeye : 2015 ) 2.4 Javascript JavaScript adalah bahasa pemograman web yang bersifat Client Side Programming Language. Client Side Programming Language adalah tipe bahasa pemograman yang pemrosesannya dilakukan oleh client. Aplikasi client yang dimaksud merujuk kepada web browser seperti Google Chrome dan Mozilla Firefox. JavaScript adalah bahasa pemrograman berbasis java yang merupakan interface pembantu dalam pemrograman web. JavaScript populer di internet dan dapat bekerja di sebagian besar penjelajah web populer seperti Internet Explorer (IE), Mozilla Firefox, Netscape dan Opera. Kode JavaScript dapat disisipkan dalam halaman web menggunakan tag SCRIPT dalam file HTML. ( Erudeye : 2015 ) 2.5 CSS Cascading Style Sheet (CSS) merupakan aturan untuk mengendalikan beberapa komponen dalam sebuah web sehingga akan lebih terstruktur dan seragam. CSS bukan merupakan bahasa pemograman. Sama halnya styles dalam aplikasi pengolahan kata seperti Microsoft Word yang dapat mengatur beberapa style, misalnya heading, subbab, bodytext, footer, images, dan style lainnya untuk dapat digunakan bersama-sama dalam beberapa berkas (file). Pada umumnya CSS dipakai untuk memformat tampilan halaman web yang dibuat dengan bahasa HTML dan XHTML. ( Erudeye : 2015 ) 9 2.6 ERD Menurut salah satu para ahli, Brandy dan Loonam (2010), Entity Relationship Diagram (ERD) merupakan teknik yang digunakan untuk memodelkan kebutuhan data dari suatu organisasi, biasanya oleh System Analys dalam tahap analisis persyaratan proyek pengembanngan sistem. Sementara seolah-olah teknik diagram atau alat peraga memberikan dasar untuk desain database relasional yang mendasari sistem informasi yang dikembangkan. ERD bersama-sama dengan detail pendukung merupakan model data yang pada gilirannya digunakan sebagai spesifikasi untuk database. (Shandy Ardianto: 2012) Komponen punyusun ERD adalah sebagai berikut : Tabel 2.1 Simbol - Simbol ERD Komponen Keterangan Persegi panjang mewakili entitas Elips mewakili atribut Belah ketupat mewakili relasi Garis mewakili relasi dan entitas atau relasi dan entitas dengan atribut 2.7 DFD DFD merupakan model dari sistem untuk menggambarkan pembagian sistem ke modul yang lebih kecil. Case control untuk menggambarkan desain proses disertai aliran data (data flow) yang digunakan dalam membangun sistem informasi. DFD (Data Flow Diagram) menunjukkan bagaimana arsitektur sistem informasi dibangun karena dapat menjadi panduan (guide) bagi programmer dalam membuat program. Oleh karena itu proses yang ada dalam DFD cenderung mengarah ke proses yang terjadi secara logika. (Shandy Ardianto: 2012) 10 Komponen Penyusunan DFD adalah sebagai berikut : Tabel 2.2 Simbol - Simbol DFD Komponen Keterangan Proces Merupakan sebuah bentuk kerja sistem yang dilakukan secara terkomputerisasi. Elips mewakili atribut Garis mewakili relasi dan entitas atau relasi dan entitas dengan atribut 2.8 CDM CDM dipakai untuk menggambarkan secara detail struktur basis data dalam bentuk logik. Struktur ini independen terhadap semua software maupun struktur data storage tertentu yang digunakan dalam aplikasi ini.CDM terdiri dari objek yang tidak diimplementasikan secara langsung kedalam basis data yang sesungguhnya. (Shandy Ardianto: 2012) 2.9 PDM PDM merupakan gambaran secara detail basis data dalam bentuk fisik. Penggambaran rancangan PDM memperlihatkan struktur penyimpanan data yang benar pada basis data yang digunakan sesungguhnya. (Shandy Ardianto: 2012) 11