IMPLEMENTASI AJAX PADA SISTEM KRS ONLINE

IMPLEMENTASI AJAX PADA SISTEM KRS ONLINE SKRIPSI

  Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Sains (S.Si)

  Program Studi Ilmu Komputer Oleh :

  Kadek Diyeni Rosita NIM : 033124035

PROGRAM STUDI ILMU KOMPUTER JURUSAN MATEMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA YOGYAKARTA 2007

THE IMPLEMENTATION OF AJAX ON STUDENT ENROLLMENT SYSTEM THESIS

  Presented as Partial Fulfillment of the Requirements For the Degree of Sarjana Sains in Computer Science

  By : Kadek Diyeni Rosita

  Student Number : 033124035

COMPUTER SCIENCE DEPARTMENT OF SCIENCE AND TECHNOLOGY SANATA DHARMA UNIVERSITY YOGYAKARTA 2007

  PERSEMBAHAN

  

If by accident you step into the mud, it is not therefore necessary to keep on

walking in the muddy path

  Karya ini kupersembahkan untuk Bapak P.Dana, alm. yang tersayang

  Semua orang yang berarti dalam hidupku

PERNYATAAN KEASLIAN KARYA

  Saya menyatakan dengan sesungguhnya bahwa skripsi yang saya tulis ini tidak memuat karya atau bagian karya orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar pustaka, sebagaimana layaknya karya ilmiah.

  Yogyakarta, 23 Oktober 2007 Penulis Kadek Diyeni Rosita

IMPLEMENTASI AJAX PADA SISTEM KRS ONLINE

  

Kadek Diyeni Rosita

ABSTRAK

  Aplikasi berbasis web semakin berkembang seiring dengan semakin banyaknya orang yang mengakses internet baik untuk mencari informasi, berbelanja dan melakukan hal-hal yang lain. Tantangan yang dihadapi selama ini adalah membuat aplikasi berbasis web yang responsif serta dapat menampilkan informasi yang selalu terupdate tanpa harus malekukan refresh pada halaman web. Dalam skripsi ini, penulis membuat sebuah sistem yaitu Sistem KRS yang dapat menampilkan perubahan jumlah mahasiswa yang terdaftar di sebuah kelas tanpa harus melakukan proses refresh. Pembuatan sistem tersebut menggunakan teknologi AJAX (Asynchronus JavaScript and XML). Dengan menggunakan AJAX, browser pengguna dapat berkomunikasi secara terus-menerus denagn server, sehingga browser dapat menampilkan informasi terbaru dari server tanpa harus merequest satu halaman penuh. AJAX memungkinkan tampilan aplikasi berbasis web terlihat responsif, selalu terupdate dan tidak memerlukan waktu loading yang lama sehingga pengguna akan merasa lebih nyaman menggunakannya.

  Sistem telah berhasil dibangun dan dapat disimpulkan bahwa dengan menggunakan teknologi AJAX, pengguna tidah perlu melakukan refresh pada halaman web untuk mendapatkan informasi yang uptodate mengenai jumlah mahasiswa yang terdaftar di sebuah kelas.

  

THE IMPLEMENTATION OF AJAX ON STUDENT

ENROLLMENT SYSTEM

Kadek Diyeni Rosita

ABSTRAK

  Web-based application nowdays has been highly improving along with the needs of people ti plug into faster internet access, not only for searching latest information, shopping but also carrying out other activities. When dialing with those kinds of people’s needs, the ultimate challenges hereby emerges in form of demand to create a responsive web-based application. This application intends to display update information without refreshing the web page.

  In this thesis writing, the writer develops a Student Enrollment System, without refreshing the web page, users can get the uptodate number of students enrolled in a particular class. The system is developed using AJAX (Asynchronus JavaScript and XML) technology. By implementing this technology, users browser will able to communicate with server continuously. Moreover, the browser is also able to display the latest information before requesting one full page. AJAX offers a possibility to access a more responsive web-based application display. It will not take too much loading time so that users will be more convenient.

  The system has been successfully developed. It can be concluded that by implementing AJAX, users do not need to refresh the web page in order to get uptodate information about number of students enrolled in a particular class.

