1 PEMBUATAN LECTURE HALL PROGRAM STUDI ILMU KOMPUTER UNIVERSITAS SANATA DHARMA BERBASIS WEB MENGGUNAKAN PHP DAN MYSQL Skripsi Diajukan untuk Memenuhi ...
PEMBUATAN LECTURE HALL PROGRAM STUDI ILMU KOMPUTER UNIVERSITAS SANATA DHARMA BERBASIS WEB MENGGUNAKAN PHP DAN MYSQL Skripsi
Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Sains Program Studi Ilmu Komputer
Oleh : Ruly Nur Hayati
NIM : 013124068
PROGRAM STUDI ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SANATA DHARMA YOGYAKARTA 2007
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DEVELOPMENT OF WEB BASED LECTURE HALL OF COMPUTER SCIENCE STUDY PROGRAM OF SANATA DHARMA UNIVERSITY USING PHP AND MYSQL PROGRAMMING A Thesis
Presented as Partial of the Requirements to Obtain the Sarjana Sains Degree in Computer Science
By : Ruly Nur Hayati
Student Number
: 013124068
COMPUTER SCIENCE STUDY PROGRAM MATHEMATIC AND SCIENCE FACULTY SANATA DHARMA UNIVERSITY YOGYAKARTA 2007
ii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
HALAMAN
PERSEMBAHAN
Skripsi ini ku persembahkan kepada orang-orang terkasihku.... ===================
Allah SWT yang telah memberikan kehidupan dan mengajarkan bahwa Dia sungguh-sungguh ber-Kuasa atas diriku Ibuku Tercinta, Umi Ngatini Kakakku tersayang, Mas Eko, Mas Agus dan Mbak Yuni
For my inspiration ‘kecil ‘ Danang Terima kasih atas semua yang kau lakukan Tapi terima kasih.... Terutama karena membuat mimpi menjadi keyataan Kalianlah yang telah memberiku dukungan & semangat terbesar…
v
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
HALAMAN MOTTO
Alangkah indah dan bahagia hidup ini jika kita menjadi hamba yang bersyukur ketika mendapatkan Anugerah dan saat mendapatkan musibah kita harus selalu ber prasangkan baik kepada-Nya karena Allah selalu memberikan yang terbaik untuk kita.
Kebahagian itu bisa dibeli, bukan dengan uang, melainkan dengan sikap rendah hati (Gede Prama)
Tidak ada kupu-kupu yang bisa terbang hanya bermodalkan sayap semata. Ia membutuhkan persahabatan dengan alam dan kehidupan. (Gede Prama)
Air mata adalah cara hati untuk memberi pelipur lara Belajarlah dari penderitaanmu untuk membantumu bijaksana Yang terutama ingatlah cinta tak pernah sirna Lalu ketika menyusuri perjalanan terakhirmu yang bisa kau tempuh Lihatlah ke belakang dengan senyum penuh syukur Ingat semua wajah yang membantumu menerangi perjalananmu Ucapkan terima kasih atas cinta mereka dan ingatlah hari ini selalu
vi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PEMBUATAN LECTURE HALL PROGRAM STUDI ILMU KOMPUTER UNIVERSITAS SANATA DHARMA BERBASIS WEB MENGGUNAKAN PHP DAN MySQL ABSTRAK
Aplikasi berbasis web yang bermanfaat di bidang pendidikan sangatlah banyak, salah satunya adalah aplikasi yang berbentuk “Lecture Hall” atau media untuk menempatkan modul materi. Lecture Hall ini dibuat untuk membantu mengatasi masalah yang sering timbul yaitu keinginan mahasiswa untuk mempunyai materi dalam bentuk file materi sehingga dokumen materi yang telah ada tidak akan berceceran kemana-mana. Serta kebutuhan dosen yang selalu ingin menyajikan materi secara tepat waktu. Pertama kali Lecture Hall ini dibuat, melibatkan beberapa database yaitu database personalia, database mahasiswa dan database program studi. Hanya saja implementasi Lecture Hall ini khusus untuk satu program studi yaitu Ilmu Komputer. Pengguna Lecture Hall ini meliputi mahasiswa dan dosen. Dari sisi dosen yang dilakukan adalah mengupload materi matakuliah yang digunakan dalam proses belajar mengajar, selain itu juga melakukan update dan hapus materi. Sedangkan dari sisi mahasiswa yang dilakukan adalah memilih materi yang dibutuhkan dan download file materi. Proses pencarian materi juga bisa dilakukan mahasiswa dengan menginputkan salah satu dari 2 kategori yaitu nama matakuliah dan nama dosen. Lecture Hall ini dibuat sederhana dengan tujuan dapat memberikan kemudahan bagi dosen dan mahasiswa untuk saling memenuhi kebutuhan akan materi matakuliah. Lecture Hall ini diimplementasikan pada program studi Ilmu Komputer Universitas Sanata Dharma menggunakan bahasa pemrograman PHP 5 dengan database MySQL serta server Apache.
viii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DEVELOPMENT OF WEB BASED LECTURE HALL OF COMPUTER SCIENCE STUDY PROGRAME OF SANATA DHARMA UNIVERSITY USING PHP AND MYSQL PROGRAMMING
ABSTRACT
There are a lot of useful web base application in education, one of them is ‘Lecture Hall” or a media to store material moduls. The Lecture Hall is made to overcome some troubles ariese e.g.i.e students willing to have a material in the shape of material file, so that the existing material documents stay together. It is also useful for lecturers who want to present the material punctually. Since the first time, this Lecture Hall has made it was included some databases. Some of them are personal database, student database and study programme database. But in this case, The Lecture Hall is implemented specifically only for one study programme .i.e computer science. The users of this Lecture Hall are students and lectures. Some lecturers use this application to upload the materials which are used in learning teaching processes. Behind that, this application is used to update and delete the materials. Students can use this application to choose and download the material needed. The searching can be clone by putting keyword .i.e subject’s name and lecturer’s name. This Lecture Hall is made simplically in order to give easy service for lecturer and student to fulfill their need of the subject material each other. This lecture Hall is implemented on computer science study programme of Sanata Dharma University using PHP 5 language programme with MySQL database ans Apache server.
ix
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
KATA PENGANTAR
Puji dan syukur penulis panjatkan kepada Allah SWT atas berkat dan rahmat-Nya yang telah diberikan sehingga penulis dapat menyelesaikan Skripsi dengan judul ‘Pembuatan Lecture Hall Program Studi Ilmu Komputer Universitas Sanata Dharma berbasis web’. Semoga apa yang telah penulis sampaikan lewat skripsi ini dapat memberikan sumbangan pemikiran untuk pengembangan ilmu pengetahuan pada umumnya dan ilmu komputer pada khususnya. Skripsi ini merupakan buah dari kerja keras, pemikiran, dan pengorbanan yang penulis peroleh sebelumnya di perkuliahan. Namun, penulis menyadari bahwa skripsi ini tidak akan selesai jika tidak mendapat bantuan dari banyak pihak yang telah berkenan membantu secara langsung maupun tidak langsung. Penulis juga mengharapkan adanya masukan serta kritik yang membangun dari apa yang telah disampaikan dalam penulisan ini. Pada kesempatan yang baik ini, dengan segala kerendahan hati penulis mengucapkan terima kasih kepada : 1. Bapak Drs.Haris Sriwindono,M.Kom selaku dosen pembimbing skripsi, yang telah memberikan bantuan ide, saran, masukan, kritik, serta bimbingannya yang sangat berguna selama penulisan skripsi ini. 2. Bapak Ir.Ign, Aris Dwiatmoko,M.Sc selaku Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam. 3. Ibu P.H.Prima Rosa,S.Si.,M.Kom. selaku Kepala Program Studi Ilmu Komputer Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas
x
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Sanata
Dharma
Yogyakarta
yang
telah
memberikan
ide
untuk
penyempitan masalah dalam skripsi ini. 4. Bapak St.Eko Hari Parmadi,S.Si.,M.Kom. selaku dosen pembimbing akademik dan sekaligus dosen penguji yang selama penulis menempuh studi telah memberikan bimbingan dan saran kepada penulis. 5. Bapak Y. Joko Nugroho, S.Si selaku dosen penguji yang telah memberikan saran dan kritik demi kesempurnaan skripsi ini. 6. Seluruh staff pengajar Fakultas MIPA, yang telah memberikan pengajaran serta pemikiran yang telah diberikan selama penulis berada dalam masa perkuliahan. 7. Mas Tukijo dan semua staff sekretariat atas bantuan dan segala bentuk pelayanan yang telah diberikan selama ini kepada penulis. 8. Mas-mas dan mbak-mbak di BAPSI, makasih banget, khususnya mas Diar, makasih mas telah nyempatin waktu untuk aku. Maaf ya sering ngerepotin untuk ambil data..... 9. Para karyawan laboratorium Komputer, Kangmas Widodo, Kangmas Susilo, matur nuwun bantuane yo mas....... 10. Ibunda Ny. Ngatini tercinta, yang telah berusaha memberikan segalanya yang penulis butuhkan secara material dan spiritual, Thanks ‘Umi’ Luv U So much forever...... 11. Mas Eko, Mas Agus Mbak Yuni Mbak Lia, Mas Imam, kakak-kakakku yang telah banyak membantu segala buat aku. ‘Doain aku supaya cepat dapat kerja ya, biar ga minta doit teyus.......:-)
xi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
12. Keponakan-keponakan kecilku Tata, Dadek, Dio, Ilham, Fajar, Puput, Meta, Ridho, Wisnu dan Annisa. Tetap semangat sekolah ya, biar bisa jadi sarjana dan jangan nakal pastinya.........!!!! 13. H. Danang Pamungkas “si kecilku yang hebat”, yang telah banyak mengerti dan sabar, ,banyak berkorban, dan setia menyayangiku. “Kecil”, ulil dah penuhin janji ulil......Sekarang giliran “Kecil” ya... tetap semangat kerjakan skripsinya.....Jangan lupa berdoa ya, dan janji buat ulil bangga sama “Kecil”......:-) 14. Bp.Thomas Susanto, Ibu Katarina, MasG, makasih banget atas semua yang telah ulil terima selama ini, perhatian, kasih sayang, Ulil jadi punya keluarga “Kecil” dijogja. 15. Neri, thanks ya....dah nyempetin waktu untuk ajari aku PHP, Fajar ‘Boncel’ nuwun sanget, bantuan PHP nya Koh Ferdi, makasih aku dah diajarin Photoshop Bang Waldi, terima kasih atas les PHP dan MySQLnya Mas Enang, nuwun atu programku dah ga error lagi Semoga Tuhan Memberkati kalian semua............. 16. Mas Wahyu, Mas Djiwo, Mas Boss, Mas Boim, Mas Adri, Mas Bagus, Mas Abe, Christy makasih banget ya........, banyak keceriaan, kebahagian setiap bersama-sama kalian, semoga persaudaraan ini akan terjalin terus, Siiippp.....!!! Nia ‘Saphi’, Mira ‘Mirdut’, Rini ‘Cimut’, Asti ‘Pudel’ Endah, Dessy, Ardi ‘n’ Ayuk dan sahabat-sahabat ku yang laen, Thanks atas semangat dan
xii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
motivasinya. Kalian semua adalah Teman yang merupakan hadiah dari yang di Atas buat aku.........:-) 17. Semua teman-teman program studi Ilmu komputer, khususnya angkatan 2001, yang sudah lulus duluan Thanks untuk kebersamaan kita selama ini. Sesama lulusan sekarang Sam, Tomy, Rolens, Tyo, Fefe, Agnes, Ari KB, Roy berjuang teyus ya.........!!!! 18. Semua rekan-rekan kerja di Rental “StarOtopia” Ari, Ronald, Opie, Oki, Devy, Marhea, dan mantan crew Vincent, Novi, Gibon, Astrid, Cyrill, Adit, Erick thanks ya atas semuanya.....omelan, celaan, pujian, kritikan semuanya akan jadi masukan buat aku. 19. Semua temen-temen kos “No Name”, Lisna, Rus, Gita, Eno, Anis, Heny, Devy, Lia, Elis, Deta, Nuning, Pungky, Agnes, Dewi, Ma’e.....maaf ya kalo aku pernah ngrepotin kalian.......Tetap semangat dan kompak ya.... Penulis juga ingin menyampaikan terima kasih kepada pihak-pihak yang tidak dapat penulis sebutkan satu per satu. Karena tanpa bantuan mereka, penulis menyadari tidak akan mampu menyelesaikan Skripsi ini dengan baik.
Penulis
xiii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR ISI Halaman HALAMAN JUDUL........................................................................................
Perancangan tampilan pesan data berhasil diinputkan
72
Gambar 4.23
Perancangan tampilan warning nama file / nama materi belum diinputkan
72
Gambar 4.24
Perancangan tampilan warning nama file input sama
73
Gambar 4.25
Perancangan tampilan pesan proses update berhasil
73
Gambar 4.26
Perancangan tampilan warning hapus data
74
Gambar 5.1
Tampilan antarmuka form login utama user
85
Gambar 5.2
Tampilan antarmuka validasi mahasiswa
86
Gambar 5.3
Tampilan antarmuka default form daftar matakuliah
86
Gambar 5.4
Tampilan antarmuka jadwal matakuliah
87
Gambar 5.5
Tampilan antarmuka form tampil daftar matakuliah dan hasil searching
Gambar 5.6
88
Tampilan antarmuka form tampil hasil searching berdasar nama matakuliah
88
Gambar 5.7
Tampilan antarmuka form daftar materi download
89
Gambar 5.8
Tampilan antarmuka file download
89
Gambar 5.9
Tampilan antarmuka form validasi dosen
90
xix
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 5.10
Tampilan antarmuka form jadwal mengajar dosen
90
Gambar 5.11
Tampilan antarmuka form file materi upload
91
Gambar 5.12
Tampilan antarmuka form tambah materi
91
Gambar 5.13
Tampilan antarmuka form edit materi
92
Gambar 5.14
Tampilan warning input NIM / NPP salah
92
Gambar 5.15
Tampilan warning NIM belum diinputkan
93
Gambar 5.16
Tampilan warning password belum diinputkan
93
Gambar 5.17
Tampilan warning belum ada materi
93
Gambar 5.18
Tampilan penginputan data berhasil
94
Gambar 5.19
Tampilan warning nama file belum diinputkan
94
Gambar 5.20
Tampilan warning nama materi belum diinputkan
94
Gambar 5.21
Tampilan warning data yang diinputkan sama
95
Gambar 5.22
Tampilan proses update berhasil
95
Gambar 5.23
Tampilan data akan dihapus
96
Gambar 5.24
Tampilan data penulis
96
xx
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR TABEL Halaman Tabel 2.1.
Operator Aritmatika
22
Tabel 2.2.
Operator Bitwise
23
Tabel 2.3.
Operator Perbandingan
24
Tabel 2.4.
Operator Logika
25
Tabel 2.5.
Operator Decrement dan Increment
26
Tabel 2.6.
Daftar fungsi PHP untuk MySQL
28
Tabel 4.1.
Struktur Tabel mhs3124
53
Tabel 4.2.
Struktur Tabel snd3124
54
Tabel 4.3.
Struktur Tabel mtk3124
54
Tabel 4.4.
Struktur Tabel jadwal
55
Tabel 4.5.
Struktur Tabel pegawai
56
Tabel 4.6.
Struktur Tabel idpegawai
57
Tabel 4.7.
Struktur Tabel materi
57
Tabel 4.8
Struktur Tabel prg_std
58
xxi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB I PENDAHULUAN
A. Latar Belakang Masalah Dalam perkuliahan, hubungan antara seorang dosen dengan mahasiswanya begitu dekat. Mereka berdua sama-sama membutuhkan informasi. Hanya saja informasi yang mereka butuhkan kadang berbeda. Dari sisi seorang dosen, informasi yang dibutuhkan salah satunya adalah pengadaan modul pembelajaran yang selalu terupdate untuk proses belajar mengajar. Sedangkan dari sisi seorang mahasiswa, informasi yang dibutuhkan salah satunya adalah tentang matakuliah dan materi yang dibutuhkan. Matakuliah yang ditawarkan wajib diambil oleh mahasiswa untuk tiap semester. Masing-masing matakuliah akan memuat informasi yang berisi antara lain tentang jumlah sks, silabus, dosen yang mengajar matakuliah serta kelas matakuliah. Dan yang paling penting setiap matakuliah mempunyai banyak materi matakuliah. Materi matakuliah yang akan disampaikan kepada mahasiswa tentunya akan berbeda untuk masing-masing kelas matakuliah. Hal ini terkait oleh jadwal kelas matakuliah yang diampu oleh dosen yang berbeda. Masalah yang timbul selama ini adalah untuk mendapatkan informasi mengenai modul materi perkuliahan tersebut mahasiswa harus menunggu dosen yang bersangkutan memberikan informasi. Disamping itu materi yang akan disampaikan dalam proses perkuliahan
1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 2
biasanya dalam bentuk kertas atau dokumen yang bisa jadi setelah perkuliahan selesai, dokumen tersebut bisa tersebar kemana-mana. Alternatif penyelesaian masalah tersebut dapat dilakukan dengan membuat media untuk menempatkan bahan perkuliahan seperti materi dalam bentuk file materi matakuliah yang berbasis web, media yang dimaksud adalah Lecture Hall sehingga mahasiswa dan dosen bisa saling mengakses materi perkuliahan secara langsung setiap saat.
B.
Rumusan Masalah Bagaimana membuat Lecture Hall Program Studi Ilmu Komputer
Universitas Sanata Dharma berbasis web yang dapat memberikan kemudahan bagi mahasiswa dan dosen untuk mengakses materi matakuliah yang dibutuhkan dalam perkuliahan menggunakan PHP dan database server MySQL ?.
C. Batasan Masalah Dalam pembuatan program ini akan dibuat batasan masalah sebagai berikut : •
Program tidak menyediakan fasilitas Print out.
•
Sistem hanya diimplementasikan dalam ruang lingkup program studi Ilmu Komputer, sehingga daftar matakuliah yang ditampilkan defaultnya untuk program studi Ilmu Komputer.
•
Jadwal matakuliah yang ditampilkan adalah tahun akademik 2005/2006 yang terbagi dalam 3 semester yaitu ganjil, genap, sisip. Datanya sudah tersimpan dalam database akademik.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 3
•
Proses download dan upload yang dilakukan mahasiswa ataupun dosen, dilakukan satu persatu, tidak bisa secara multi atau banyak file untuk diupload ataupun didownload. Dari sisi mahasiswa : ● Aplikasi ini hanya dibuat untuk kalangan mahasiswa USD, yang mempunyai NIM dan password yang datanya sudah tersimpan dalam database. ● Program tidak menyediakan fasilitas update, hapus materi matakuliah. ● Program menyediakan fasilitas untuk download file materi matakuliah. ● Mahasiswa hanya bisa mendownload materi matakuliah sesuai dengan program studinya. misal : input NIM 01 3124 068 = materi program studi ikom.
•
Materi yang bisa di download oleh mahasiswa adalah materi yang sudah di upload oleh dosen
•
Program menyediakan proses pencarian dengan batasan menginputkan dua kategori berdasarkan nama matakuliah dan nama dosen
•
Mahasiswa bisa mendownload materi apa saja tanpa harus dibatasi.
Dari sisi Dosen •
Aplikasi ini hanya dibuat untuk kalangan dosen USD, yang mempunyai NPP dan password. Data dosen ini sudah tersimpan dalam database personalia, jadi tidak perlu melakukan pendaftaran.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 4
•
Program menyediakan fasilitas hapus, update dan tambah materi matakuliah serta upload file materi matakuliah.
•
Dalam perkuliahan satu kelas matakuliah hanya diampu oleh satu dosen.
•
Dosen hanya mengupload materi yang dibimbingnya sesuai dengan semester yang berlangsung.
•
Materi matakuliah yang ditampilkan berdasarkan NPP seorang dosen, sehingga satu dosen bisa mempunyai banyak materi dari beberapa matakuliah.
D. Tujuan Adapun tujuan dari penulisan skripsi ini adalah : •
Memberikan media untuk mengatur materi perkuliahan dalam bentuk file materi matakuliah yang disebut Lecture Hall berbasis web.
•
Menyediakan informasi mengenai materi matakuliah yang dibutuhkan oleh mahasiswa.
•
Membantu dosen untuk mengelola materi perkuliahan yang akan disampaikan dalam proses belajar mengajar.
E.
Manfaat
Adapun manfaat dari penulisan skripsi ini adalah : Dari sisi mahasiswa : •
Agar mahasiswa bisa mengatur bahan materi perkuliahan secara rapi dalam bentuk file.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 5
•
Agar mahasiswa dapat dengan mudah mendownload materi yang dibutuhkan.
•
Agar mahasiswa mudah dalam mencari materi yang dibutuhkan tanpa ada batasan ruang dan waktu karena berbasis web.
Dari sisi dosen : •
Agar dosen dapat dengan mudah meletakkan modul materi matakuliah yang dibutuhkan dalam proses perkuliahan, dengan cara mengupload materi perkuliahan.
•
Dosen bisa setiap saat (kapan saja dan dimana saja) mengupload materi perkuliahan.
•
Dosen dapat senantiasa mengupdate dan menghapus materi perkuliahan
F.
Metodologi Dalam pembuatan Lecture Hall Universitas Sanata Dharma berbasis web ini
dipakai Paradigma Prototype yang meliputi tahap-tahap antara lain (Thomas Sugiarto, Reader RPL, Agustus 2003) : •
Pengumpulan Kebutuhan Dalam tahap ini kami selaku penulis, memulai dengan melakukan pengumpulan data dan informasi yang berkaitan dengan sistem, penyusunan kerangka sistem, analisa kebutuhan sementara dan studi pustaka mengenai bagaimana membangun suatu sistem informasi berbasis web.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 6
•
Desain Cepat : Penulis merancang desain yang memfokuskan pada representasi visual format input dan output.
•
Pembangunan Prototype : Dalam tahap ini kami selaku
penulis, membuat sebuah prototype
berdasarkan desain cepat yang telah dibuat. Adapun prototype yang akan dibuat berkaitan dengan tampilan serta fungsi – fungsi atau fasilitas – fasilitas yang disediakan oleh sistem. •
Pengujian : Prototype yang telah dibuat, diujikan pada pemakai untuk dievaluasi apakah sudah sesuai dengan permintaan . Pemakai dalam hal ini diwakili oleh dosen pembimbing tugas akhir. Kemudian penulis dan pemakai mendiskusikan perubahan yang diinginkan.
•
Perbaikan : Dari hasil pengujian, penulis melakukan perubahan atau perbaikan yang dirasa perlu untuk memperbaiki kinerja dari sistem yang sudah dibuat sebelumnya.
•
Implementasi Produk: Berupa perangkat lunak hasil dari perbaikan dan pengkajian yang semakin mendekati kebutuhan pemakai.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 7
G. Sistematika Penulisan BAB I PENDAHULUAN Bab ini membahas latar belakang masalah, rumusan masalah, batasan masalah,
tujuan, manfaat, metodologi penyelesaian masalah, dan
sistematika penulisan. BAB II LANDASAN TEORI Bab ini membahas landasan teori, pengertian CAI (Computer Asissted Instruction), WWW (World Wide Web), Lecture Hall, Web Browser, PHP, MySQL dan Apache Web Server. BAB III ANALISA SISTEM Bab ini membahas tentang analisa sistem yang sudah ada, analisa sistem yang akan dikembangkan, analisa kelayakan dan analisa kebutuhan. BAB IV PERANCANGAN SISTEM Bab ini membahas tentang perancangan proses, Diagram Alir Data (DAD), ER, struktur menu dan perancangan antarmuka (interface) BAB V
IMPLEMENTASI
Bab ini menganalisa implementasi sistem. BAB VI PENUTUP Bab ini berisi kesimpulan dan saran penulis . Selain itu juga disertakan lampiran yang berupa listing program.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 8
BAB II LANDASAN TEORI
H. Computer Based Instruction / Education (CBI/E) Pemanfaatan komputer secara umum dalam dunia pendidikan sering disebut Computer Based Instuction/ Education (CBI/E). Semua aplikasi komputer dalam pendidikan dapat dikategorikan dalam CBI/E. CBI/E dibagi menjadi dua : 1. Aplikasi Pengajaran
a. Computer Assisted Learning (CAL) Pembelajaran berbasis komputer adalah sistem yang bersifat dialogis yang membantu mahasiswa dalam mempelajari materi matakuliah tetentu. Tokoh CAL yang terkemuka Seymour Papert, profesor matematika dari Massachusetts Institute of Technology bekerjasama dengan Jean Piaget, seorang psikolog terkenal, telah menyumbangkan banyak karya yang penting dalam mengembangkan CAL. Dari hasil kerjanya muncul gagasan penting tentang bagaimana sebaiknya anakanak dan remaja belajar menggunakan komputer. Mereka berusaha sedemikian rupa mengarahkan anak-anak sehingga mereka dapat memanfaatkan komputer semaksimal mungkin (Budiharjo,1998)
b. Computer Assisted Instruction (CAI) CAI atau Pengajaran Berbasis Komputer adalah media pengajaran menggunakan sistem komputer yang mana dalam presentasi tertentu
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 9
menggantikan peran seorang guru/dosen dalam penyampaian materi pembelajaran.
Ada
beberapa
media
pengajaran
yang
dapat
diimplementasikan untuk menyampaikan materi pengajaran bagi para siswa (Budiharjo, 1998). Media pengajaran ini diantaranya (termasuk diantaranya adalah (CAI) : 1).
media cetak, termasuk diantaranya : textbook dan modul
2).
media audio visual, termasuk diantaranya : sound slides, video, dan televisi
3).
komputer, yaitu CAI
4).
media audio, termasuk diantaranya : radio dan program audio cassette
2. Aplikasi Non Pengajaran
a. Education Data Processing (EDP) Proses data pengajaran dimana komputer digunakan sebagai media penunjang pendidikan seperti menyimpan arsip data pribadi dan mengolah data.
b. Computer Assisted Testing (CAT) Komputer digunakan sebagai media untuk ujian. Bentuknya ada yang sederhana sebagai pengganti kertas ujian sampai kepada bentuk yang paling maju dengan cara tanya jawab secara aktif untuk menggali kemampuan siswa/mahasiswa.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 10
c. Computer Assisted Guidance (CAG) Komputer sebagai pembimbing yang digunakan sebagai sarana untuk mencari informasi yang diperlukan. Informasi yang diperoleh dapat membantu pemakai dalam pengambilan keputusan tertentu.
d. Computer Managed Instruction (CMI) Pengajaran dikelola komputer. Komputer dimanfaatkan untuk merencanakan kuliah. Komputer secara langsung akan memantau prestasi siswa/mahasiswa serta membuat laporan. Penjelasan tentang CBI/E di atas struktur organisasinya digambarkan sebagai berikut : Computer Based Instruction / Education (CBI/E)
Aplikasi Pengajaran
Aplikasi non Pengajaran
CAI
EDP
CAL
CAT
CAG CMI
Gambar 2.1 Struktur Organisasi CBI/E
I.
World Wide Web (WWW) Untuk memanfatkan internet sebagai bagian dari kegiatan pembelajaran di
sekolah ataupun universitas tidaklah sesederhana dan semudah yang dibayangkan, karena banyak hal yang harus dipelajari, diperhatikan dan dilakukan dengan sungguh-sungguh sebelum menerapkannya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 11
Internet (interconnection networking) merupakan jaringan global yang menghubungkan beribu bahkan berjuta jaringan komputer (local/wide area network) dan komputer pribadi (stand alone), yang memungkinkan setiap komputer yang terhubung kepadanya bisa melakukan komunikasi satu sama lain (Brace,1997). Brace juga menyebutkan Internet sebagai suatu "kesepakatan", karena untuk bisa saling berhubungan dan berkomunikasi setiap komputer harus menggunakan protokol standar yaitu TCP/IP (Transmission Control Protocol/Internet Protocol) yang disepakati bersama. Dengan kata lain meskipun suatu komputer terhubung ke dalam jaringan Internet, tetapi kalau ia tidak menggunakan standar komunikasi pengiriman dan penerimaan yang telah disepakati tersebut, tetap saja ia tidak bisa melakukan komunikasi. Di antara keseluruhan fasilitas Internet, WWW (WorldWideWeb) merupakan salah satu aplikasi standart internet yang dapat dipergunakan untuk keperluan pendidikan (Purbo, 1997). WWW merupakan kumpulan koleksi besar tentang berbagai macam dokumentasi yang tersimpan dalam berbagai server di seluruh dunia, dan dokumentasi tersebut dikembangkan dalam format hypertext dan hypermedia, dengan menggunakan Hypertext Markup Language (HTML) yang memungkinkan terjadinya koneksi (link) dokumen yang satu dengan yang lain atau bagian dari dokumen yang satu dengan bagian yang lainnya, baik dalam bentuk teks, visual dan lain-lainnya. Jika dilihat dari proses kerjanya WWW (WorldWideWeb) dapat dibagi menjadi beberapa Komponen sebagai berikut (Bunafit Nugroho,2004) :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 12
1. Protocol Adalah sebuah media yang distandarkan untuk dapat mengakses komputer di dalam sebuah jaringan, Halaman yang dapat diakses adalah halaman Web Site. WWW memiliki standart protocol yang bernama HTTP atau (Hypertext Transfer Protocol). Dengan menggunakan protocol ini sebuah halaman yang ada di dalam komputer jaringan dapat dibuka dan diakses. 2. Address Merupakan alamat yang berkaitan dengan penamaan sebuah komputer di dalam jaringan. Alamat ini sebenarnya merupakan sebuah Nomor yang dimiliki sebuah komputer yang sering disebut dengan Nomor IP, akan tetapi dengan adanya perkembangan jaman, digantikan dengan nama URL (Uniform Resource Locator). 3. HTML (Hyper Text Markup Language) yaitu suatu bahasa yang menggunakan tanda-tanda tertentu (disebut sebagai tag) untuk menyatakan kode-kode yang harus ditafsirkan oleh browser agar halaman tersebut dapat ditampilkan secara benar. HTML digunakan untuk menulis sebuah halaman web. Dokumen HTML hanya berupa teks biasa, namun kelebihannya dari dokumen yang lain adalah : dengan HTML dapat dilakukan pemformatan teks, peletakan gambar, suara dan elemen-elemen multimedia yang lain, yang terpenting adalah hypertext yakni teks yang berfungsi sebagai suatu penghubung (hyperlink atau link)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 13
antara halaman web yang satu dengan halaman web lainnya (Sutarman, 2003). Struktur dasar dokumen HTML : bagian head bagian body
Dari beberapa Komponen yang berkaitan dengan WWW dapat digambarkan sebagai berikut : Hubungan antara Protocol, Address, dan HTML http : // www.usd.ac.id / ~staffusd / index.html
Protocol
J.
URL
Client
Hal Web HTML
Lecture Hall Kata lecture hall memang terdengar asing untuk banyak orang, walaupun
sebenarnya lecture hall merupakan kata bahasa inggris untuk menunjukkan ruang materi matakuliah. Menurut http://www.utexas.edu/world/lecture dijelaskan bahwa lecture hall adalah ruang materi matakuliah yang dibuat universitas ataupun fakultas pada khususnya, yang berbasis web untuk menyampaikan bahanbahan / materi kuliah, sebagai contohnya dapat ditampilkan silabus, deskripsi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 14
mata kuliah, modul materi dan lain-lain. Sedangkan universitas ataupun fakultas yang mengupload lecturenya dinamakan lecturer. Dalam pembuatan Lecture Hall (media untuk menempatkan materi matakuliah) berbasis web mempunyai konsep memberikan informasi tentang matakuliah yang ditawarkan dalam tiap-tiap semester baik itu gasal, genap dan sisip. Selain itu materi matakuliah yang telah diupload oleh dosen pengampu matakuliah. Untuk dapat melakukan download mahasiswa harus melakukan login sistem, dengan menginputkan username (Nomor Induk Mahasiswa) dan password. Lecture Hall berbasis web ini dimaksudkan agar tidak perlu melakukan tatap muka secara langsung antara mahasiswa dan dosen setiap kali ada materi matakuliah baru Semua ini ditekankan pada fokus e-learning yang lebih bertujuan untuk efisiensi
proses
belajar
mengajar.
Mahasiswa
lebih
dirangsang
untuk
mengeksplorasi pengetahuan serta materi matakuliah yang mahasiswa butuhkan. Materi matakuliah
pun dapat diperoleh dengan cara download filenya. Pada
intinya Lecture Hall ini dibuat dengan konsep yang berbasiskan web, maksudnya adanya suatu tempat khusus (halaman web) yang disediakan untuk dosen dalam mengupload file materi matakuliah.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 15
K. Browser Web, Web Server dan Web Programming 1. Browser Web Browser web mempunyai tugas menterjemahkan informasi yang diterima dari server web dan menampilkannya pada layar komputer pengguna. Umumnya browser web menerima data dalam bentuk HTML. Protokol-protokol dasar web pertama kali dikembangkan awal tahun 1990an, browser web pertama yang diperkenalkan adalah Mosaic yang dibuat oleh National Center for Supercomputing Applications (NCSA) di Amerika Serikat.
Gambar 2.2 Konsep Dasar Browser dan Web Server 2. Web Server Web server merupakan server yang memiliki kemampuan untuk memberikan layanan koneksi transfer data melalui protokol Hypertext Transfer Protocol (HTTP) yang dipergunakan dalam dunia internet. Ada banyak web server yang berkembang dan sering digunakan dalam membangun aplikasi berbasis web misalnya Web Server Netscape, Personal Web Server, Qitami, Apache dll. Apache merupakan HTTP Server yang berkembang untuk berbagai sistem seperti Windows 98/NT,UNIX,LINUX.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 16
3. Web Programming Web programming adalah bahasa pemrograman yang digunakan untuk membangun suatu aplikasi yang berbasis web. Di sini akan digunakan bahasa pemrograman Personal Home Page (PHP) sebagai alat bantu (tools) untuk membuat aplikasi-aplikasi dalam sistem informasi ini. Pada dasArnya bahasa pemrograman untuk membuat web dibagi dua yaitu :
a. Server side programming Merupakan teknologi dalam suatu pemrograman web. Pada serverside programming, perintah program (script) dijalankan di web server, kemudian dikirimkan ke browser dalam bentuk HTML.Dengan kata lain server side digunakan untuk memproses segala sesuatu
yang
berhubungan dengan server atau untuk memanipulasi suatu data pada basis data. Kelebihan server side yaitu tidak diharuskan menggunkan browser tertentu, serta dapat memanfaatkan sumber aplikasi yang dimiliki oleh server, misalnya koneksi ke basis data. Yang termasuk pemrograman ini adalah ASP (Active Server Pages), PHP dan lain-lain.
b. Client Side programming Client-side programming, perintah program dijalankan di web browser, sehingga ketika client meminta dokumen yang menngandung script, maka script tersebut akan di download dari server-nya kemudian dijalankan di browser yang bersangkutan. Client side digunakan untuk mengadakan interaksi dengan user yang berfrekuensi tinggi namun data yang diperlukan relatif sedikit atau telah tersedia sebelumnya. Kelebihan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 17
client side adalah suatu halaman web dapat dibuat lebih indah serta interaktif. Kekurangan dari client side adalah script dapat dilihat dengan fasilitas view HTML source. Yang termasuk pemrograman ini adalah : JavaScript, HTML.
L.
Cascading Style Sheet (CSS) Cascading Style Sheets merupakan salah satu bagian dari design web yang
berfungsi untuk mengatur tampilan setiap unsur yang ada di dalam web site. Untuk menggunakan CSS, dapat mengatur secara langsung pada format html, karena bila suatu saat ingin melakukan perubahan pada salah satu style dari sebuah unsur yang ada di web site, tinggal mengubah script dari CSS dan secara otomatis seluruh object atau unsur yang menggunakan style dari sebuah CSS akan berubah sesuai aturan baru (Stendy B.Sakur,2005)
M. Macromedia Dreamweaver MX 2004 Macromedia dreamweaver adalah sebuah HTML editor Professional untuk mendesain secar visual dan mengelola situs web maupun halaman web. Pada Dreamweaver MX 2004 terdapat beberapa kemampuan bukan hanya sebagai software untuk desain web saja, tetapi juga untuk menyunting kode serta pembuatan aplikasi web dengan menggunakan berbagai bahasa pemrograman web, antara alain PHP, ASP dll. Dreamweaver ini merupakan software utama yang
digunakan
oleh
web,
desainer
mengembangkan situs web (Madcoms,2004).
maupun
web
programmer
guna
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 18
N. Personal Home Page Tools (PHP) PHP ( dulu : Personal Home Page, sekarang : Hypertext Preprocessor) merupakan script untuk membuat suatu aplikasi yang dapat terintegrasikan ke dalam halaman HTML, sehingga suatu halaman web tidak lagi bersifat statis, namun menjadi bersifat dinamis (Teguh Wahyono,2005) Penemu bahasa pemrograman ini adalah Rasmus Lerdorf yang bermula dari keinginan sederhana ahli tersebut untuk mempunyai alat bantu (tools) dalam memonitor pengunjung yang melihat situs web pribadinya. Inilah sebab awal pengembangannya. Cara kerja bahasa pemrograman PHP ini yaitu script disisipkan pada HTML dan dijalankan oleh web server. Sebagai sebuah server-side, script PHP memiliki keunggulan antara lain (Madcoms, 2004): •
PHP memiliki tingkat akses yang lebih cepat.
•
PHP memiliki tingkat keamanan yang tinggi.
•
PHP mampu berjalan di beberapa server yang ada, misalnya Apache, Microsoft IIS, PWS, Xitami, phttpd, fhttpd.
•
PHP bersifat free atau gratis (open source)
•
PHP juga mendukung akses ke beberapa database yang sudah ada. Database itu antara lain : MySQL, Msql, Informix, MicrosoftSQL server.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 19
1. Kode (Tag) PHP Sebelum memulai pemrograman PHP perlu diingat dan dipastikan bahwa web server dan script PHP telah berjalan dengan baik. Untuk editor teks biasanya digunakan notepad. Fungsi-fungsi yang ada di PHP tidak case sensitive tetapi variabelnya case sensitive (membedakan huruf besar dan huruf kecil) (Sutarman, 2003). Penulisan program PHP diawali dengan tanda < dan diakhiri dengan tanda >. Untuk menuliskan script PHP ada tiga cara yaitu : 1.
Script PHP ?>
2.
Php script PHP ?>
3.
<SCRIPT LANGUAGE= ”php”> script PHP
Pemisah antar intruksi adalah titik koma (;), sedangkan untuk memambahkan komentar // komentar 2. Tipe Data PHP membagi tipe data menjadi lima jenis data (Madcoms,2004), yaitu :
a. Integer Berisi data semua bilangan bulat, baik positif ataupun negatif
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 20
b. String Merupakan tipe data yang menggunakan tanpa kutip tungal (‘ ‘) atau menggunakan tanda kutip ganda (“ “) Perbedaannya adalah jika menggunakan tanda petik tunggal, apabila dalam sebuah variabel yang memiliki data string dan dalam string tersebut terdapat variabel yang lain, maka nilai dari variabel tersebut akan dideklarasikan / dicetak nama variabel itu sendiri. Contoh : $string=’BelajarPHP’; $string=”BelajarPHP”;
c. Float Bersi bilangan pecahan atau bilangan decimal
d. Array Data yang mengandung beberapa data di dalamnya dan diindeks berdasarkan data numerik atau string.
e. Object Tipe data yang dapat berupa bilangan, variabel ataupun fungsi. Juga merupakan tipe data yang di dalamnya mempunyai data dan method. Data ini dapat disertakan ke dalam program sehingga meringkas beberapa fungsi dan dapat memperkecil ukuran file.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 21
3. Variabel Variabel digunakan sebagai tempat penyimpanan data sementara, di dalam PHP diawali dengan karakter $ diikuti dengan huruf sebagai karakter pertama setelah $, kemudian kombinasi karakter dan angka. Tidak boleh ada spasi dan tanda baca dalam penamaannya kecuali karakter_(garis bawah) (Sidik, 2004). Aturan pemberian nama variabel pada PHP adalah : •
Diawali dengan tanda $
•
Penamaan variabel bersifat case sensitive (membedakan huruf besar dan kecil)
•
Nama variabel hanya dapat diawali dengan huruf, baru dapat diikuti dengan angka atau huruf ataupun garis bawah.
Contoh variabel : $nama_anggota $alamat1 $umur=25
Variabel dalam PHP tidak harus dideklarasikan dahulu sebelum digunakan. 4. Konstanta Konstanta adalah sebuah variabel yang mempunyai nilai tetap dan tidak perlu
dideklarasikan
dengan
nilai
$.
Konstanta
dideklarasikan
menggunakan fungsi define().Perbedaan mendasar antara konstanta dan variabel adalah (Madcoms,2004) : •
Nama konstanta tidak menggunakan tanda $
•
Konstanta tidak dapat didefinisikan ulang atau dihapus
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 22
•
Konstanta hanya bersifat skalar
•
Konstanta tidak mengenal ruang lingkup variabel, dengan demikian dapat diakses dimana saja
5. Operator dalam PHP Operator digunakan untuk melakukan suatu operasi baik itu operasi matematis ataupun operasi string. Secara umum, operasi pada PHP adalah sebagai berikut :
a. Operator Aritmatika Operator ini berhubungan dengan operasi aritmatik. Tabel 2.1 Operator aritmatika Operator
Operasi
Keterangan
$a * $b
Perkalian
$a dikalikan $b
$a / $b
Pembagian
$a dibagi $b
$a % $b
Modulus
Sisa hasil $a dibagi $b
$a + $b
Penjumlahan
$a ditambah $b
$a - $b
Pengurangan
$a dikurangi $b
b. Operator String Operator ini digunakan untuk menggabungkan teks, baik teks dengan variabel maupun suatu teks dengan teks yang lain. Dideklarasikan dengan memberikan tanda titik ( . ) (Madcoms,2004).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 23
c. Operator Bitwise Operator ini digunakan untuk operasi bilangan biner, yaitu : 1 atau 0. Tabel 2.2 Operator bitwise Operator &
Nama And
Contoh $a & $b
Keterangan Bit akan bernilai 1 jika $a dan $b bernilai 1.
|
Or
$a | $b
Bit akan bernilai 1 jika $a atau $b bernilai 1.
^
Xor
$a ^ $b
Bit akan bernilai 1 jika $a atau $b, tetapi tidak keduanya bernilai 1.
~
Not
~ $a
Bit akan bernilai 1 jika $a dan $b bernilai 0.
<<
Shift Left
$a << $b
Menggeser bit $a sebanyak $b langkah ke kiri. Setiap langkah mempunyai pengertian “dikalikan dengan nilai dua”.
>>
Shift Right
$a >> $b
Menggeser bit $a sebanyak $b langkah ke kanan. Setiap langkah mempunyai pengertian “dibagi dengan nilai dua”.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 24
d. Operator Perbandingan Operator ini digunakan untuk melakukan suatu operasi perbandingan dan biasanya diletakkan di struktur kontrol program seperti if, elseif. Hasil dari suatu perbandingan selalu antara nilai true atau false saja. True jika perbandingannya benar dan sebaliknya akan bernilai salah (Madcoms, 2004). Tabel 2.3 Operator perbandingan Operator >
Nama Lebih dari
Contoh $a > $b
Keterangan True jika $a lebih besar dari $b
<
Lebih kecil
$a < $b
True jika $a lebih kecil dari $b
>=
<=
==
Lebih besar atau $a >= $b
True jika $a lebih besar atau
sama dengan
sama dengan $b
Lebih kecil atau $a <= $b
True jika $a lebih kecil atau
sama dengan
sama dengan $b
Sama dengan
$a == $b
True jika $a sama dengan $b
!=
Tidak sama
$a != $b
True jika $a tidak sama dengan $b
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 25
e. Operator Logika Operator ini digunakan untuk melakukan suatu operasi logika. Operator logika ini hampir memiliki fungsi yang sama dengan operator perbandingan. Tabel 2.4 Operator Logika Operator And
Nama And
&& or
Or
||
Contoh
Keterangan
$a and $b
Menghasilkan nilai True jika
$a && $b
$a dan $b bernilai benar.
$a or $b
Menghasilkan nilai True jika
$a | | $b
salah satu dari $a atau $b atau keduanya bernilai benar.
Xor
Ekslusif or
$a xor $b
Menghasilkan nilai True jika salah satu dari $a atau $b bernilai benar.
!
Not
!$a
Menghasilkan nilai True jika $a bernilai tidak benar.
f. Operator Decrement dan Increment Merupakan operator penambah dan pengurang nilai dengan nilai selisih 1 (satu). Apabila operator diletakkan sebelum variabel, misalkan ++$a atau --$a, maka nilai $a akan ditambah atau dikurangi dengan nilai 1 (satu)sebelum operasi dijalankan. Apabila operasi diletakkan setelah variabel, misalkan $a++ atau $a--, maka nilai $a akan ditambah atau
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 26
dikurangi dengan nilai 1 (satu) setelah operasi dijalankan (Madcoms, 2004) : Tabel 2.5 Operator Decrement dan Increment Operator ++$a
Operasi Pre-increment
Keterangan $a ditambah satu, kemudian operasi dijalankan
$a++
Post-incremant
Operasi dijalankan, kemudian $a ditambah satu.
--$a
Pre-decrement
$a dikurangi satu, kemudian operasi dijalankan
$a--
Post-decrement
Operasi dijalankan, kemudian $a dikurangi satu.
6. Uploading / Pengiriman File Upload dapat diartikan mengirim file atau meletakkan file dari komputer lokal (tempat kita bekerja) menuju komputer server penyedia layanan. Lawan dari upload adalah Download. Download memiliki pengertian sebaliknya dari upload. Jika upload adalah meletakkan fle dari komputer lokal menuju komputer server, maka download adalah mengambil atau mengcopy data atau file dari komputer pusat / server menuju ke komputer lokal (Bunafit Nugroho,2004).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 27
O. Database MySQL (Structure Query Language) MySQL adalah multiuser database yang menggunakan bahasa Structured Query Language (SQL).
SQL adalah bahasa standart yang digunakan untuk
mengakses database server. Dengan menggunakan SQL, proses akses database menjadi lebih user-friendly (Bimo sunarfrihantono,2002). MySQL juga merupakan software sistem manajemen database (Database management System – DBMS) yang sangat populer di kalangan pemrogram web, terutama di lingkungan Linux dengan menggunakan script PHP dan Perl. MySQL merupakan database yang paling populer digunakan untuk membangun aplikasi web yang menggunakan database sebagai sumber dan pengelola datanya. Berikut ini adalah beberapa kelebihan yang ditawarkan oleh MySQL, menurut dokumentasi dari www.mysql.com: •
Ditulis dengan bahasa pemrograman C dan C++, dengan ujicoba pada berbagai jenis compiler .
•
Multiplatform, bisa digunakan di keluarga UNIX, Windows sampai MAC
•
Penggunaan memory yang optimal .
•
Tingkat keamanan yang tinggi.
•
Mampu menangani database yang besar, 60.000 tabel dan 50.000.000 baris data.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 28
•
Mampu mengkombinasikan tabel dari beberapa database dalam sebuah query.
Namun MySQL juga masih mempunyai kekurangan yaitu tidak dapat menangani subquery yang kompleks dan untuk mengatasi masalah itu diperlukan tabel sementara ( temporary table ) untuk menampung hasil subquery atau dengan membuatkan variabel bantuan. Fungsi-fungsi PHP yang digunakan untuk koneksi database MySQL adalah : Tabel 2.6 Tabel daftar fungsi PHP untuk MySQL Koneksi dan Diskoneksi kepada server MySQL Membuka koneksi kepada suatu server mysql_connect
MySQL Membuka koneksi persisten kepada sutu
mysql_pconnect
server MySQL Memilih database yang akan digunakan
mysql_select_db
mysql_close
setelah koneksi berhasil. Memutuskan koneksi database Mengganti nama pemakai dan password pada
mysql_change_user
koneksi yang sedang aktif.
Membuat dan Menghapus Database mysql_create_db
Membuat sebuah database MySQL
mysql_drop_db
Menghapus sebuah database MySQL Mengerjakan Query
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 29
mysql_db_query
Mengeksekusi melakukan
perintah
query
pada
SQL server
untuk yang
disebutkan. mysql_qury
Mengeksekusi
perintah
SQL
untuk
melakukan query pada databse yang telah dipilih. Penanganan Hasil Query mysql_fetch_array
Mengambil sebuah baris hasil query sebagai sebuah array assosiatif
mysql_result
Memberikan data hasil query
mysql_fetch_row
Menghasilkan baris atau record dalam array enumerated.
mysql_affected_rows
Memberikan informasi jumlah record yang diproses oleh suatu query
mysql_num_rows
Memberikan informasi jumlah record / baris hasil suatu query
mysql_fetch_field
Menghasilkan object dari informasi kolom suatu hasil query
mysql_fetch_lengths
Menghasilkan panjang setiap output dari hasil
mysql_fetch_object
Menghasilkan sebuah baris (row) hasil sebagai object
mysql_field_name
Mengambil nama field dari suatu hasil
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 30
mysql_field_len
Menghasilkan panjang field
mysql_field_seek
Memposisikan pointer kepada offset sutu field yang dinyatakan.
mysql_field_type
Menghasilkan tipe field dari hasil.
mysql_field_flags
Menghasilkan flag berasosiasi dengan field yang dispesifikasikan dalam hasil.
Menghasilkan kode / nilai error suatu perintah query Informasi tentang Database
mysql_list_dbs
Menghasilkan daftar database yang ada dalam server MySQL
mysql_list_tables
Menghasilkan daftar tabel dalam suatu database
mysql_list_fields
Menghasilkan daftar field dari suatu tabel
mysql_field_table
Mengambil nama tabel yang berisi nama field yang dinyatakan
mysql_table_name
Menghasilkan nama tabel.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 31
1. Tipe Data MySQL MySQL mengenal beberapa tipe data field : (Sutarman, 2003)
a. Tipe Data Numerik Tipe data numerik ada dua yaitu tipe data integer untuk data bilangan bulat dan tipe data floating point untuk bilangan decimal.
b. Tipe Data String Berisi nilai string (karakter ) dan numerik. Yang termasuk dalam tipe data string adalah : CHAR, VARCHAR, TINYBLOB, TINYTEXT, BLOB, TEXT, MEDIUMBLOB, MEDIUMTEXT, LONGBLOB, LONGTEXT,ENUM(‘elemen1’,’elemen2’…), SET(‘elemen1’,’elemen2’,…)
c. Tipe data char () dan varchar() Tipe data char() dan varchar() pada prinsipnya sama, perbedaannya terletak pada jumlah memori untuk penyimpanan. Memori untuk tipe data char() bersifat statis, besarnya tergantung pada berapa jumlah karakter yang ditetapkan pada sat field tersebut dideklarasikan. Untuk tipe data varchar() besar memori penyimpanan tergantung pada barapa karakter yang dipakai ditambah 1 byte yang berisi data jumlah karakter yang dipakai.
d. Tipe data waktu Menyimpan informasi waktu, baik tanggal maupun jam. Walaupun data yang disimpan numerik tetapi pembacaan terhadap data adalah string.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 32
Untuk tipe data ini ada beberapa yaitu : DATETIME, DATE, TIMESTAMP, TIME, YEAR 2. Perintah Dasar MySQL Perintah dasar yang ada di MySQL adalah (Sutarman, 2003): •
Untuk membuat database CREATE DATABASE nama_db
•
Untuk menghapus database DROP DATABASE nama_db
•
Untuk mengatifkan database yang telah dibuat : USE nama_db
•
Untuk membuat tabel baru CREATE TABLE nama_tabel (”nama kolom” )
•
Untuk mengetahui struktur tabel DESC nama_tabel
•
Mengetahui daftar tabel yang ada pada suatu databse SHOW TABLES;
•
Untuk mengubah struktur tabel ALTER TABLE
3. Manipulasi Data Data Manipulation language (DML) adalah suatu bahasa yang digunakan untuk manipulasi data seperti perintah untuk menambah, menghapus, menampilkan, mengubah suatu data. Perintah yang tergolong dalam DML adalah insert, update, delete , select (Sutarman, 2003). •
Insert tabel :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 33
INSERT
INTO
nama_tabel(nama_kol1,nama_kol2,..)
values (data_kol1,data_kol2...)
•
Perintah SELECT digunakan untuk melihat data dari suatu atau beberapa tabel. SELECT kolom1,kolom2,... FROM nama_tabel WHERE [kondisi] ORDER BY [kolom] GROUP BY [kolom] ASC | DESC limit [batasan]
•
Mengubah data (UPDATE) Sintaks : UPDATE nama_tabel SET kolom/fireld1=isi_baru1, kolom2=isis_baru2,… WHERE [kondisi]
•
Menghapus data (DELETE) Sintaks : DELETE FROM nama_tabel WHERE [kondisi]
P.
Apache Web Server Apache Web Server merupakan suatu server web yang menggunakan
protokol HTTP ( Hypertext Transfer Protocol ) untuk melayani semua proses pentransferan data. Versi awal untuk Apache digunakan pada UNIX, tetapi kini telah ada versi yang dapat beroperasi di bawah platform OS/2, Windows, LINUX dan sebagainya. Keuntungan dari pemakaian Apache Web Server adalah tidak dipungut biaya untuk mendapatkannya atau gratis dan kecepatannya cukup baik (Teguh Wahyono,2005).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 34
Q. Diagram Alir Data (DAD) Diagram alir data (Data Flow Diagram atau DFD) adalah gambaran dari proses aliran data, penyimpanan dan kesatuan luar (External Entity) dari sebuah sistem. Diagram alir juga digunakan untuk alat bantu pemodelan proses yang menggambarkan aliran data dalam suatu sistem serta aktivitas atau pemrosesan yang dilakukan oleh sistem tersebut. Beberapa simbol yang digunakan pada diagram arus data sebagai berikut : 1.
Kesatuan Luar (External Entity) Sistem akan menerima input dan menghasilkan output kepada lingkungan
luarnya. Kesatuan luar (external entity) merupakan kesatuan diluar sistem yang dapat berupa orang, organisasi atau sistem lainnya yang berada dilingkungan luar yang akan memberikan input atau menerima output dari sistem.
Gambar 2.3 Simbol Entitas
2.
Proses (Process)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 35
Suatu proses adalah kegiatan atau kerja yang dilakukan oleh orang, mesin atau komputer dari hasil suatu arus data yang masuk dalam proses untuk menghasilkan arus data yang akan keluar dari proses.
Gambar 2.4 Simbol untuk proses data 3.
Penyimpanan Data (Data Store) Penyimpanan data (Data Store) merupakan simpanan data yang berasal dari
suatu file atau database di sistem komputer
Gambar 2.5 Simbol untuk menyimpan data 4.
Arus atau aliran Data (Data Flow) Arus data ini mengalir diantara proses (Process), penyimpanan data (Data
Store) dan kesatuan luar (External Entity). Arus data ini menunjukkan arus data yang dapat berupa masukan untuk sistem atau hasil dari proses sistem.
Gambar 2.6 Simbol untuk arus data
BAB III
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 36
ANALISA SISTEM
R. Analisa Sistem 1.
Analisa Masalah Materi matakuliah yang diberikan dosen kepada mahasiswa terbatas
pada saat pertemuan didalam kelas, dimana pada saat itu mahasiswa harus mencatat materi apa yang dosen sampaikan kepada mahasiswanya. Mencermati hal seperti ini, rasanya lebih efektif jika kita sebagai mahasiswa bisa leluasa mendengarkan penjelasan dosen tanpa harus disibukkan dengan mencatat materi apa saja yang dijelaskan oleh dosen. Masalah lain yang mungkin timbul dalam hubungannya dengan materi matakuliah adalah banyaknya materi yang kita dapatkan dalam bentuk kertas ataupun modul-modul (hardcopy) membuat penataan materi-materi ini kurang teratur, dan bisa jadi berceceran kemana-mana. Mungkin kalau kita akan menggunakan materi-materi yang sudah dulu, kita akan membutuhkan banyak waktu untuk membongkar simpanan materi yang pernah kita punya. Sebaliknya bagi dosen, waktu pertemuan atau tatap muka dengan mahasiswa dirasa kurang maksimal, oleh karenanya dosen tidak bisa mengandalkan pertemuan tersebut untuk membahas keseluruhan materi. Mencermati permasalahan tersebut diatas dapat disimpulkan bahwa user dalam hal ini mahasiswa dan dosen membutuhkan suatu aplikasi untuk menempatkan matakuliah, dalam bentuk file materi matakuliah dalam suatu media. Aplikasi yang dimaksud adalah Lecture Hall berbasis web dimana
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 37
akan dibuat media sebagai penyedia materi matakuliah bagi dosen yang bersangkutan. Hal ini dimaksudkan dapat membantu mahasiswa dalam melakukan download materi kapan saja, dimana saja tanpa ada batasan ruang dan waktu. Selain itu materi matakuliah akan dapat membantu kita untuk menambah pengetahuan yang belum kita ketahui. Apalagi sebagai seorang mahasiswa, kita di tuntut untuk selalu aktif dalam memperoleh materi yang akan digunakan dalam proses belajar mengajar.
2.
Analisa Sistem yang dikembangkan Alternatif penyelesaian masalah tersebut dapat dilakukan dengan
penyederhanaan sistem yang telah ada dengan pengembangan materi matakuliah berbasis web, yang dilengkapi dengan fasilitas pencarian (searching) berdasar nama matakuliah serta nama dosen, sehingga mahasiswa dapat mengakses informasi mengenai materi matakuliah secara langsung setiap saat hanya dengan memasukkan Nomor Induk Mahasiswa (NIM) dan password untuk login. Dengan menggunakan sistem ini, mahasiswa akan memperoleh beberapa kemudahan, yaitu : 1. Efisiensi waktu, maksudnya adalah mahasiswa tidak harus menunggu waktu perkuliahan berlangsung untuk mendapatkan modul materi 2. Membantu mahasiswa dalam mengatur file-file materi mata kuliah.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 38
3. Mahasiswa bisa secara aktif mendownload materi matakuliah sesuai dengan kebutuhan.
S.
Analisa Kelayakan Berdasarkan analisa masalah diatas, Lecture Hall berbasis web ini layak
untuk dibangun karena: 1.
Kelayakan simplicity (sederhana) Sistem ini dibuat tidak terlalu kompleks dan rumit dalam penggunaanya. Sistem ini lebih menonjolkan kesederhanaan, sehingga user dalam hal ini dosen dan mahasiswa tidak kesulitan dalam menggunakan sistem ini.
2.
Kelayakan economy (nilai ekonomis) Dengan menggunakan sistem ini, user khususnya mahasiswa dapat
melakukan download modul materi matakuliah secara gratis 3.
Kelayakan efficiency (efisien / praktis) Sistem yang dibangun adalah sistem yang berbasis web, sehingga user
dapat melakukan download serta upload kapan saja tanpa batasan ruang dan waktu. 4.
Kelayakan security Hak akses hanya diberikan kepada mahasiswa dan dosen yang
mempunyai password yang benar.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 39
5.
Kelayakan teknologi Aplikasi dibangun menggunakan sistem operasi Windows, bahasa
pemrograman PHP (Personal Home Page tools) dan database MySQL untuk pengelolaan databasenya.
T.
Analisa Kebutuhan Mahasiswa dan dosen sebagai user membutuhkan sebuah sistem yang dapat
memudahkan user mendapatkan informasi mengenai materi matakuliah berbasis web antara lain : materi matakuliah , jadwal matakuliah tiap semester, secara cepat dan akurat tanpa melalui proses yang rumit. Adapun kebutuhan hardware dan software untuk membuat Lecture Hall Universitas Sanata Dharma berbasis web adalah sebagai berikut :
Kebutuhan Hardware, Software dan Brainware : Software (Perangkat Lunak) :
Sistem Operasi
: Windows XP SP1 / Linux
Web Browser
: Internet Explorer 4.0 keatas
Web Server
: Apache for windows 2.0.54
Programming
: PHP version 5.05
Database
: MySQL 4.1.14
Editor
: Macromedia Dreamweaver MX 2004
Hardware (Perangkat keras) :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 40
Processor
: Intel Pentium III 533 Mhz keatas
Memory
: 64 MB
Harddisk
: 40 GB
Brainware:
Pengetahuan tentang basis data
Pengetahuan tentang pemrograman web dan internet
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 41
BAB IV PERANCANGAN SISTEM
U. Perancangan Proses Proses yang terjadi di dalam pembuatan Lecture Hall berbasis web ini dirancang untuk dapat menampilkan informasi materi matakuliah untuk mahasiswa dan dosen dengan melakukan query terhadap tabel-tabel yang ada di dalam database. Adapun input yang dilakukan dan output yang didapatkan oleh mahasiswa adalah sebagai berikut : Dari sisi mahasiswa : •
•
Input -
User name (NIM) dan Password.
-
Materi yang akan didownload.
-
Input kategori.
Output -
Jadwal kuliah tiap semester.
-
Materi yang telah didownload.
-
Hasil pencarian berdasar kategori.
Dari sisi dosen : •
Input -
NPP dan Password.
-
materi matakuliah yang akan diupload.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 42
•
-
materi matakuliah yang akan diupdate
-
materi matakuliah yang akan dihapus.
Output -
Tampilan jadwal mengajar dosen.
-
Pesan hasil upload
-
Tampilan data materi yang sudah terupload (materi download untuk mahasiswa)
-
Tampilan data materi yang sudah terupdate.
-
Tampilan data materi yang sudah terhapus.
1. Diagram Alir Data Diagram alir data (Data Flow Diagram atau DFD) adalah gambaran dari proses aliran data, penyimpanan dan kesatuan luar (External Entity)1 dari sebuah sistem. Berikut ini akan dijelaskan secara garis besar mengenai aliran data dari Pembuatan lecture hall Universitas Sanata Dharma Berbasis Web.
a. Diagram Konteks Pembuatan Lecture Hall berbasis web Diagram konteks (Context Diagram) adalah gambaran dari sistem yang membatasi, berinteraksi dengan kesatuan luar.1 Diagram konteks Pembuatan lecture hall Program Studi Ilmu Komputer Universitas Sanata Dharma Berbasis Web.
1
Jogiyanto H.M. – Analisis dan Desain Sistem Informasi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 43
Gambar 4.1. Diagram Konteks
Diagram konteks di atas memberikan informasi bahwa Pembuatan Lecture Hall Program Studi Ilmu Komputer Universitas Sanata Dharma Berbasis Web berinteraksi dengan 2 entitas, yaitu Mahasiswa dan Dosen. Output tampak pada kedua entitas mahasiswa dan dosen karena sistem yang akan dibuat dirancang hanya untuk menghasilkan output informasi data materi matakuliah bagi mahasiswa dan dosen
b. Diagram Alir Data (DAD) Level 1 sisi mahasiswa
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 44
Gambar 4.2. Diagram Alir Data (DAD) level 1 sisi mahasiswa
Proses yang terjadi pada diagram level 1 diatas adalah : •
Login dan Verifikasi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 45
Pada proses ini entitas mahasiswa akan menginputkan NIM dan Password. Jika login valid akan melakukan proses selanjutnya, tetapi jika login gagal akan ada warning dan kembali ke menu utama. •
Tampil matakuliah Pada proses ini, mahasiswa bisa menginputkan matakuliah
semester berapa yang diinginkan. Misalnya semester (1) menyatakan semester ganjil, semester (2) menyatakan semester genap dan semester (3) menyatakan semester sisipan. Pada proses ini akan ditampilkan antara lain daftar matakuliah serta dosen yang mengajar. •
Pencarian berdasar kategori Proses
pencarian
ini
memudahkan
mahasiswa
untuk
mendapatkan materi. Mahasiswa tinggal menginputkan kategori berdasar nama dosen ataupun nama matakuliah yang diinginkan. Output yang ditampilkan sesuai dengan kategori yang diinginkan. •
Download materi matakuliah Pada proses ini mahasiswa bisa mendownload materi yang
dibutuhkan.
Materi Download berasal dari simpanan data yang
berasal dari file materi yang upload dosen.
c. Diagram Alir Data (DAD) Level 1 sisi dosen
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 46
Gambar 4.3 Diagram Alir Data (DAD) Level 1 sisi dosen
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 47
Proses yang terjadi di sisi dosen ini antara lain ( dalam gambar di atas ) : •
Login dan Verifikasi Pada proses ini dosen menginputkan NPP dan password untuk
bisa mengakses aplikasi ini. •
Upload materi matakuliah Proses ini merupakan proses yang sangat penting bagi dosen.
Dosen memasukkan materi matakuliah ke dalam sistem, cara ini dinamakan upload file. •
Tampil data materi Proses ini akan menampilkan materi matakuliah yang telah di
upload oleh dosen yang mengampu matakuliah yang bersangkutan.. •
Edit data materi dan Hapus data materi Pada proses ini, dosen bisa mengupdate materi matakuliah secara berkala, supaya materi matakuliah selalu ter update. Selain itu dosen bisa menghapus materi yang sekiranya sudah lalu.
V. Perancangan Basis Data 1. Informasi yang digambarkan dalam sistem Dalam aplikasi pembuatan Lecture Hall Program Studi Ilmu Komputer Universitas Sanata Dharma menyimpan informasi mengenai data dosen, mahasiswa, data matakuliah, data materi, data kelas perkuliahan. Kondisi yang terjadi dalam sistem adalah sebagai berikut :
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 48
a. Dosen Adalah pihak yang akan mengupload materi perkuliahan secara teratur. Dalam hal ini, dosen akan melakukan login terlebih dahulu. Setelah login valid, dosen bisa mengupload materi sesuai dengan matakuliah yang diampunya. Dosen juga akan melakukan update sacara berkala dengan melakukan hapus data pada materi yang sudah tidak terpakai.
b. Mahasiswa Adalah pihak yang akan mendownload materi perkuliahan yang dibutuhkan.
Mahasiswa login terlebih dahulu untuk bisa mengakses
sistem ini.
c.
Matakuliah Terdiri dari keseluruhan matakuliah untuk masing-masing program
studi. Matakuliah yang ditampilkan terbagi atas beberapa semester dalam tiap tahun ajaran. c.
Materi Setiap matakuliah mempunyai beberapa materi. Materi inilah yang
nantinya akan diupload oleh dosen yang mengampu matakuliah. d.
Kelas perkuliahan Kelas perkuliahan ini menyimpan data sesuai dengan jadwal kelas
matakuliah yang struktur tabelnya sesuai dengan file akademik kampus.
2. Diagram Relasi Entitas
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 49
Adapun langkah-langkah untuk membuat diagram relasi entitas adalah sebagai berikut : a.
Mengidentifikasi dan menetapkan seluruh himpunan entitas yang terlibat. Dalam pembuatan Lecture Hall Prodi Ilmu Komputer USD ini diidentifikasi ada 6 buah
entitas yaitu
Dosen, matakuliah,
program studi, materi, Kelas dan Mahasiswa.
b. Menentukan
atribut-atribut
key
dari
masing-masing
himpunan entitas. Atribut-atribut key yang disertakan di masing-masing himpunan entitas merupakan atribut terpenting yang dapat mengidentifikasi (membedakan)
setiap
entitas
yang
ada
didalamnya.
Pengidentifikasian setiap entitas secara unik di himpunan -
entitas mahasiswa adalah atribut nomor_mhs
-
entitas dosen adalah atribut NPP
-
entitas matakuliah adalah atribut kd_mtk
-
entitas materi adalah atribut kd_materi.
-
entitas program studi adalah atribut kd_prg.
-
entitas kelas (merupakan entitas penghubung antara entitas matakuliah dan entitas dosen).
Mengidentifikasi dan menetapkan seluruh himpunan relasi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 50
Relasi-relasi yang ditetapkan harus dapat mengakomodasi semua fakta yang ada dan menjamin semua kebutuhan penyajian data, tetapi juga harus dibuat seoptimal mungkin supaya tidak memakan ruang penyimpanan yang lebih besar dan tidak menyulitkan operasi pengelolaan data. Adapun relasi yang terjadi : -
Jadwal merupakan relasi yang terjadi antara entitas kelas dan matakuliah
-
Memuat merupakan relasi antara matakuliah dan materi, hanya saja sifat dari relasi ini yaitu lemah, yaitu relasi yang terkait oleh entitas lemah.
-
mengampu merupakan relasi antara dosen dan kelas.
-
menginduk merupakan relasi antara dosen dan program studi
-
menawarkan merupakan relasi antara program studi dan matakuliah.
c. Menentukan derajat / kardinalitas relasi untuk ssetiap himpunan relasi. Fakta memperlihatkan bahwa : -
Seorang dosen dapat mengampu lebih dari satu kelas matakuliah. Maka derajat relasi antara himpunan entitas dosen dan himpunan entitas kelas matakuliah adalah oneto-many
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 51
-
Setiap matakuliah terdiri dari banyak materi. Maka derajat relasi antara himpunan entitas matakuliah dengan entitas materi adalah one-to-many
-
Setiap matakuliah bisa menjadwalkan banyak kelas matakuliah. Maka derajat relasi antara himpunan entitas matakuliah dengan entitas kelas adalah one-to-many
-
Setiap program studi menginduk banyak dosen. Maka derajat relasi antara himpunan entitas program studi dengan entitas dosen adalah one-to-many
-
Setiap program studi bisa menawarkan banyak matakuliah. Maka derajat relasi antara himpunan entitas program studi dengan entitas matakuliah adalah one-to-many
d. Melengkapi atribut dalam setiap himpunan entitas dengan menambahkan atribut-atribut deskriptif (non key) -
Mahasiswa (Nomor_mhs, Nama_Mhs, Password).
-
Dosen (NPP, password, nama dosen)
-
Matakuliah (kd_mtk, nama_mtk, SKS, JP).
-
Materi (kd_materi, nama_file, nama_materi)
-
Kelas (NPP , kd_mtk, seksi, hari1, ruang1,jam1).
-
ProgramStudi (kd_prg, nama_prg)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 52
Gambar 4.4 Diagram ER
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 53
3. Relasi Ternormalisasi Normalisasi merupakan suatu proses untuk mengkonversikan struktur data kompleks ke struktur data yang lebih sederhana. Konversi dari diagram relasi entitas ke tabel adalah sebagai berikut : a.
Tabel Mhs3124 Tabel mhs3124 berisikan data mahasiswa program studi Ilmu Komputer. Tabel ini berisikan sejumlah field yang dijabarkan sebagai berikut: Nama Tabel
: mhs3124
Nama Field Kunci Primer
: nomor_mhs
Tabel 4.1. Struktur tabel mhs3124
b.
No
Nama
Type
Keterangan
1
nomor_mhs*
Char(12)
Primary key
2
Nama_mhs
Char(40)
Snd3124 Tabel snd3124 berisikan data sandi mahasiswa atau password mahasiswa prodi Ilmu Komputer. Dari file akademik kampus memang tabel snd3124 terpisah dari tabel mhs3124, dikarenakan untuk efisiensi dalam penginputan data mahasiswa. Tabel ini berisikan sejumlah field yang dijabarkan sebagai berikut:
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 54
Nama Tabel
: snd3124
Nama Field Kunci Primer
: nomor_mhs
Tabel 4.2. Struktur tabel snd3124
c.
No
Nama
Type
1
Nomor_mhs*
Char(12)
2
Sandi
Char(10)
Keterangan
Password mahasiswa
Mtk3124 Tabel mtk3124 berisikan data matakuliah yang ditawarkan prodi Ilmu Komputer. Tabel ini berisikan sejumlah field yang dijabarkan sebagai berikut: Nama Tabel
: mtk3124
Nama Field Kunci Primer
: kd_mtk
Tabel 4.3. Struktur tabel mtk3124 No
Nama
Type
Keterangan Primary Key
1
Kd_mtk*
Char(9)
2
Nama_mtk
Char(30)
3
SKS
4
JP
Numerik(2,0) Numerik (2)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 55
d.
Jw31242005s(nama variabel) Tabel Jw 3124 2005 s dideklarasikan sebagai berikut : Variable yang menyatakan semester Tahun ajaran Kode prodi Ilmu Komputer Semester disini dideklarasikan dalam 3 bagian. Semester ganjil (kode=1), semester genap (kode=2) dan semester sisipan (kode3). Tabel ini juga merupakan tabel relasi dari entitas matakuliah dan kelas matakuliah. Tabel ini berisikan sejumlah field yang dijabarkan sebagai berikut: Nama Tabel
: Jw31242005s
Nama Field Kunci Primer
: seksi
Tabel 4.4. Struktur tabel Jw31242005s No
Nama
Type
1
Kd_mtk*
Char(9)
2
NPP*
Char(8)
3
Seksi*
Char(3)
4
Ruang1
Char(3)
5
Hari1
Char(6)
6
Jam1
Char(11)
Keterangan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 56
e.
Pegawai Tabel Pegawai berisikan data pegawai universitas Sanata Dharma termasuk data dosen yang masih aktif mengajar. Tabel ini berisikan sejumlah field yang dijabarkan sebagai berikut: Nama Tabel
: Pegawai
Nama Field Kunci Primer
: NPP
Tabel 4.5. Struktur tabel Pegawai No
f.
Nama
Type
Keterangan Primary Key
1
NPP
Char(8)
2
Nama_peg
Char(40)
Idpegawai Tabel idpegawai berisikan data sandi pegawai atau password. Tabel ini hampir sama dengan tabel sandi mahasiswa yang struktur tabelnya terpisah. Tabel ini berisikan sejumlah field yang dijabarkan sebagai berikut: Nama Tabel
: idpegawai
Nama Field Kunci Primer
: NPP
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 57
Tabel 4.6. Struktur tabel idpegawai No
g.
Nama
Type
1
NPP*
Char(10)
2
username
Char(10)
3
Password
Char(10)
Keterangan
Materi Tabel Materi berisikan data materi matakuliah yang akan didownload oleh mahasiswa. Tabel ini berisikan sejumlah field yang dijabarkan sebagai berikut: Nama Tabel
: Materi
Nama Field Kunci Primer
: nama_file
Tabel 4.7. Struktur tabel materi No
Nama
Type
1
Kd_mtk
Char(9)
2
NPP
Char(8)
3
Nama_materi
Char(40)
4
Nama_file
Char(40)
5
Kd_prg
Char(4)
Keterangan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 58
h.
Prg_std Tabel Prg_std berisikan data program studi yang ditawarkan di universitas Sanata Dharma. Tabel ini berisikan sejumlah field yang dijabarkan sebagai berikut: Nama Tabel
: Prg_std
Nama Field Kunci Primer
: kd_prg
Tabel 4.8. Struktur tabel Prg_std No
Nama
1
Kd_prg*
2
Nama_prg
Type
Keterangan
Char(4) Varchar(50)
Bentuk tabel diatas sudah merupakan bentuk normal ketiga karena memenuhi syarat sebagai berikut : •
Relasi tidak memuat grup berulang
•
Setiap atribut bukan kunci tergantung fungsional (penuh) pada kunci primer
•
Semua atribut bukan kunci tergantung hanya pada kunci primer secara menyeluruh.
Entitas Program Studi = kd_prg + nama_prg kd_prg = (0-9) 4 nama_prg = {A-Z|a-z|.,|spasi}30
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 61
W. Struktur Menu
Gambar 4.5 Struktur Menu
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
X.
Perancangan Antarmuka (Interface Design) LECTURE HALL Universitas Sanata Dharma
Jenis Login :
Lecture Hall USD merupakan media Untuk pengadaan materi matakuliah.
NIM / NPP : User (Mahasiswa ataupun Dosen) harus login terlebih dahulu untuk
Password :
dapat masuk dalam sistem. LOGIN
BATAL
Mahasiswa bisa mendownload materimateri perkuliahan yang dibutuhkan.
Kalender
Footer
Gambar 4.6 Perancangan tampilan antarmuka awal
Dalam menu utama ini user dalam hal ini dosen dan mahasiswa harus login terlebih dahulu untuk dapat masuk ke dalam sistem. Login untuk dosen dengan menginputkan NPP dan password. Sedangkan Login untuk mahasiswa dengan menginputkan NIM dan password. Jika login kedua user valid, maka bisa melakukan akses Lecture Hall berbasis web ini.
1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 63
LECTURE HALL Universitas Sanata Dharma . HOME
JADWAL PERKULIAHAN
LOGOUT
Login di terima Anda boleh melakukan akses sistem Nama : Ruly Nur Hayati NIM : 013124068 Program Studi : Ilmu Komputer
Footer
Gambar 4.7 Perancangan tampilan login mahasiswa valid Tampilan di atas menunjukkan jika login mahasiswa sukses, sehingga mahasiswa bisa mengakses sistem.
LECTURE HALL Universitas Sanata Dharma JADWAL PERKULIAHAN
HOME
LOGOUT
DAFTAR MATAKULIAH
Semester (1) Semester (2) Semester (3)
No
Kode MK
Nama Mata Kuliah
Seksi
Nama dosen
...................Semester belum dipilih................
Footer
Gambar 4.8 Perancangan tampilan default jadwal perkuliahan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 64
Form tampilan diatas akan menampilkan default jika mahasiswa menekan tombol jadwal perkuliahan. Mahasiswa harus memilih semester berapa yang diinginkan untuk melihat daftar matakuliah yang ada.
LECTURE HALL Universitas Sanata Dharma JADWAL PERKULIAHAN
HOME
LOGOUT
DAFTAR MATAKULIAH
Nama dosen
PENCARIAN :
Search
Semester (1) Semester (2) Semester (3) No
Kode MK
Nama Mata Kuliah
Nama dosen
Footer
Gambar 4.9 Perancangan tampilan daftar matakuliah per semester dan tampilan hasil searching berdasar kategori
Dalam menu daftar matakuliah diatas, akan ditampilkan daftar perkuliahan untuk masing-masing semester. Pilihan semester ini meliputi semester 1 / 2 / 3, yang berarti semester 1 (semester gasal), semester 2 (semester genap), semester 3 (semester sisip). Selain itu mahasiswa bisa menginputkan nama matakuliah ataupun nama dosen dalam form pencarian. Dari tampilan daftar perkuliahan diatas, mahasiswa bisa memilih matakuliah yang akan didownload.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 65
LECTURE HALL Universitas Sanata Dharma HOME
JADWAL PERKULIAHAN
LOGOUT
Daftar Materi Matakuliah Nama matakuliah : Kode Matakuliah : Dosen : No
Nama materi
File Download
Back
Footer
Gambar 4.10 Perancangan tampilan daftar materi matakuliah Menu diatas akan menampilkan daftar keseluruhan materi yang telah diupload oleh dosen. Upload dilakukan dosen tiap satu per satu file materi, tidak bisa multi upload. Form ini juga disediakan untuk mahasiswa yang akan melakukan download materi matakuliah.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 66
Dari Sisi Dosen Rancangan antarmuka pada menu dosen ini, hanya akan menampilkan informasi tentang jadwal mengajar dosen dan materi matakuliah yang telah diupload dosen.. LECTURE HALL Universitas Sanata Dharma
HOME
JADWAL MENGAJAR DOSEN
LOGOUT
Login di terima Anda boleh melakukan akses sistem NPP Nama
: P.1446 : P.H Prima Rosa Footer
Gambar 4.11 Perancangan tampilan login dosen valid Tampilan diatas menunjukkan jika login dosen sukses, sehingga dosen bisa mengakses sistem. LECTURE HALL Universitas Sanata Dharma JADWAL MENGAJAR DOSEN
HOME
LOGOUT
JADWAL MENGAJAR DOSEN Nama
:
NPP
: No
Kode MK
Nama Mata Kuliah
Hari / Jam / Ruang
Footer
Gambar 4.12 Perancangan tampilan jadwal mengajar dosen
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 67
Rancangan menu diatas, akan menampilkan informasi tentang jadwal mengajar dosen. Pada halaman ini, semua matakuliah yang dosen ampu akan tampil. Dosen dapat melakukan upload materi matakuliah berdasar nama matakuliah. LECTURE HALL Universitas Sanata Dharma HOME
JADWAL MENGAJAR DOSEN
LOGOUT
File Materi Matakuliah yang sudah diupload Nama matakuliah : Kode Matakuliah : No
Tambah materi
Nama_materi
Nama File
Action Edit hapus
Footer
Gambar 4.13 Perancangan tampilan daftar materi yang diupload dosen Rancangan antarmuka diatas, akan menampilkan keseluruhan materi matakuliah yang telah diupload dosen. Pada halaman inilah dosen bisa melakukan update dan hapus materi matakuliah yang sudah di upload.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 68
LECTURE HALL Universitas Sanata Dharma HOME
JADWAL MENGAJAR DOSEN
LOGOUT
Tambah Materi Matakuliah Kode_matakuliah : Nama matakuliah : Nama materi
:
Nama file
:
Browse
Simpan
Batal
Footer
Gambar 4.14 Perancangan tampilan tambah materi matakuliah
Rancangan antarmuka diatas disediakan dosen untuk melakukan upload materi matakuliah baru. Kode matakuliah dan nama matakuliah bersifat default. Dosen tinggal menginputkan nama materi serta nama file. Jika semua data telah diinputkan, dosen bisa menekan tombol simpan untuk menyimpan data materi yang telah diuploadkan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 69
LECTURE HALL Universitas Sanata Dharma HOME
JADWAL MENGAJAR DOSEN
LOGOUT
Edit Materi Matakuliah Nama matakuliah : Nama materi
:
Nama file lama
:
Nama file baru
:
Browse Update
Batal
Footer
Gambar 4.15 Perancangan tampilan edit materi matakuliah Rancangan antarmuka diatas disediakan untuk dosen yang akan melakukan edit materi matakuliah. Dosen menginputkan nama file materi baru. Setelah semua data yang baru telah diinputkan, dosen menekan tombol update untuk mengupdate data tersebut.
Perancangan tampilan warning 1. Proses Login X Password atau NIM / NPP salah OK
Gambar 4.16 Perancangan tampilan warning jika password ataupun NIM/NPP salah
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 70
X Anda belum memasukkan NIM..!!!!
OK
Gambar 4.17 Tampilan warning jika user belum menginputkan NIM Tampilan diatas akan muncul jika mahasiswa ataupun dosen belum memasukkan password.
X Anda belum memasukkan Password..!!!! OK
Gambar 4.18 Tampilan warning jika user belum menginputkan password Tampilan diatas akan muncul jika mahasiswa ataupun dosen belum memasukkan password.
2. Proses tampil materi download X Belum Ada Materi OK
Gambar 4.19 Tampilan warning jika belum ada materi yang diupload dosen
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 71
Jika matakuliah yang dipilih sudah ada materi yang diupload dosen, maka materi matakuliah tersebut akan tampil. Tetapi jika dosen belum mengupload materi matakuliah yang bersangkutan maka akan tampil warning yang menyatakan belum ada materi yang diupload dosen.
X
File Download
File Name …………. File type………………. From…………………..
Would you like to open the file or save it to your computer ??
Open
Save
Cancel
More Info
Gambar 4.20 Tampilan file download materi matakuliah
Form file download ini akan tampil, jika mahasiswa ingin melakukan proses download materi matakuliah. Mahasiswa bisa membuka file ataupun langsung menyimpannya dalam drive tertentu.
X
File Download
Download complete Saved file ………….. Open
Open folder
Close
Gambar 4.21 Tampilan sukses melakukan download Jika proses download selesai maka akan tampal download complete. Selanjutnya tekan tombol close untuk mengakhiri proses download.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 72
3. Proses tambah materi download
X Penginputan Berhasil OK
Gambar 4.22 Tampilan pesan data telah berhasil diinputkan
Proses tambah materi disini berarti dosen melakukan upload file materi. Tidak ada batasan berapa banyaknya dilakukan proses upload. Upload file dilakukan satu per satu tiap file. File ini nantinya yang akan di download oleh mahasiswa. X
X Belum mengisi nama file
Belum memasukkan nama materi
OK
OK
Gambar 4.23 Tampilan warning jika salah satu dari nama file atau nama materi belum diinputkan
Warning akan menampilkan pesan seperti yang diatas, jika salah satu field baik itu nama file ataupun nama materi belum diinputkan. Hal ini dikarenakan untuk menghindari adanya data kosong waktu melakukan upload materi matakuliah.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 73
X File data sama, apakah anda akan mengulanginya ?????? Ya
Tidak
Gambar 4.24 Tampilan warning jika materi yang diinputkan memuat informasi yang sama Warning diatas dimaksudkan jika waktu melakukan proses download, data yang diinputkan sama persis dengan data sebelumnya. Sehingga ada konfirmasi ya atau tidak. Jika ya berati akan mengulangi penyimpanan, tetapi data yang ditampilkan tetap 1 saja. Sedangkan kalau tidak berati akan dilakukan penginputan ulang.
4. Proses edit materi download X Data sukses di Update OK
Gambar 4.25 tampilan pesan proses update berhasil Pesan hasil update diatas, menunjukkan bahwa proses update yang dilakukan dosen berhasil. Sehingga ketika kita menekan tombol OK, secara otomatis akan menampilkan data materi baru setelah di update.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 74
5. Proses hapus materi download X Apakah sudah yakin akan dihapus??
OK
CANCEL
Gambar 4.26 tampilan warning jika data akan dihapus Tampilan diatas bermaksud menanyakan kepada user dalam hal ini dosen, apakah benar akan menghapus data materi ini ??? Menekan tombol ya, secara otomatis data yang dituju akan terhapus. Sebaliknya jika menekan tombol tidak, berarti data masih tersimpan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 75
BAB V IMPLEMENTASI
Implementasi merupakan tahap pengkodean dari hasil perancangan sistem. Pada bab sebelumnya telah dijelaskan mengenai perancangan yang digunakan di dalam pembuatan program pembuatan Lecture Hall Prodi Ilmu Komputer USD, dan bab ini akan dijelaskan mengenai implementasi beserta hasil analisanya.
Y. Lingkungan Aplikasi Program ini dibuat dengan menggunakan, Database MySQL 4.1.14, Web Server Apache XAMPP for windows 2.0.54 (Win32) dan Macromedia Dreamweaver MX 2004 serta Database Tools PHPMyAdmin2.6.4 Di samping bahasa pemrograman PHP, juga digunakan JavaScript dan Cascading Style Sheet (CSS). JavaScript digunakan untuk mengecek input dalam form apakah sesuai dengan format yang telah ditetapkan, dan untuk manampilkan calendar. Sedangkan
CSS digunakan untuk memudahkan dalam mendesain
antarmuka dan menghemat spacedisk.
B.
Implementasi Program 1. Program Database Dalam pembuatan lecture hall Program Studi Ilmu Komputer Universitas Sanata Dharma ini, langkah pertama yang dilakukan adalah menghubungkan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 76
database yang telah dibuat dengan sistem. Untuk menghubungkan database tersebut ke sistem dengan membuat skrip yang berisi variabel umum, variabel tersebut akan digunakan untuk menghubungkan ke database MySQL. perintahnya sebagai berikut
a. Database Program studi (koneksi.php)
= = = = = =
$koneksi = mysql_connect($hostname, $username, $password) or die ("Koneksi gagal coy.....");
//Fungsi untuk permintaan ke database 3124 (db_3124)// function bukaQuery1($query) { global $koneksi, $dbname1; $result = mysql_db_query($dbname1,$query,$koneksi) or die ("Gagal melakukan query pada : $query
Kode Salah : ".mysql_error()."!"); return $result; } //Fungsi permintaan ke database personalia (db_personalia)// function bukaQuery2($query) { global $koneksi, $dbname2; $result = mysql_db_query($dbname2,$query,$koneksi) or die ("Gagal melakukan query pada : $query
Kode Salah : ".mysql_error()."!"); return $result; } //Fungsi permintaan ke database program studi (db_prg_std)// function bukaQuery3($query) { global $koneksi, $dbname3; $result = mysql_db_query($dbname3,$query,$koneksi) or die ("Gagal melakukan query pada : $query
Kode Salah : ".mysql_error()."!"); return $result;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 77
} ?>
Fungsi mysql_connect() di atas digunakan untuk melakukan koneksi ke server database MySQL yang ada di hostname dengan memakai username dan password. Sedang fungsi mysql_db_query() digunakan untuk melakukan query terhadap suatu database.
2. Program Login (login_cek.php) dan logout (logout.php) Program Login disini dibedakan antara login untuk dosen dan login untuk mahasiswa. Program awal akan menyediakan form login untuk memastikan pemakai (user) adalah orang yang mempunyai hak akses yang sah. Halaman login mahasiswa ini dikhususkan untuk mahasiswa Universitas Sanata Dharma yang memiliki NIM dan password. Sedangkan halaman login dosen ini dikhususkan untuk dosen yang masih aktif mengajar, yang mempunyai NPP dan password. Jika kedua user ini telah melakukan login dengan benar, maka masing-masing user bisa mengakses menu masing-masing. Script program untuk fungsi ini sebagai berikut : include_once "inc/koneksi.php"; if ($login == 'dosen') { #Login untuk dosen if (empty($user)) { //Tampilan warning echo "<script>alert(\"Anda belum memasukkan NPP !!!\"); history.go(-1)"; include "index.php"; } else if (empty($pass)) { echo "<script>alert(\"Anda belum Memasukan password!!!\"); history.go(-1)"; include "index.php"; } else {
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 78
// perintah mysql untuk menampilkan NPP $sql="select * from idpegawai WHERE NPP='$user' AND password='$pass'"; $hasil = bukaQuery2($sql); $ada=mysql_num_rows($hasil); if($ada>=1) { $NPP=$user; session_register('NPP'); header ("location: index.php"); # file index exit; } else { echo "<script>alert(\"Password atau NIM/NPP salah\"); history.go(-1)"; include "index.php"; } }
Sebaliknya jika login masing-masing user berhasil, maka user bisa keluar dari sistem dengan mengakses proses logout. Kode program file logout.php sebagai berikut : // ************************************************* // File logout.php // File untuk keperluan Logout (Keluar dari sistem) //************************************************** session_start (); session_unregister(nomor); session_unregister(passmhs); session_unregister(mahasiswa); session_unregister(npp); session_unregister(passdosen); session_unregister(dosen); session_destroy(); header ("location: index.php"); ?>
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 79
3. Program tampil jadwal perkuliahan (jadwal1.php) Program tampil jadwal matakuliah ini untuk menampilkan jadwal matakuliah yang terbagi untuk tiap-tiap semester yaitu semester ganjil (kode = 1), semeter genap (kode =2) dan semester sisip (kode=3). Ada juga proses pencarian (searching) berdasar nama matakuliah dan nama dosen. // perintah utuk mengirimkan variabel semester ke url
{ $warna1=" style='color:red'"; $warna2=" style='color:red'"; $warna3=" style='color:red'";
?> ----------------------------------------------------// proses searching dengan input berdasar 2 kategori yaitu nama dosn dan anam matakuliah. <select name="kategori" class="input"> if ($kategori == 'nama_dosen') $sel = "selected"; echo ""; echo ""; ?> -----------------------------------------------------//Mengirimkan tiap semester
$kategori = $kategori; $kriteria = $kriteria; // jika pencarian dilakukan berdasar nama matakuliah if ($kategori == 'nama_mtk') { $sqljw ="SELECT j.kd_mtk, m.nama_mtk, j.NPP, j.seksi ". "FROM $merge_table j, mtk3124 m ". "WHERE j.kd_mtk=m.kd_mtk AND m.nama_mtk LIKE '%$kriteria%' "; // jika pencarian dilakukan berdasar nama dosen } elseif ($kategori == 'nama_dosen') { $npp = ambilNPP($kriteria); $sqljw ="SELECT j.kd_mtk, m.nama_mtk, j.NPP, j.seksi ". "FROM $merge_table j, mtk3124 m ". "WHERE j.kd_mtk=m.kd_mtk AND j.npp IN (".$npp.")"; // jika tidak melakukan proses pencarian akan tampil sesuai semester yang diinputkan. } else { $sqljw ="SELECT j.kd_mtk, m.nama_mtk, j.NPP, j.seksi ". "FROM $merge_table j, mtk3124 m ". "WHERE j.kd_mtk=m.kd_mtk"; } //-----------------------------------------------------//query untuk menampilkan pesan hasil pencarian tidak ditemukan. $queryjw = bukaQuery1($sqljw); if (mysql_num_rows($queryjw)==0) { echo '
<marquee behavior="alternate">Data tidak ditemukan....
'; // page (halaman) per 20 baris } else { $no=noBaris(); $arr = pagerIsi($sqljw,20); foreach ($arr as $row) { if ($row[0] != '') { // tampilkan dalam bentuk array $no++; $KD_MTK=$row[0]; $NAMA_MTK=$row[1]; $NPP=$row[2]; $NAMA_DOSEN = ambilNamaDosen($NPP); $SEKSI=$row[3];
<marquee behavior="alternate">Semester Belum Dipilih....
'; } ?>
4. Program tampil jadwal mengajar dosen (jadwal_mengajar.php) Program tampil jadwal mengajar dosen ini digunakan untuk menampilkan data matakuliah yang dibimbing dosen selema tahun ajaran. Hanya saja listing program masih manual untuk satu per satu semester. Sebenarnya bisa memanfaatkan variable dan string untuk membuat listing program lebih sederhana.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 82
// File koneksi include_once "inc/koneksi.php"; session_start(); // perintah sql untuk menampilkan NPP, dan nama dosen $sql = "SELECT NPP, Nama_peg FROM pegawai WHERE NPP='".$_SESSION['NPP']."'"; $query = bukaQuery2($sql); list ($npp,$nama) = mysql_fetch_row($query); ?> //==================================================== ". "
$no
". "
$KD_MTK
". "
". // link ke file tampil materi.php, dan tampilkan "$NAMA_MTK
". "
$HARI1
". "
$JAM1
". "
$RUANG1
"; }
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 83
?>
5. Program Tampil
materi yang sudah diupload oleh dosen
(tampil_materi.php) Form tampil materi upload ini akan menjalankan 2 action yaitu hapus file dan edit file.
<marquee behavior='alternate'>Materi belum di Upload.......
". // link ke file edit materi.php, untuk melakukan proses edit materi "". "
". "
". "
"; } } ?>
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 84
6. Program simpan data yang telah di update (simpan_editmateri.php) Data materi yang akan telah dikenai proses update, otomatis datanya akan disimpan, dengan format penyimpanan upload mk/ NPP (dosen), kode matakuliah, nama file yang baru di update. alert(' Data Sukses di Update');history.go(-2);"; } else { $nama_materi = strtoupper($nama_materi); $kd_mtk = "$kd_mtk"; // format lokasi penyimpanan file $location = "upload_mk/" .$_SESSION['NPP'].'_'.$kd_mtk.'_'.$_FILES['nama_fil ebaru']['name']; $Update = "UPDATE materi SET nama_materi = '$nama_materi', nama_file = '$location' WHERE nama_file = '$kode'"; // Browse file baru copy($HTTP_POST_FILES['nama_filebaru']['tmp_name'], $location); unlink($kode); $hasil_update = bukaQuery1($Update, $koneksi) or die (mysql_error()); print"<script>alert(' Data Sukses di Update');history.go(-2);"; } } else { bukaQuery1("DELETE FROM materi WHERE nama_file='$kode'"); unlink($kode); print"<script>alert(' Data Sukses di Delete');history.go(-2);"; } ?>
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 85
C.
Implementasi Antar Muka (Interface) Implementasi antarmuka (interface) pada pembuatan Lecture Hall ini
diperuntukkan bagi dosen dan mahasiswa. Berikut tampilan antarmuka program : a. Halaman menu utama login
Gambar 5.1 Tampilan antarmuka form Login utama user
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 86
Implementasi Antar Muka (Interface) untuk mahasiswa
b. Halaman validasi login mahasiswa
Gambar 5.2 tampilan antarmuka validasi mahasiswa
c. Halaman tampil jadwal matakuliah
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 87
Gambar 5.3 tampilan antarmuka default form jadwal matakuliah d. Halaman tampil jadwal matakuliah
Gambar 5.4 tampilan antarmuka jadwal matakuliah
Mahasiswa bisa menginputkan semester yang dipilih, kemudian akan ditampilkan daftar matakuliah sesuai semester yang dipilih. Dalam hal ini untuk satu matakuliah bisa terdiri dari beberapa kelas. Selain itu fasilitas pencarian (searching) bisa digunakan mahasiswa untuk mencari file materi yang dicari berdasarkan nama matakuliah ataupun nama dosen.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 88
5. Halaman tampil jadwal matakuliah berdasar hasil searching.
Gambar 5.5 tampilan antarmuka form tampil daftar matakuliah hasil searching berdasar nama dosen
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 89
Gambar 5.6 tampilan antarmuka form tampil daftar matakuliah hasil searching berdasar nama matakuliah
6. Halaman daftar materi matakuliah yang bisa di download
Gambar 5.7 tampilan antarmuka form daftar materi download 7. Tampilan file download
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 90
Gambar 5.8 tampilan file download Implementasi Antar Muka (Interface) untuk dosen
8. Tampilan validasi user (dosen)
Gambar 5.9 tampilan antarmuka form validasi dosen
9. Halaman tampil jadwal mengajar dosen
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 91
Gambar 5.10 tampilan antarmuka form jadwal mengajar dosen 10. Halaman tampil materi yang sudah di upload dosen
Gambar 5.11 tampilan antarmuka form file materi upload
11. Halaman tambah materi matakuliah
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 92
Gambar 5.12 tampilan antarmuka form tambah materi matakuliah 12. Halaman Edit simpan materi matakuliah
Gambar 5.13 tampilan antarmuka form edit materi matakuliah
13. Tampilan Warning jika user salah menginputkan NIM /NPP
Gambar 5.14 tampilan warning input NIM / NPP salah
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 93
14. Tampilan Warning jika user belum mengisikan (NIM / NPP)
Gambar 5.15 tampilan warning NIM belum diinputkan
15. Tampilan warning jika user belum memasukkan password saat login
Gambar 5.16 tampilan warning password belum diinputkan
16. Tampilan warning belum ada materi yang diupload oleh dosen.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 94
Gambar 5.17 tampilan warning belum ada materi 17. Tampilan jika input data proses upload materi sukses
Gambar 5.18 tampilan penginputan data berhasil
18. Tampilan warning belum mengisi nama file saat upload materi
Gambar 5.19 tampilan warning nama file belum diinputkan
19. Tampilan warning belum mengisi nama materi saat upload materi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 95
Gambar 5.20 tampilan warning nama materi belum diinputkan 20. Tampilan warning jika nama file yang diinputkan sama.
Gambar 5.21 tampilan warning data yang diinputkan sama Jika nama file yang diinputkan saat dosen melakukan proses edit materi upload sama, maka system akan menanyakan apakah akan dalakukan penyimpanan ulang ??? jika ya, berate data yang tersimpan sama persis sama file sebelumnya, tetapi jika tidak maka akan kembali ke form edit materi matakuliah, dan menginputkan nama file baru.
21. Tampilan update data sukses.
Gambar 5.22 tampilan proses update berhasil
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 96
22. Tampilan proses hapus materi download
Gambar 5.23 tampilan data akan di hapus
23. Tampilan data penulis
Gambar 5.23 tampilan data penulis
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 97
BAB VI PENUTUP
6.1 Kesimpulan Pembuatan Lecture Hall Program Studi Ilmu Komputer Universitas Sanata Dharma berbasis web ini dapat disimpulkan bahwa : Pembuatan Lecture Hall ini merupakan salah satu cara yang efisien untuk memudahkan mahasiswa mendapatkan materi yang mereka butuhkan, serta dosen dalam menempatkan modul materi perkuliahan. Di mana dengan sistem ini mahasiswa diberikan kemudahan akses, kecepatan akses. Hal lain yang dapat penulis simpulkan adalah dari sisi kelebihan dan kekurangan program, diantaranya : Kelebihan Program : 1. Program
ini
sederhana
sehingga
memberi
kemudahan
untuk
menggunkannya. 2. Proses searching yang dilakukan dapat membantu mahasiswa untuk mencari matakuliah yang dibutuhkan. Kekurangan Program : Dalam pembuatan Lecture Hall ini hanya diimplementasikan pada satu program studi Ilmu Komputer. Dosen yang merupakan salah satu pengguna sistem, hanya dapat melakukan upload satu per satu file
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 98
6.2 Saran Adapun saran yang penulis sampaikan setelah pengerjaan skripsi ini adalah : 1. Pembuatan Lecture Hall ini akan lebih lengkap, jika website ini dilengkapi dengan informasi lain selain materi matakuliah saja. 2. Belum tersedianya fasilitas untuk mengubah password secara langsung oleh mahasiswa. 3. Pengembangan menu dan antarmuka dengan menggunakan Flash akan menjadikan web lebih atraktif dan komunikatif.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI 99
DAFTAR PUSTAKA
Madcoms, (2004, Januari).
Macromedia Dreamweaver MX 2004,
Madiun :
Penerbit Andi
Nugroho, Bunafit, (2004). Aplikasi pemrograman web dinamis dengan PHP dan MySQL, Penerbit Gava Media
Nugroho, Bunafit, (2004).
PHP dan MySQL dengan editor Macromedia
Dreamweaver MX, Yogyakarta : Andi Offset
Onno,W., Purbo, (2002).
Teknologi e-Learning berbasis PHP dan MySQL,
Jakarta : Elex Media komputindo
Sutarman, (2003). Membangun Aplikasi Web dengan PHP dan MySQL, Yogyakarta : Graha Ilmu
Sidik, Betha. (2004). Pemrograman WEB dengan PHP. Bandung : Informatika Bandung
Sakur, B., Stendy, (2005). Aplikasi web database dengan Dreamweaver MX2004, Yogyakarta : Andi Offset
Wahyono, Teguh., (2005). PHP Triad Fundamental (Memahami Pemrograman Web dengan PHP dan MySQL dalam 24 jam), Penerbit Gava Media
$koneksi = mysql_connect($hostname, $username, $password) or die ("Koneksi gagal coy....."); function bukaQuery1($query) { global $koneksi, $dbname1; $result = mysql_db_query($dbname1,$query,$koneksi) or die ("Gagal melakukan query pada : $query
Kode Salah : ".mysql_error()."!"); return $result; } function bukaQuery2($query) { global $koneksi, $dbname2; $result = mysql_db_query($dbname2,$query,$koneksi) or die ("Gagal melakukan query pada : $query
Kode Salah : ".mysql_error()."!"); return $result; } function bukaQuery3($query) { global $koneksi, $dbname3; $result = mysql_db_query($dbname3,$query,$koneksi) or die ("Gagal melakukan query pada : $query
Kode Salah : ".mysql_error()."!"); return $result; } function ambilNamaDosen($npp) { $sqlpeg ="SELECT Nama_peg FROM pegawai WHERE NPP='$npp'"; $querypeg = bukaQuery2($sqlpeg); list ($nama)=mysql_fetch_row($querypeg); if ($nama!='') return $nama; else return "-"; } function ambilNPP($nama) { $sqlpeg ="SELECT NPP FROM pegawai WHERE nama_peg LIKE '%$nama%'"; $querypeg = bukaQuery2($sqlpeg);
File login1.php <meta http-equiv="Content-Type" content="text/html; charset=iso8859-1"> index <style type="text/css">
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
File menu_materi1.php include_once "inc/sessiondosen.inc.php"; include_once "inc/koneksi_personalia.inc.php"; include_once "inc/koneksi_db3124.inc.php"; ?> index.php <meta http-equiv="Content-Type" content="text/html; charset=iso8859-1"> Untitled Document <style type="text/css"> <script language="JavaScript" type="text/JavaScript"> 0&&parent.frames.length) { d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);} if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3) if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];} } //-->
$sql = "select materi.*, mtk3124.*, pegawai.* from materi,mtk3124,pegawai where pegawai.NPP = materi.NPP and materi.kd_mtk ='$kd_mtk' and pegawai.NPP='$NPP'"; $query=mysql_query($sql); ?>