4. Bentuk Normal ketiga (Third Normal Form / 3NF)
2.9 Alat Bantu Pengembangan Sistem .1PHP
2.9.3 Apache Server
Web server adalah software yang memberikan layanan web. Web server menggunakan protokol yang disebut dengan HTTP (HyperText Transfer Protocol). Apache adalah nama web server yang dibuat berbasiskan kode sumber dan ide-ide yang ada pada web server leluhurnya, yaitu web server NCSA. Sesuai namanya, web server NCSA dibuat oleh National Center for Supercomputing Applications. Tidak seperti proyek leluhurnya yang dibiayai oleh pemerintah Amerika, web server Apache dikembangkan oleh sekelompok programmer yang bekerja tanpa dibayar oleh siapapun. Mereka mengerjakan proyek ini dengan berbagai macam alasan, akan tetapi alasan yang paling mendasar adalah mereka senang jika perangkat lunak mereka digunakan oleh banyak orang. Apache adalah web server yang kompak, modular, mengikuti standar protokol HTTP, dan tentu
saja sangat digemari. Kesimpulan ini bisa didapatkan dari jumlah pengguna yang jauh melebihi para pesaingnya.
Sesuai hasil survai yang dilakukan oleh Netcraft, bulan Januari 2005 saja jumlahnya tidak kurang dari 68% pangsa web server yang berjalan di Internet. Ini berarti jika semua web server selain Apache digabung, masih belum bisa mengalahkan jumlah Apache. Saat ini ada dua versi Apache yang bisa dipakai untuk server produksi, yaitu versi mayor 2.0 dan versi mayor 1.3. Anda bisa menggunakan salah satu dari keduanya. Tapi sangat dianjurkan Anda memakai versi 2.0. Alasan menggunakan Apache:
1. Arsitektur modular.
2. Mendukung banyak sistem operasi, termasuk di dalamnya adalah Windows NT/ 2000/ XP dan berbagai varian Unix.
3. Mendukung IP versi 6 (Ipv6).
4. Mendukung berjalannya CGI (Common Gateway Interface) dan SSI (Server Side Include).
5. Mendukung otentifikasi dan kontrol akses.
6. Mendukung SSL (Secure Socket Layer) untuk komunikasi terenkripsi. 7. Konfigurasi yang mudah dipahami.
8. Mendukung Virtual Host.
9. Pesan kesalahan multi bahasa dan bisa dimodifi kasi.
2.9.4 HTML
HTML (Hypertext Markup Language) adalah bahasa yang menggunakan perintah sederhana dalam standar dokumen teks ASCII untuk menyediakan suatu
tampilan visual yang terintegrasi. HTML terdiri atas perintah-perintah sederhana yang menjelaskan bagaimana struktur dokumen, tetapi tidak memformatnya. Browser yang menampilkan HTML akan memformat dan menyesuaikan tampilan HTML sehingga sesuai dengan layer komputer pengunjung.
HTML menggunakan penanda berupa tag (<..>) yang mengindikasikan bagaimana browser web meampilkan elemen halaman seperti teks atau grafik. Metode HTML terletak diantara container tag diawali dengan <nametag> dan diakhiri dengan </ nametag>.
HTML mempunyai tiga buah tag utama, yaitu HTML, HEAD, dan BODY. Tag HTML berfungsi menyatakan suatu dokumen HTML, tag HEAD berfungsi memberkan informasi tentang dokumen, dan tag BODY menetukan bagaimana isi sebuah dokumen ditampilkan oleh browser.
2.9.5 CI / CodeIgniter
Pengertian Framework
Framework adalah kerangka kerja yang memudahkan programmer untuk membuat sebuah aplikasi sehingga programmer akan lebih mudah melakukan perubahan (customize) terhadap aplikasinya dan dapat memakainya kembali untuk aplikasi lain yang sejenis (Shalahudin, 2008 : 13). Dengan framework pengembang tidak harus menulis suatu aplikasi dari awal. Framework dibangun dari kumpulan objek yang digabung dengan desain dan pengkodean dari framework tersebut.
Pengertian CodeIgniter
CodeIgniter adalah sebuah Application Development Framework – seperangkat alat bantu - bagi orang-orang yang membangun situs web menggunakan PHP. Tujuannya adalah untuk memungkinkan Anda untuk mengembangkan proyek-proyek yang jauh lebih cepat daripada yang dapat jika Anda langsung mengkodekannya dari awal, dengan menyediakan berbagai library fungsi yang dibutuhkan untuk membuat tugas-tugas umum, serta antarmuka yang sederhana dan struktur logika dalam mengakses library fungsi tersebut. CodeIgniter memungkinkan Anda menjadi lebih kreatif untuk fokus pada proyek Anda dengan meminimalkan jumlah kode yang dibutuhkan untuk tugas tertentu yang umum (http://www.codeigniter.com).
Kelebihan CodeIgniter
Ada beberapa kelebihan yang dimiliki CodeIgniter, antara lain adalah sebagai berikut :
1. Hemat waktu
Anda tidak membutuhkan banyak waktu untuk mempelajari CI, dan dengan cepat usaha anda untuk belajar akan terbayar dalam menghemat waktu di kemudian hari. Kita bisa melihat contoh berikut, bagaimana CI begitu menghemat serangkaian penggunaan kode yang dibutuhkan. Mari kita ambil 2 contoh, kode PHP tanpa menggunakan CI dan yang menggunakan CI.
Berikut contoh kode yang tanpa menggunakan CI :
$connection=mysql_connect("localhost","fred","12345");
$result=mysql_query ("SELECT * FROM sites",
$connection);
while ($row = mysql_fetch_array($result, MYSQL_NUM))
{
foreach ($row as $attribute)
print "{$attribute[1]}";
}
Berikut contoh kode yang menggunakan CI : $this->load->database('websites');
$query = $this->db->get('sites');
foreach ($query->result() as $row)
{
print $row->url;
}
Cobalah membandingkan jumlah karakter atau huruf yang digunakan, syntax tradisional (tanpa menggunakan CI) menggunakan 224 karakter, dan dengan CI hanya menggunakan 112 karakter.
2. Kokoh dan Aman
Meskipun kita tidak memerlukan untuk menulis banyak kode, CI menyediakan banyak fungsi standar dengan keamanan yang lebih baik. Berikut beberapa fitur keamanan yang dimiliki CI, yaitu :
• Mencegah serangan SQL Injection
Banyak cara yang bisa dilakukan untuk bisa menembus suatu system berbasis web, salah satu yang paling popular dan sering digunakan adalah SQL Injection. SQL injection merupakan suatu teknik
penyerangan dengan cara melakukan input dengan karakter tertentu untuk dapat menjalankan kode SQL yang tidak terverifikasi dan memiliki kerentanan terhadap keamanan data yang didapatkan dari kode SQL yang dijalankan, sehingga biasanya hasil tersebut digunakan oleh pihak yang tidak bertanggung jawab untuk melakukan penyerangan lebih lanjut.
• Melindungi dari serangan XSS
XSS (cross site scripting) adalah jenis serangan yang rentan terjadi yang mana memungkinkan beberapa kode yang tidak diinginkan dilakukan dalam aplikasi kita, serangan phishing, pencurian data, dan banyak lagi. Untuk menghindari ini Anda harus memvalidasi data kita.
CodeIgniter membantu kita untuk melakukannya, dalam semua aplikasi jika Anda mengatur filter XSS global dengan benar di dalam file konfigurasi (config.php), atau kapan pun kita membutuhkannya: $data = $this->input->xss_clean($data);
Kita bahkan dapat menggunakannya untuk memeriksa potensi serangan XSS dalam file gambar:
$this->input->xss_clean ($file, TRUE);
Parameter kedua CI mengatakan bahwa itu adalah gambar yang memerlukan validasi.
3. Konfigurasi yang mudah dan kompatibilitas yang baik terhadap jasa web hosting
Beberapa PHP framework selain CI, semisal Symfony maupun Zend, memiliki konfigurasi yang cukup rumit, bahkan sulit diterapkan pada hosting standar karena harus melakukan perubahan pada file konfigurasi pada web hosting yang mana kita tidak memiliki akses yang cukup untuk melakukannya, semisal kita harus melakukan konfigurasi pada file httpd.conf maupun php.ini. Inilah salah satu alasan mengapa banyak pengembang sistem memilih CI sebagai framework dalam mengembangkan sistemnya.
BAB III