KATA PENGANTAR

  Puji syukur ke hadirat Ida Sang Hyang Widhi yang telah melimpahkan rahmat dan kasih-Nya sehingga penulis dapat menyelesaikan skripsi dengan judul

  “Implementasi Ajax Pada Sistem KRS Online”.

  Skripsi ini disusun sebagai salah satu syarat untuk memperoleh gelar Sarjana Sains (S.Si) Program Studi Ilmu Komputer di Fakultas Sains dan Teknologi Universitas Sanata Dharma Yogyakarta.

  Dalam penulisan skripsi penulis menyadari banyak pihak yang telah memberikan sumbangan baik pikiran, waktu, tenaga, bimbingan dan dorongan pada penulis sehingga akhirnya skripsi ini dapat selesai. Oleh karena itu dengan segala kerendahan hati penulis menyampaikan ucapan terima kasih yang sebesar- besarnya kepada :

  1. Bapak Drs. Hj. Haris Sriwindono, M.Kom. selaku dosen pembimbing akademik, sekaligus dosen pembimbing skripsi yang telah memberikan bimbingan, arahan, dan petunjuk selama penulisan skripsi.

  2. Ibu Anastasia Rita Widiarti, S.Si., M.Kom. selaku dosen penguji yang telah memberikan bimbingan, masukan, saran, dan kritik yang membangun untuk skripsi ini.

  3. Bapak St. Eko Hari Parmadi, S.Si., M.Kom selaku dosen penguji yang telah memberikan, masukan, saran dan kritik yang membangun untuk skripsi ini.

  4. Romo Gregorius Heliarko selaku Dekan Fakultas Sains dan Teknologi.

  5. Ibu P.H. Prima Rosa, M.Sc.selaku Kepala Program Studi Ilmu Komputer atas kesabaran dan bimbingannya.

  6. Seluruh dosen pengajar Program Studi Ilmu Komputer Universitas Sanata Dharma yang telah membimbing penulis selama kuliah, dan seluruh karyawan terkait atas bantuan yang diberikan untuk kelancaran penyelesaian skripsi.

  7. Bapak, Ibu, Pak Mang, Mektut dan seluruh keluarga besar terimakasih atas dukungan dan semua pengorbanannya.

  8. Mbo’ Onik, semoga kasih sayang dan kebersamaan kita akan selalu ada.

  9. Wishnu semua dukungan, pengorbanan dan bantuanmu sangat berarti bagiku.

  10. Bombom atas semua bantuan yang tidak akan pernah aku lupakan.

  11. Sahabat-sahabatku tercinta Vitri, Anjar, Clara, Vika dan Rey atas bantuan, semangat dan kerjasamanya “You are my best friend”.

  12. QQ, thanks atas pinjaman komputernya selama pembuatan skripsi.

  13. Teman-teman Humas yang tidak dapat penulis sebutkan satu persatu 14. Teman-teman kos dero 28, kebersamaan kita selama ini begitu indah.

  Penulis menyadari bahwa skripsi ini masih banyak kekurangan dan jauh dari kesempurnaan, sehingga segala kritik dan saran yang bersifat membangun sangat penulis harapkan demi perbaikan skripsi ini. Akhirnya dengan segala kekurangan yang ada, penulis berharap agar skripsi ini masih dapat diambil manfaatnya.

  Yogyakarta, 23 Oktober 2007 Penulis

  

DAFTAR ISI

HALAMAN JUDUL ........................................................................................

  HALAMAN PERSETUJUAN PEMBIMBING .............................................. HALAMAN PENGESAHAN .......................................................................... HALAMAN PERSEMBAHAN ....................................................................... PERNYATAAN KEASLIAN KARYA ........................................................... ABSTRAK .......................................................................................................

  ABSTRACT ......................................................................................................

  KATA PENGANTAR ...................................................................................... DAFTAR ISI .................................................................................................... DAFTAR TABEL ............................................................................................ DAFTAR GAMBAR .......................................................................................

  BAB I PENDAHULUAN ............................................................................... A. Latar Belakang ............................................................................... B. Rumusan Masalah .......................................................................... C. Batasan Masalah ............................................................................. D. Tujuan............................................................................................. E. Metode ............................................................................................ F. Sistematika Penulisan ..................................................................... BAB II DASAR TEORI ................................................................................... A. Arsitektur Web Client/Server......................................................... i ii iii iv v vi vii viii x xiii xiv

  1

  1

  3

  3

  4

  4

  5

  7

  7

  B. Relational Database( MySQL) .......................................................

  8 C. Web Server ( Apache) ...................................................................

  11 D. PHP ...............................................................................................

  11 E. JavaScript .....................................................................................

  13 F. Extensible Markup Language (XML) ..........................................

  15 1. Dokumen XML.......................................................................

  16 2. Document Type Definition ( DTD )........................................

  21 G. CSS................................................................................................

  23 H. Document Object Model ( DOM ).................................................

  24 I. JavaScript dan DOM......................................................................

  27 1. Node dan List node..................................................................

  28 2. Fungsi untuk Pengaksesan sebuah Node.................................

  29 J. AJAX Sebagai Kombinasi Beberapa Teknologi...........................

  30 K. XMLHttpRequest Object...............................................................

  32 BAB III PERANCANGAN SISTEM.............................................................

  38 A. Data Flow Diagram.......................................................................

  38 1. Diagram Konteks ( DFD Level 0 )...................................

  38 2. DFD Level 1 sisi Mahasiswa............................................

  39 3. DFD Level 1 sisi Kaprodi.................................................

  40 B. Use Case Diagram........................................................................

  40 1. Use Case sisi Mahasiswa..................................................

  40 2. Use case sisi Kaprodi .......................................................

  41 C. Perancangan Basis Data.................................................................

  41

  1. Diagram ER.....................................................................

  41 2. Penjabaran Tabel..............................................................

  42 3. Domain Costraint..............................................................

  43 D. Perancangan Input Output.............................................................

  45 1. Halaman Utama Mahasiswa.............................................

  45 2. Halaman Utama Kaprodi .................................................

  48 BAB IV IMPLEMENTASI , PEMBAHASAN DAN ANALISIS PROGRAM.....................................................................................

  49 A. Implementasi................................................................................

  49 B. Pembahasan Program...................................................................

  55 C. Analisis Pengiriman Data dari Server.........................................

  62 BAB V KESIMPULAN DAN SARAN ........................................................

  66 A. Kesimpulan ..................................................................................

  66 B. Saran ............................................................................................

  66 DAFTAR PUSTAKA

  

DAFTAR TABEL

Tabel 2.1 Entity References...............................................................................

Tabel 2.2 XMLHttpRequest Object Properties.................................................Tabel 2.3 XMLHttpRequest Object Method.....................................................Tabel 2.4 Status Server Properties....................................................................Tabel 3.1 Domain Constraint............................................................................

  22

  35

  36

  37

  44

  

DAFTAR GAMBAR

Gambar 2.1 Arsitektur Model Client / server ..................................................

  45

  32

  38

  39

  40

  40

  41

  42

  46

  26

  46

  47

  47

  48

  49

  50

  51

  31

  7

Gambar 2.2 Pembentukan Pohon DOM...........................................................Gambar 3.6 Diagram ER .................................................................................Gambar 2.3 Perbandingan cara kerja Web Klasik dan A jax ............................Gambar 2.4 Perbandingan Transfer Data.........................................................Gambar 3.1 Diagram Konteks.........................................................................Gambar 3.2 DFD level 1 sisi Mahasiswa.........................................................Gambar 3.3 DFD level 1 sisi Kaprodi.............................................................Gambar 3.4 Use Case sisi Mahasiswa..............................................................Gambar 3.5 Use Case sisi Kaprodi..................................................................Gambar 3.7 Halaman Utama Mahasiswa..........................................................Gambar 4.4 Layer Jadwal................................................................................Gambar 3.8 Layer Login...................................................................................Gambar 3.9 Layer Matakuliah yang ditawarkan.............................................Gambar 3.10 Layer Matakuliah yang diambil.................................................Gambar 3.11 Layer Jadwal ..............................................................................Gambar 3.12 Halaman Utama Kaprodi ............................................................Gambar 4.1 Tampilan Awal.............................................................................Gambar 4.2 Tampilan Utama Mahasiswa........................................................Gambar 4.3 Layer Matakuliah Yang Ditawarkan............................................

  51

Gambar 4.5 Layer Matakuliah Yang Diambil.................................................Gambar 4.6 Matakuliah Tabrakan…………………………………………… Gambar 4.7 Tampilan Awal Kaprodi................................................................Gambar 4.8 Layer Data matakuliah..................................................................Gambar 4.9 Proses Sistem KRS........................................................................

  52

  53

  54

  54

  65

BAB I PENDAHULUAN A. Latar Belakang Masalah Web yang sedang berkembang saat ini adalah Web 1.0, dimana

  responsifitas aplikasi berbasis web bergantung pada proses loading dan

  reloading halaman. Misalnya ketika mengakses berita di sebuah situs, pengguna harus melakukan reload seluruh content dari halaman situs itu.

  Ini termasuk banner iklan-iklan yang cukup memberatkan. Hal yang sama juga terjadi saat user ingin melakukan login, jika terjadi kesalahan user

  nam e atau passwordnya, maka server harus mengirimkan satu halaman

  penuh untuk menampilkan pesan kesalahan tersebut, dan user harus menunggu cukup lama untuk meload satu halaman yang berisi pesan kesalahan mengenai user name atau password yang telah diinputkannya. Pada aplikasi dekstop, user dapat melihat langsung hasil dari apa yang dilakukan tanpa perlu menunggu program menampilkan kembali seluruh halaman baru. Tetapi, interaksi semacam itu tidak dapat dilakukan pada aplikasi berbasis web. Pada aplikasi bebasis web, user harus menginputkan data pada form yang telah disediakan, mengklik sebuah tombol link, lalu menunggu browser meload sebuah halaman baru, dan sebagian besar isi dari halaman baru tersebut sama dengan halaman sebelumnya, seperti background , logo, banner, iklan dan yang lainnya.

  Banyak yang menyebut era berikutnya dari Internet sebagai Web 2.0 atau sering disebut web generasi kedua. Dalam era ini, aplikasi berbasis web sudah mencapai tingkat responsifitas yang lebih tinggi dari Web 1.0. Web 2.0 memiliki beberapa kelebihan dibandingkan dengan Web 1.0, contohnya untuk mengakses berita di sebuah situs, pengguna tidak perlu melakukan reload seluruh halaman. Browser hanya perlu mengambil 'informasi yang diinginkan' dan menambahkannya pada halaman yang sudah ada. Begitu juga saat user melakukan login, jika terjadi kesalahan

  

user name atau password, server dapat mengirimkan pesan kesalahan

  kepada user kedalam halaman yang sedang terbuka tanpa melakukan proses refresh / reload.

  AJAX adalah sebuah teknologi yang dapat digunakan untuk membuat aplikasi-aplikasi yang diterapkan pada Web 2.0. Ini disebabkan dengan menggunakan teknologi AJAX, browser client dapat berkomunikasi secara terus menerus untuk merequest informasi terbaru dari server dan menampilkannya di browser client tanpa melakukan proses refresh /

  

reload. Tetapi AJAX tidak merequest seluruh content dari sebuah halaman

  web, karena itu akan sangat memberatkan server bila ada banyak client yang mengakses server tersebut. Ajax hanya merequest beberapa bagian dari halaman web yang nilainya sering berubah, misalnya jumlah inbox pada email. AJAX juga dapat menampilkan pesan yang dikirimkan oleh

  

server ke halaman web yang sedang terbuka, seperti halnya menyisipkan

  sebuah layer. Maka dengan adanya teknologi AJAX, tidak akan ada lagi istilah world wide wait Pada kesempatan kali ini, penulis akan mengimplementasikan teknologi AJAX pada sistem krs online. Dimana dalam sistem krs, mahasiswa membutuhkan data yang benar dan dinamis, misalnya untuk mengetahui jumlah mahasiswa yang terdaftar di sebuah kelas.

B. Rumusan Masalah

  Apakah teknologi AJAX dapat digunakan untuk membangun suatu aplikasi yang bisa menampilkan data secara dinamis di browser client tanpa harus melakukan proses refresh/reload ? C.

   Batasan Masalah

  Penulis membatasi permasalahan yang akan dibahas dengan batasan sebagai berikut:

  1. Tidak terdapat fasilitas cekal untuk mahasiswa yang belum melakukan kewajiban yang telah ditetapkan sebagai syarat utuk melakukan krs.

  2. Sistem tidak dapat membatasi jumlah sks yang diambil oleh mahasiswa.

  3. Sistem tidak menyimpan transkrip nilai dari matakuliah yang sudah diambil oleh mahasiswa.

  D. Tujuan Penelitian

  Membuat sistem krs dengan mengimplementasikan teknologi AJAX, sehingga browser client dapat berkomunikasi secara Asynchronous dengan server dan menampilkan data secara dinamis tanpa perlu melakukan proses reload / refresh.

  E. Metode dan Teknik Penelitian

  Pembuatan skripsi ini akan menggunakan dua metode, yaitu Studi pustaka dan perancangan prototyping. Studi pustaka adalah pencarian informasi mengenai dasar ilmu yang terkait melalui buku, majalah, internet dan sumber tertulis lainnya. Dalam perancangan prototyping, langkah-langkah yang dilakukan adalah :

  1. Rekayasa Sistem Pada tahap ini yang dilalakukan adalah pengumpulan kebutuhan dari semua elemen sistem dan perencanaan sistem.

  2. Analisis Sistem Tahap mengerti dan memahami secara mendalam pada domain informasi, fungsi dan prosedur yang dibutuhkan.

  3. Perancangan Merupakan langah multiproses yang memusatkan kerja pada struktur data, arsitektur perangkat lunak dan karakteristik user interface

  4. Impelementasi Menterjemahkan hasil rancangan program dengan menggunakan bahasa perograman.

  5. Pengujian Dilakukan untuk mengetahui tercapai atau tidaknya sistem yang yang diinginkan serta untuk mengetahui kesalahan yang mungkin terjadi.

F. Sistematika Penulisan

  BAB I : PENDAHULUAN Dalam pendahuluan akan berisi latar belakang masalah, rumusan masalah, batasan masalah, metode dan teknik penelitian, tujuan penelitan dan sistematika penulisan.

  BAB II : LANDASAN TEORI Pada bab ini akan dibahas tentang berbagai landasan teori yang digunakan ataupun yang berkaitan dengan pembuatan skripsi ini. . BAB III: PERANCANGAN SISTEM Dalam rancangan sistem akan dibahas mengenai tahap-tahap perancangan sistem, alur kerja sistem, rancangan database,

  hardware dan software.

  BAB IV: IMPLEMENTASI , PEMBAHASAN DAN ANALISIS PROGRAM Pada bab ini berisi hasil – hasil penelitan baik itu berupa gambar (capture) maupun source code dari program. Disini juga akan diberikan beberapa keterangan maupun pembahasan mengenai program atau gambar.

  BAB V : KESIMPULAN DAN SARAN Dalam ini akan berisi kesimpulan dan hasil penelitian yang dilakukan serta memberikan saran untuk pengembangan lebih lanjut tentang sistem yang dibuat.

BAB II LANDASAN TEORI A. Arsitektur Web Client/Server Client/Server dapat diartikan sebagai kemampuan komputer untuk

  meminta layanan request data kepada komputer lain. Komputer yang meminta layanan disebut sebagai client, sedangkan yang menyediakan layanan disebut sebagai server. Pengertian lain, client melakukan permintaan suatu informasi atau mengirim perintah ke server. Server akan menerima permintaan dan perintah client. Kemudian server akan memproses berdasarkan permintaan tersebut, dan mengembalikan kepada

  client sebagai hasil pemrosesan yang sudah dilakukan. Model client/server

  dapat digambarkan sebagai berikut

Gambar 2.1 Arsitektur Model Client/Server Bagian Client dan Server berupa komputer yang terhubungan dalam jaringan baik lokal maupun Internet. Service Request adalah permintaan dari client baik berupa permintaan data maupun perintah ke server. Service

  Response berupa balasan dari server

  Atas permintaan dari client berupa hasil proses. Data yang diminta oleh

  client dapat diambil dari database pada sisi server yang sering disebut database server

  , seperi misalnya MySQL, PostgreSQL, Oracle, atau SQL Server [Budi Susanto, 2003].

  Beberapa keunggulan konsep client/server adalah: 1) Menyediakan layanan yang lebih baik untuk jaringan yang terdistribusi pada berbagai lokasi yang berbeda.

  2) Tidak memerlukan keseragaman sistem operasi antara komputer

  client dan server.

  3) Jumlah maksimal client yang dapat mengakses server tidak terbatas.

B. Relational Database ( MySQL )

  MySQL ( My Structured Query Language ) Atau yang sering dibaca “Mai- se-kuel” adalah Relational Database Management System (RDBMS) yang didistribusikan secara gratis di wilayah lisensi GPL (General Public

  Licence

  ). Di mana setiap orang bebas untuk menggunakan MySQL, namun tidak boleh dijadikan produk turunan yang bersifat closed source MySQL dikembangkan oleh sebuah perusahaan Swedia bernama MySQL AB, yang pada saat itu bernama TcX DataKonsult AB. Tujuannya adalah untuk mengembangkan aplikasi Web untuk client TcX yang merupakan perusahaan pengembang software dan konsultan database. MySQL sudah digunakan oleh banyak perusahaan untuk menangani transaksi bisnis atau mengelola data keuangan.

  MySQL sebenarnya produk yang berjalan pada flatform linux. Karena sifatnya yang open source, dia dapat dijalankan pada semua flatform baik windows maupun Linux. Selain itu, MySQL juga merupakan program pengakses database yang bersifat jaringan sehingga dapat digunakan untuk aplikasi Multi User ( Banyak Pengguna ). Sebagai sebuah program penghasil database, MySQL tidak dapatberjalan sendiri tanpa adanya sebuah sebuah aplikasi lain ( interface ). My SQL dapat didukung oleh hampir semua program aplikasi baik yang open

  

source seperti PHP maupun yang tidak, yang ada pada flatform Windows

seperti Visual Basic, Delphi, dan lainnya.

  MySQL merupakan turunan salah satu konsep utama dalam database sejak lama, yaitu SQL (Structured Query Language). SQL adalah sebuah konsep pengoperasian database, terutama untuk pemilihan/seleksi dan pemasukan data, yang memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis. MySQL termasuk jenis RDBMS (Relational Database Management

  System

  ). Sehingga istilah seperti tabel, baris, dan kolom tetap digunakan dalam MySQL. Pada MySQL sebuah database mengandung satu atau beberapa tabel, tabel terdiri dari sejumlah baris dan kolom. Dalam konteks bahasa SQL, pada umumnya informasi tersimpan dalam tabel-tabel yang secara logic merupakan struktur dua dimensi yang terdiri atas baris-baris data (row atau record) yang berada dalam satu atau lebih kolom (column). Baris pada tabel sering disebut instance dari data sedangkan kolom sering disebut sebagai attributes atau field [Didik Dwi Prasetyo, 2003].

  Beberapa hal yang membuat MySQL banyak digunakan antara lain:  Portablility maksudnya dapat berjalan pada berbagai sistem operasi seperti Window, Linux Mac OS X dan lainnya.

   Open source maksudnya dapat digunakan secara gratis tanpa dipungut biaya.

   Multiuser maksudnya dapat digunakan oleh beberapa user dalam waktu yang bersamaan.

   Performance tuning maksudnya cepat dalam menangani query sederhana, atau dapat memproses lebih banyak SQL per satuan waktu.

   Security maksudnya memiliki beberapa lapisan keamanan seperti ijin akses user dengan perijinan yang mendetail dan password yang

  C. Web Server ( Apache ) Web server adalah sebuah bentuk server yang khusus digunakan untuk

  menyimpan halaman website atau home page. Komputer dapat dikatakan sebagai web server jika komputer tersebut memiliki suatu program server yang disebut Personal web server (PWS). PWS ini difungsikan agar halaman web yang ada di dalam sebuah komputer server dapat dipanggil oleh komputer lain. Beberapa contoh Web Server adalah Apache, Xitami,

  IIS, dan PWS. Dalam pembuatan Tugas Akhir ini penulis akan menggunakan Web server Apache, karena Apache bersifat Open Source sehingga bebas untuk digunakan. Apache adalah sebuah web server (HTTP Server) yang berbasis pada NCSA httpd 1.3. Apache merupakan web server yang cukup populer sekarang ini karena kemampuannya yang dapat berjalan di berbagai platform serta aman. Apache mampu diintegrasikan dengan server side

  scripting language seperti PHP, JSP, dan XSP. Apache pertama kali

  diluncurkan pada bulan April 1995 dengan versi 0.6.2 nya. Kini Apache telah mencapai versi 2.0. Apache adalah web server gratis yang dapat didownload di http://httpd.apache.org . Web server ini dapat menggunakan

  third party modules sehingga semuanya dapat terintegrasi dengan baik.

  D. PHP

  PHP ( PHP :HyperText Preprocessor ), merupakan bahasa web script yang bekerja di server-side dan bersifat embedded script pada HTML. PHP diciptakan oleh Rasmus Lerdorf, seorang pemrogram C pada tahun 1995.

  Rasmus mengeluarkan Personal Home Page Tools versi 1.0 secara gratis. PHP versi 2 dikeluarkan tahun 1996 dengan diberi nama PHP/FI. PHP versi 2 ini sudah mendukung koneksi dengan database dan terintegrasi dengan HTML. Tanggal 6 Juni 1998, PHP 3.0 dikeluarkan secara resmi diikuti dengan PHP versi 4 yang diterbitkan pada tanggal 22 Mei 2000.

  PHP dapat digunakan untutk pembuatan website dinamis dan dapat mengerjakan seperti halnya yang dilakukan oleh program CGI, seperti mendapatkan data dari form, menghasilkan isi halaman web yang dinamis, dan menerima cookies. PHP mendukung fungsi built in serta library-

  library

  seperti fungsi pendukung untuk terintegrasi dengan XML (extensible Markup Language).

  Selain itu, PHP dapat digunakan secara gratis dan mendukung banyak

  

database antara lain : Adabas D, dBase, Empress, FilePro, FrontBase,

  Hyperwave, IBM DB2, Informix, Ingres, Interbase, MSQL, Direct MS SQL, MySQL, ODBC, Oracle, Ovrimos, PostgreeSQL, Solid, Sybase, Velocis, Unix DBM. PHP bersifat cross platform, artinya dapat berjalan pada sistem operasi yang berbeda seperti pada Windows 98, UNIX, dan Macintosh. PHP juga mendukung untuk berkomunikasi dengan layanan lain menggunakan protokol IMAP, SNMP, NNTP, POP3, HTTP, dan lainnya [Abdul Kadir,2003]. berinteraksi dengan program lain di server dan merespon sesuai dengan

  request

  dari client pada web browser. Ada beberapa aturan dasar dalam penulisan script PHP yaitu:  Menggunakan tag pembuka <?php dan tag penutup ?>, atau dengan tag pembuka <? dan tag penutup?>  Variabel dalam PHP bersifat case sensitive, artinya huruf besar dan kecil dibedakan.

   PHP bersifat embedded script dalam dokumen HTML atau non

  embedded script pada dokumen php terpisah.

  AppServ adalah suatu gabungan beberapa software open source yang disediakan untuk pengguna awal yang kesulitan mencari program – program pendukukng web. Di dalam program tersebut berisi satu paket program open source yang digunakan dalam pembuatan website, diantaranya Web Server Apache, PHP, Perl, dan Database Server MySQL. Didalamnya juga terdapat program aplikasi Database MySQL yang berbentuk web yang disebut phpmyadmin.

E. JavaScript

  Javascript dikembangkan oleh Netscape Communications yang bekerja sama dengan Sun Microsystem. Sebenarnya javasript dikembangkan dari bahasa livescript yang khusus dirancang untuk netscape navigator. Oleh netscape navigator, namun dalam perkembangannya Internet Explorer yang dirilis oleh Microsoft juga dapat mendukung javascript. Javascript memang tidak secanggih java ( karena hanya merupakan script ) tetapi untuk pemrogramannya tidak diperlukan pemrogram profesional.

  Javascript dijalankan di client ( client side programing ) sehingga dapat mengurangi beban kerja dari server.

  Dengan javascript dapat dibuat halaman web yang interaktif dan juga cerdas. Sebagai contoh javascript dapat digunakan untuk mengecek sah tidaknya masukan pengguna sebelum masukan dikirim ke server, javascript juga dapat melakukan operasi aritmatik ( seperti penjumlahan, pengurangan, dan perkalian ), dan bisa juga menampilkan animasi sederhana.

  Javascript bukan bahasa berorientasi object, melainkan bahasa berbasis

  

object . Bahasa berorientasi object harus mendukung tiga konsep dasar,

  yaitu pengkapsulan (encapsulation), pewarisan (inheritance), dan polimorfisme (polymorphism). Javascript hanya mendukung pengkapsulan, dan itupun tidak 100%. Program javascript dituliskan pada file HTML ( .html atau .htm )dengan menggunakan tag kontainer <SCRIPT>. Artinya javascript tidak perlu dituliskan pada file terpisah. Tag kontainer adalah tag yang diawali dengan <NAMA_TAG> dan diakhiri dengan </NAMA_TAG>. Beberapa contoh tag kontainer adalah <HTML></HTML>, <HEAD></HEAD>, mempunyai dua atribut tetapi yang harus diisi hanya satu atribut, yaitu

  Language

  yang diisi dengan “Javascript”. Hal ini memberitahu browser bahwa script yang ditulis adalah javascript [Antony Pranata, 1997].

  Contoh : <SCRIPT LANGUAGE=”Javascript”> // program javascript ditulis di bagian ini </SCRIPT> F.

   Extensible Markup Languange (XML)

  XML kependekan dari eXtensible Markup Language, yang dikembangkan mulai tahun 1996 dan mendapatkan pengakuan dari W3C pada bulan Februari 1998. Teknologi yang digunakan pada XML merupakan turunan dari SGML yang telah dikembangkan pada awal tahun 80-an dan telah banyak digunakan pada dokumentasi teknis proyek-proyek berskala besar. Ketika HTML dikembangkan pada tahun 1990, para pengembang XML mengadopsi bagian paling penting pada SGML dan dengan berpedoman pada pengembangan HTML menghasilkan markup language yang tidak kalah hebatnya dengan SGML.

  Seperti halnya HTML, XML juga menggunakan elemen yang ditandai dengan tag pembuka (diawali dengan ‘<’ dan diakhiri dengan ‘>’), tag penutup(diawali dengan ‘</ ‘diakhiri ‘>’) dan atribut elemen (parameter yang dinyatakan dalam tag pembuka misal <form name=”isidata”>).

  Perbedaannya, HTML mendefinisikan dari awal tag dan atribut yang dipakai di dalamnya, sedangkan pada XML dapat menggunakan tag dan atribut sesuai keinginan dan kebutuhan yang membuatnya. Pada XML, penyimpanan data baik dalam atribut maupun sebagai isi elemen yang diletakkan diantara tag pembuka dan tag penutup. HTML digunakan untuk menampilkan informasi dan berfokus pada bagaimana informasi ditampilkan, sedangkan XML mendeskripsikan susunan informasi dan berfokus pada informasi itu sendiri. XML terutama dibutuhkan untuk menyusun dan menyajikan informasi dengan format yang tidak mengandung format standar seperti heading, paragraph, table dan lain sebagainya. XML lebih bersifat fleksible dibandingkan dengan HTML dalam hal kemampuannya menyimpan informasi dan data. Kelebihan lain yang dimiliki XML adalah informasi dapat dipertukarkan dari satu sistem ke sistem lain yang berbeda platform. Misalnya dari Windows ke Unix, atau dari PC ke Macintosh bahkan dari internet ke handphone dengan teknologi WAP [Ady Wicaksono, 2004].

  1. Dokumen XML Pada bagian atas dokumen XML terdapat document prolog yang berfungsi untuk menginformasikan bahwa dokumen tersebut adalah dokumen XML beserta versi XML yang digunakan. Bagian

  prolog

  juga dapat mengandung informasi penting lainnya seperti: DTD (Document Type Definition), informasi enkoding dokumen yang digunakan, XML preprocessor. Sebuah dokumen XML terdiri dari bagian bagian yang disebut dengan node. Node-node itu adalah [Moh Junaedi,2003]:  Root node yaitu node yang melingkupi keseluruhan dokumen.

  Dalam satu dokumen XML hanya ada satu root node. Node- node yang lainnya berada di dalam root node.

   Element node yaitu bagian dari dokumen XML yang ditandai dengan tag pembuka dan tag penutup, atau bisa juga sebuah

  tag tunggal elemen kosong seperti <anggota nama=”budi”/> . Root node

  biasa juga disebut root elementAttribute node termasuk nama dan nilai atribut ditulis pada tag awal sebuah elemen atau pada tag tunggal  Text node, adalah text yang merupakan isi dari sebuah elemen, ditulis diantara tag pembuka dan tag penutup  Comment node adalah baris yang tidak dieksekusi oleh parserProcessing Instruction node, adalah perintah pengolahan dalam dokumen XML. Node ini ditandai awali dengan karakter <? Dan diakhiri dengan ?>. Tapi perlu diingat bahwa header standard XML <?xml version=”1.0” encoding=”iso-8859-1”?> bukanlah processing instruction node. Header standard bukanlah bagian dari hirarki pohon dokumen XML.

   NameSpace Node, node ini mewakili deklarasi namespace

  Penulisan untuk pendefinisian tipe dokumen ada dua cara yaitu

  eksternal

  dan internal. Eksternal artinya pendefinisian tipe dokumen berada di luar dokumen XML, sedangkan internal berada di dalam dokumen XML itu sendiri. Berikut contoh penulisan dokumen prolog dengan pendefinisian

  eksternal <?xml version="1.0" encoding="us-ascii"?> <!-- komentar dan informasi lain --> <!DOCTYPE berita SYSTEM “ http://www.contoh.com/berita.dtd ” > <!-- komentar dan informasi lain -->

  Untuk penulisan pendefinisian tipe dokumen seperti contoh pada baris 3 diawali dengan <!DOCTYPE kemudian diikuti dengan nama elemen root dalam dokumen XML yang dalam hal ini adalah elemen “berita”. Atribut system diikuti dengan alamat URL dari DTD atau tempat aturan-aturan yang digunakan untuk memvalidasi dokumen XML.

  Berikut contoh penulisan dokumen prolog dengan pendefinisian

  internal : <?xml version="1.0" encoding="us-ascii"?> <!-- komentar dan informasi lain --> <!DOCTYPE berita [ <!ELEMENT berita (judul, deskripsi, pengirim)> <!ATTLIST berita > . . <!ELEMENT judul (#PCDATA)> . . ]> Untuk setiap dokumen XML harus memiliki satu elemen root.

  Sebuah tag XML dapat berisi atribut 1 atau lebih yang dalam penulisannya dipisahkan dengan spasi. Dalam satu tag tidak boleh ada 2 atau lebih nama atribut yang sama. Setiap tag pembuka akan diakhiri dengan tag penutup. Data ditulis di antara tag pembuka dan tag penutup. Berikut contoh penulisan dokumen body:

  <berita> <judul id=”1”>Persipura Juara Liga Indonesia 2005 </judul> <deskripsi>Persipura Juara LDI 2005 setelah mengalahkan Persija Jakarta</deskripsi> <pengirim>GusSWib</pengirim> </berita>

  </berita>

  Tidak setiap tag harus memiliki data untuk dideskripsikan, ada tag yang tidak memiliki data yang disebut empty element. Dapat dilihat seperti contoh : <elemenku />. Penentuan nama tag dalam dokumen XML memiliki aturan-aturan antara lain :

   Nama tag adalah case- sensitive, artinya huruf besar dan kecil dibedakan. Seperti contoh elemen <berita>, <Berita>, <BeRiTa> adalah tiga elemen yang berbeda.

   Nama tag diawali dengan karakter huruf atau garis bawah, tidak diawali dengan kata xml atau XML. Karakter whitespace (spasi, tabulasi dan enter) merupakan karakter pemisah, sehingga tidak dapat digunakan sebagai nama tag. Karakter = merupakan karakter khusus untuk pasangan atribut elemen dan nilainya sehingga tidak bisa digunakan sebagai nama tag. Contoh tag yang valid adalah <berita>, <_berita>, <A200>. Sedangkan contoh tag yang tidak valid adalah: <1A>, <$elemen>.

   Urutan tag-tag harus membentuk susunan pohon yang valid, artinya jika tag pembuka <berita> maka tag penutupnya <berita>. Berikut contoh penulisan yang tidak valid :

  

<judul>JudulBerita<deskripsi>Deskripsiberita</judul></deskripsi>

  Letak kesalahannya yaitu pada posisi dari tag penutup </judul> yang seharusnya berada di depan tag pembuka <deskripsi> atau di belakang tag penutup </deskripsi>. Penulisan yang valid sesuai dengan contoh tersebut dapat ditulis seperti berikut:

  <judul>JudulBerita</judul><deskripsi>Deskripsi berita</deskripsi>

   Penggunaan karakter seperti karakter < atau > merupakan hal yang tidak valid atau ilegal pada XML. Contoh:

  <judul>Judul < Berita</judul>

  Penulisan tersebut dibaca tidak valid ketika di eksekusi pada

  browser. Untuk dapat menggunakan karakter < digunakan entity reference yaitu dengan menggantikan < dengan <.

  Contoh:

  <judul>Judul < Berita</judul>

  Berikut contoh entity references yang dapat digunakan untuk menggantikan karakter ilegal pada XML.

Table 2.1 Entitiy References

  Entity references Karakter

  < < > > & & ' ‘ " “

  2. Document Type Definition (DTD) Sesuai namanya DTD berfungsi untuk mendefinisikan tipe dokumen XML. Pada saat mempelajari salah satu bahasa pemrograman atau scripting, akan diperkenalkan dengan deklarasi

  variable , deklarasi fungsi dan deklarasi tipe data. Serupa dengan

  itu, DTD mendefinisikan struktur dokumen XML dengan daftar element yang digunakan.

  DTD memungkinkan format yang unik untuk setiap file xml. DTD akan sangat berguna bila kita membuat aplikasi dalam Visual Basic, ASP atau bahasa pemrograman lain yang mendukung XML, yaitu untuk memastikan bahwa data yang diterima aplikasi itu adalah data yang valid. Atau bermanfaat juga digunakan bila satu organisasi menyepakati penggunaan satu DTD untuk tukar menukar data dan informasi.

  Unsur-unsur yang dideklarasikan dalam DTD adalah semua unsur yang membentuk suatu dokumen XML yaitu:  Element , satu blok data yang diawali tag pembuka dan tag penutup.

   Attribute

  , informasi pendukung element yang disertakan pada tag pembuka  Entity , karakter pengganti untuk sekumpulan informasi yang didefinisikan G.

   CSS

Dokumen yang terkait

IMPLEMENTASI ALGORITMA LUHN UNTUK OTENTIKASI NOMOR KARTU KREDIT PADA SISTEM TRANSAKSI ONLINE SKRIPSI

1 2 14

IMPLEMENTASI SISTEM INFORMASI JURNAL ILMIAH BERBASIS ONLINE PADA STMIK U’BUDIYAH INDONESIA

0 0 78

ANALISIS FAKTOR ATAS KEPUASAN MAHASISWA S1 AKUNTANSI DALAM MENGAKSES SISTEM INFORMASI KRS ONLINE DI STIE PERBANAS SURABAYA - Perbanas Institutional Repository

0 0 18

ANALISIS FAKTOR ATAS KEPUASAN MAHASISWA S1 AKUNTANSI DALAM MENGAKSES SISTEM INFORMASI KRS ONLINE DI STIE PERBANAS SURABAYA - Perbanas Institutional Repository

0 0 17

BAB I PENDAHULUAN 1.1 - ANALISIS FAKTOR ATAS KEPUASAN MAHASISWA S1 AKUNTANSI DALAM MENGAKSES SISTEM INFORMASI KRS ONLINE DI STIE PERBANAS SURABAYA - Perbanas Institutional Repository

0 0 8

BAB II TINJAUAN PUSTAKA 2.1 - ANALISIS FAKTOR ATAS KEPUASAN MAHASISWA S1 AKUNTANSI DALAM MENGAKSES SISTEM INFORMASI KRS ONLINE DI STIE PERBANAS SURABAYA - Perbanas Institutional Repository

0 2 26

IMPLEMENTASI AJAX PADA APLIKASI E-LEARNING BERBASIS WEB (STUDY KASUS DI SEKOLAH TINGGI TEKNIK YPM SIDOARJO)

0 0 19

SISTEM PAKAR UNTUK IDENTIFIKASI HAMA PADA PERTUMBUHAN TANAMAN KEDELAI BERBASIS AJAX DAN PHP TUGAS AKHIR - SISTEM PAKAR UNTUK IDENTIFIKASI HAMA PADA PERTUMBUHAN TANAMAN KEDELAI BERBASIS AJAX DAN PHP

0 0 16

ANALISIS DAN PERANCANGAN APLIKASI KRS ONLINE BERBASISKAN WEB DAN WAP MELALUI WEB SERVICE PADA UNIVERSITAS MERCU BUANA - Binus e-Thesis

0 0 20

KORELASI ANTARA EFEKTIFITAS SISTEM INFORMASI KRS ONLINE DENGAN KEPUASAN MAHASISWA UNIVERSITAS BINA NUSANTARA - Binus e-Thesis

0 0 13