Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
APLIKASI XML UNTUK PENYEDIAAN INFORMASI OBAT GENERIK
BERBASIS WEB
S k r i p s i
Diajukan untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Teknik
Jurusan Teknik Informatika
Disusun Oleh :
Irene Inge Primawaty
NIM : 005314049
JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2007
THE XML APPLICATION FOR THE PROVISIONS OF GENERIC
MEDICINE INFORMATION BASED ON WEB
S k r i p s i
Diajukan untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Teknik
Jurusan Teknik Informatika
Disusun Oleh :
Irene Inge Primawaty
NIM : 005314049
JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNIK
UNIVERSITAS SANATA DHARMA YOGYAKARTA
2007
PERSEMBAHAN
My FATHER “Tuhan Yesus Kristus” cahayaMu tak henti-hentinya
menerangi hati dan pikiran qoe hingga berhasil menyelasaikan tugas ini.
Sang Mahadewi “Bunda Maria” atas rahmat, doa, dan
kesabaranMu menjawab setiap permohonan.
Teruntuk Papa tercinta dan Mama tersayang yang selalu memberikan cinta, kasih sayang
dan doa terbaiknya. Terima kasih.
Boeat adekku Andrew yang selalu menyayangiku.
Kekasih Hati ‘Michael T.S, S.Farm., Apt.’ cinta-moe anugerah terindah Luv u koey…
Oma dan eyang di surga, makasih doanya, cy cinta kalian.
MOTTO
Janji‐NYA
Kekuatan bagi yang mencari‐Nya,
Kelegaan bagi yang berjuang keras,
Cahaya terang di perjalanan hidup,
Pertolongan bagi yang membutuhkan.
Kebahagiaan biasanya merupakan hasil dari sebuah pengorbanan
Kejujuran adalah batu penjuru dari segala kesuksesan,
Pengakuan adalah motivasi terkuat.
Bahkan kritik dapat membangun rasa percaya diri saat
"disisipkan" diantara pujian.
Ketika seseorang mencapai inti kehidupan maka ia akan menemukan keindahan dalam semua hal bahkan dimata yang tidak melihat keindahan itu
KATA PENGANTAR
Puji dan syukur kepada Tuhan Yang Maha Esa atas segala rahmat dan
kasihnya, sehingga penulis dapat menyelesaikan tugas akhir ini dengan baik.
Tugas akhir ini merupakan salah satu syarat untuk memperoleh gelar Sarjana
Teknik pada jurusan Teknik Informatika Fakultas Teknik Universitas Sanata
Dharma.
Dalam kesempatan ini, penulis mengucapkan terima kasih kepada pihak yang
telah membantu sehingga penulis dapat menyelesaikan tugas akhir ini. Dengan
penuh rasa hormat, penulis mengucapkan terima kasih kepada :
1. Ibu A.M. Polina, S.Kom, M.Sc. selaku ketua jurusan Teknik Informatika
Universitas Sanata Dharma Yogyakarta yang telah memberikan
kesempatan dan fasilitas untuk menyelesaikan studi pada Jurusan Teknik
Informatika. Dan selaku dosen pembimbing I yang memberikan
bimbingan, perhatian, motivasi, nasehat, serta kemudahan dalam
mengerjakan tugas akhir ini.
2. Bapak Budi Susanto, S.Kom, M.T. selaku dosen pembimbing II yang
memberikan bimbingan, perhatian, dorongan, motivasi, nasehat, serta
kemudahan dalam mengerjakan tugas akhir ini.
3. Staff Laboratorium (Pak Bele dan Mas Danang), terima kasih atas semua
bantuannya dan udah mau direpotin.
4. Segenap dosen Teknik Informatika dan staff sekretariat Teknik Universitas
Sanata Dharma, terima kasih atas pengajarannya dan bantuannya.
5. Papa, mama, dan ‘aba’ andrew yang senantiasa setia mendoakan dan
mendukung. Cinta dan kasih kalian anugerah terbesar dalam hidupkoe.
6. Michael ‘KoekoeY’ makasih untuk cinta dan kesetiaanmu, juga dah mau
sabar menunggu kelulusanku. Doa, nasehat, dan kesabaranmu
menguatkanku. Engkau pemberian terindahNYA untukku. Luv u…
7. Voy bin Dewi makasih untuk semuanya, perhatian, kasih sayang,
dukungan, doa dan nasehatnya. Yang ga’ pernah bosan dengerin
curhatanku. Dirimu adalah sahabat dan sodara terbaikku. G B U.
8. Bapak, ibu, maz bayoe, dan maz wied, makasih udah jadi orangtua dan
sodaraku selama di yogya. Makasih untuk kasih sayangnya.
9. De’wira yang dah nemenin kak kemana-nama, jadi tempat curhat yang
baik. Juga de’iib, tina, geo, iyan, amoy, untuk kebersamaannya sewaktu
gempa, seru abiiis!
10. Cah-cah ( Zod, Max, Usroxx, Genthonk, Pakde, Tengkleng, Agung )
Kalian mewarnai hari-hariku di yogya. Kangen banget dengan kalian
semua. Nanda dan evy sukses terus untuk kalian !
11. ‘ade’Lia, maz babe, bunda, maz crist makasih dan jadi keluargaku di koz.
Makasih dah ngerawat sewaktu aq sakit. Juga untuk bantuan dan
dukungan. Makasih…
12. Zita, ndari, cristin terimakasih atas semangat dan dukungannya. Inget ya
kita pernah berjuang bersama. Dicky yang dah mau antar dan nungguin di
kampus.
13. Kak non_jecky, kak inta, mivie, heny, vina, siska, merry makasih
kebersamaan, doa dan dukungannya.
14. ‘abang’, mami, puput, ticun, a’I makasih doanya, tunggu ya ochy pulang..
15. Semua teman – teman angkatan ’00 yang masih tersisa, tetep berjuang
ya… kalian pasti bisa !
Penulis menyadari bahwa tugas akhir ini masih banyak kekurangannya dan
masih memerlukan banyak perbaikan. Oleh sebab itu, penulis menerima kritik dan
saran yang bersifat membangun untuk lebih sempurnanya tugas akhir ini. Atas
kritik dan saran yang diberikan, penulis mengucapkan terima kasih. Harapan
penulis, semoga tugas akhir ini dapat bermanfaat bagi semua pihak.
Yogyakarta, April 2007
Penulis
SURAT PERNYATAAN BUKTI KEASLIAN SKRIPSI
Dengan ini saya menyatakan bahwa skripsi ini adalah asli hasil karya saya
dan tidak mengutip skripsi orang lain.
Demikian surat pernyataan ini saya buat dengan sebenar – benarnya.
Yogyakarta, April 2007
Irene Inge Primawaty
ABSTRAKSI
Pada era globalisasi saat ini, kemudahan untuk mendapatkan informasi
menjadi prioritas utama bagi semua orang. Internet merupakan salah satu sumber
informasi yang sudah populer di kalangan masyarakat luas dan dapat memberikan
informasi yang up to date. Di lain pihak, kesehatan merupakan faktor penting
dalam kehidupan. Apabila kesehatan terganggu dengan adanya suatu penyakit
maka diperlukan obat untuk menyembuhkannya. Informasi obat merupakan hal
penting bagi pihak-pihak yang berwewenang memberikan dan membuat obat,
dalam hal ini pihak kesehatan maupun farmasi. Dengan adanya web yang
memberikan informasi obat ini diharapkan dapat membantu bagi pihak farmasi
dan kesehatan
Penyediaan informasi obat generik berbasis web ini diimplementasikan
menggunakan format XML (Extensible MarkUp Language) untuk
mendeskripsikan data. Sedangkan untuk merepresentasikan datanya digunakan
CSS (Cascading Style Sheets). Database yang digunakan adalah MySQL. XML
akan diolah dalam PHP berdasarkan data yang diambil dari MySQL sehingga
dihasilkan dokumen XML. Pendeskripsian datanya cukup sekali saja, tetapi dapat
digunakan untuk bermacam model presentasi data.
Hasil akhir yang diperoleh adalah sebuah sistem yang dapat melakukan
proses pencarian data berdasarkan beberapa kategori kata. Dapat menampilkan
data dalam format XML dengan tampilan data CSS dengan beberapa pilihan
template. Informasi yang diberikan mengenai obat generik yang dilengkapi
dengan indikasi, kontraindikasi, efeksamping, bentuksediaan, dan dosis.
ABSTRACT
In the globalisation at this time, the ease to get information to the main priority for everyone. The internet was one of the sources of information that has been popular in the social circle of the area and could give information that up to date. On the other hand, the health was the important factor in the life. If the health was disrupted with the existence of an illness then was needed medicine to cure him. Medicine information was the important matter for sides that have right gave and made medicine, in this case the health side and the pharmacy. With the existence web that gave this medicine information it was hoped could help for the pharmacy side and the health. The provisions of generic medicine information based web this implementation used the XML format (Extensible MarkUp Language) to describe the data. Whereas to representation his data was used by CSS (Cascading Style Sheets). Database that was used was MySQL. XML will be processed in PHP was based on the data that was taken from MySQL so as to be produced the document XML. his data Describing was enough just once, but could be used for various presentation models of the data. Results of the end that was received was a system that could do the process of the search for the data be based on some the category said. Could put forward the data in the XML format with browser the CSS data with several choices template. Information that was given about generic medicine that was supplemented with the indication, the contraindication, the side-effect, the package, and the dose.
DAFTAR ISI
HALAMAN JUDUL ........................................................................................... i
HALAMAN JUDUL INGGRIS ......................................................................... ii
HALAMAN PERSETUJUAN ............................................................................ iii
HALAMAN PENGESAHAN ............................................................................. iv
HALAMAN PERSEMBAHAN ......................................................................... v
HALAMAN MOTTO ......................................................................................... vi
KATA PENGANTAR ......................................................................................... vii
SURAT PERNYATAAN BUKTI KEASLIAN SKRIPSI ............................... x
ABSTRAKSI........................................................................................................ xi
ABSTRACT ……………………………………………………………... xii
DAFTAR ISI...................................................................................................... xiii
DAFTAR GAMBAR .......................................................................................... xix
DAFTAR TABEL ............................................................................................. xxii
...............................................................................................
BAB I PENDAHULUAN
1.1 Latar Belakang ....................................................................................... 1
1.2 Rumusan Masalah .................................................................................. 2
1.3 Batasan Masalah .................................................................................... 2
1.4 Tujuan Penulisan.................................................................................... 3
1.5 Metodologi Penelitian ............................................................................ 4
1.6 Sistematika Penulisan ............................................................................ 5
BAB II LANDASAN TEORI
2.1 Internet ................................................................................................... 6
2.1.1 WWW (World Web Wide) ............................................................ 6
2.1.2 HTTP (Hyper Text Transfer Protocol) ......................................... 7
2.2 XML (eXtensible Markup Language).................................................... 7
2.2.1 Struktur Dasar XML ..................................................................... 8
2.2.2 Sintaks XML ................................................................................. 9
2.2.3 Keuntungan XML ......................................................................... 13
2.3 CSS (Cascading Style Sheet) ................................................................. 14
2.3.1 Perintah CSS ................................................................................. 14
.......................................................................................................
2.3.2 CSS pada XML ............................................................................. 15
2.4 PHP (Personal Home Page tools).......................................................... 17
2.4.1 Mengenal Variabel ........................................................................ 17
2.4.2 Tipe Data....................................................................................... 17
2.4.3 Escape Character.......................................................................... 18
2.4.4 Operator ........................................................................................ 18
2.4.5 Struktur Kendali ............................................................................ 19
2.4.5.1 If ... else ............................................................................ 19
2.4.5.2 Switch................................................................................ 20
2.4.5.3 Statement perulangan........................................................ 20
2.4.5.3.1 While .................................................................. 20
2.4.5.3.2 do..while............................................................. 21
2.4.5.3.3 For ...................................................................... 21
2.4.5.3.4 Foreach............................................................... 21
2.4.5.4 Fungsi................................................................................ 22
2.4.6 Koneksi PHP dengan Database..................................................... 22
2.4.6.1 Koneksi ke Database ......................................................... 22
2.4.6.2 Query ke Database ............................................................ 23
...........................................................................................
2.4.6.2.1 Mengirimkan Query ke Server........................... 23
2.4.6.2.2 Menampilkan Isi Tabel ...................................... 23
2.4.6.2.3 Menambah Record ............................................. 24
2.4.6.2.4 Menghapus Record ............................................ 24
2.4.6.2.5 Memodifikasi Record......................................... 25
2.5 MySQL................................................................................................... 25
2.5.1 Akses Database pada PHP ............................................................ 26
2.5.2 Query ke database ......................................................................... 26
2.6 Obat Generik .......................................................................................... 26
BAB III ANALISIS DAN PERANCANGAN SISTEM
3.1 Sistem Yang Dikembangkan.................................................................. 29
3.2 Perancangan Sistem ............................................................................... 29
3.2.1 Konsep Kerja Sistem..................................................................... 29
3.2.2 Pengguna Web .............................................................................. 30
3.2.3 DAD (Diagram Aliran Data)......................................................... 31
3.2.3.1 Konteks Diagram .............................................................. 31
3.2.3.2 Diagram Berjenjang .......................................................... 32
3.2.3.3 DAD Level 0 Dan Level 1 ................................................ 33
3.2.3.4 Diagram Gabungan ........................................................... 35
3.2.4 Kamus Data................................................................................... 36
3.3 Perancangan Database ........................................................................... 45
3.3.1 Conceptual Database Design........................................................ 45
3.3.2 Logical Database Design .............................................................. 45
3.3.3 Physical Database Design ............................................................ 47
3.4 Perancangan Struktur XML ................................................................... 50
3.4.1 Definsi Root, Child dan Subchild.................................................. 50
3.4.2 Struktur XML................................................................................ 51
3.5 Perancangan Antar Muka....................................................................... 54
3.5.1 Perancangan Antar Muka Untuk Administrator ........................... 54
3.5.1.1 Perancangan Login Administrator................................... 54
3.5.1.2 Perancangan Tampilan Menu Utama Administrator ....... 54
3.5.1.3 Perancangan Tampilan Menu Jenis Obat ........................ 55
3.5.1.4 Perancangan Menu Edit Data Jenis Obat ........................ 56
3.5.1.5 Perancangan Menu Tambah Jenis Obat........................... 57
3.5.1.6 Perancangan Menu SubJenis Obat .................................. 57
3.5.1.7 Perancangan Menu Edit Data SubJenis Obat .................. 58
3.5.1.8 Perancangan Menu Tambah SubJenis Obat .................... 59
3.5.1.9 Perancangan Menu Sub2Jenis Obat ................................ 59
3.5.1.10 Perancangan Menu Edit Data Sub2Jenis Obat ................ 60
3.5.1.11 Perancangan Menu Tambah Sub2Jenis Obat .................. 61
3.5.1.12 Perancangan Menu Obat.................................................. 61
3.5.1.13 Perancangan Menu Tambah Obat.................................... 62
3.5.1.14 Perancangan Menu Edit Obat .......................................... 63
3.5.1.15 Perancangan Menu Edit Indikasi Obat ............................ 63
3.5.2 Perancangan Antar Muka Untuk User .......................................... 64
3.5.2.1 Perancangan Tampilan Awal........................................... 64
3.5.2.2 Perancangan Tampilan Menu Pencarian ......................... 64
3.5.2.3 Perancangan Menu Template .......................................... 65
3.5.2.4 Perancangan Menu Daftar Isi .......................................... 65
3.6 Analisis Kebutuhan Sistem .................................................................... 66
3.6.1 Kebutuhan Perangkat Lunak (Software) ....................................... 66
3.6.2 Kebutuhan Perangkat Keras (Hardware)...................................... 66
BAB IV IMPLEMENTASI SISTEM
4.1 Admin Area............................................................................................ 68
4.1.1 Form Login Administrator........................................................... 68
4.1.2 Form Utama Administrator ......................................................... 70
4.1.3 Form Jenis Obat........................................................................... 71
4.1.4 Form Tambah Jenis Obat............................................................. 72
4.1.5 Form Edit Jenis Obat ................................................................... 73
4.1.6 Form SubJenis Obat..................................................................... 75
4.1.7 Form Tambah SubJenis Obat ...................................................... 76
4.1.8 Form Edit SubJenis Obat............................................................. 78
4.1.9 Form Sub2Jenis Obat................................................................... 79
4.1.10 Form Tambah Sub2Jenis Obat .................................................... 80
4.1.11 Form Edit Sub2Jenis Obat........................................................... 82
4.1.12 Form Obat.................................................................................... 83
4.1.13 Form Tambah Obat...................................................................... 84
4.1.14 Form Edit Obat ............................................................................ 86
4.1.15 Form Edit Indikasi Obat .............................................................. 86
4.1.16 Form Edit KontraIndikasi Obat ................................................... 88
4.1.17 Form Edit EfekSamping Obat ..................................................... 89
4.1.18 Form Edit BentukSediaan Obat ................................................... 90
4.2 Browser Area ......................................................................................... 91
4.2.1 Form Utama................................................................................. 91
4.2.2 Form Pencarian............................................................................ 92
4.2.3 Form Daftar Isi ............................................................................ 93
4.2.4 Form Template ........................................................................... 94
BAB V ANALISA HASIL IMPLEMENTASI
5.1 Kelebihan Program dan Kekurangan Program ...................................... 98
5.2 Analisa Manfaat ..................................................................................... 98
5.3 Analisa Teknologi .................................................................................. 99
BAB VI KESIMPULAN DAN SARAN
6.1 Kesimpulan .......................................................................................... 100
6.2 Saran-saran........................................................................................... 100
BAB I
PENDAHULUAN
1.1 Latar Belakang
Pada era perkembangan jaman seperti sekarang ini, mengakibatkan dunia
informasi semakin berkembang dengan cepat. Mendapatkan informasi
merupakan kebutuhan utama untuk setiap orang, maka diperlukan layanan
informasi yang jelas, benar dan dapat dipercaya. Informasi dapat disajikan
salah satunya adalah melalui teknologi internet yang merupakan salah satu
sumber informasi yang sudah populer di kalangan masyarakat luas dan dapat
memberikan informasi yang up to date. Untuk sekarang ini tidak sedikit
informasi berbasis web untuk sarana publikasi sehingga dapat sebagai
penelusuran yang lebih cepat dan efisien. User (pengguna) dapat mengakses
informasi dengan cepat dan dengan ketepatan data yang akurat.
Kecepatan merupakan suatu hal yang diperhitungkan dalam internet saat ini.
Kecepatan dan reabilitas pengiriman informasi dan layanan merupakan
pengembangan secara cepat dari solusi perangkat lunak pendukungnya.
Teknologi internet menawarkan fleksibilitas, mengurangi waktu
pengembangan dan meningkatkan efisiensi. XML(eXtensible Markup
Language) menyediakan jawaban untuk keperluan ini. XML menyediakan
format untuk mendeskripsikan data terstruktur. Sifat XML yang terbuka dan
extensible memungkinkan untuk merepresentasikan semua kegunaan format
yang berbeda dalam satu XML. Prinsip XML yang memisahkan data dengan
tampilannya dapat diterapkan untuk penyediaan informasi obat generik ini,
sehingga dengan sekali pendeskripsian data dalam XML dapat digunakan
untuk bermacam model presentasi data misalnya dengan CSS(Cascading Style
Sheet).
Pada kesempatan ini, penulis mengambil kasus mengenai obat Generik.
Dengan adanya aplikasi ini diharapkan dapat memberikan informasi mengenai
obat yang dilengkapi dengan keterangan indikasi, kontraindikasi, efek
samping, dosis, dan bentuk sediaan. Aplikasi ini disajikan dalam tampilan web
browser yang dikhususkan untuk pihak farmasi dan kesehatan. Dengan
memperhatikan hal-hal tersebut diatas, penulis tertarik untuk mengambil topik
“Aplikasi XML Untuk Penyediaan Informasi Obat Generik Berbasis Web”.
1.2 Rumusan Masalah
Dari yang telah dijelaskan di atas, permasalahan dalam penulisan tugas
akhir ini adalah “Bagaimana mengaplikasikan XML untuk penyediaan
informasi obat generik, sehingga dalam sekali pendeskripsian data dapat
digunakan untuk bermacam model presentasi data dalam hal ini menggunakan
CSS?”
1.3 Batasan Masalah
Batasan masalah dalam penulisan tugas akhir ini adalah sebagai berikut
:
1. Sistem yang dikembangkan dikhususkan pada kasus pemberian informasi
obat generik mengenai indikasi obat, kontraindikasi obat, efek samping
obat, dosis obat, dan bentuk sediaan obat.
2. Pemisahan antara data dan penampilannya, sehingga hanya dengan satu
kali mendefinisikan data dalam format dokumen XML dapat digunakan
untuk beberapa tampilan yang berbeda dari dokumen XML yang sama.
3. Perangkat lunak PHP akan menghasilkan dokumen XML pada sisi server,
dapat dipanggil di browser/client dalam tampilan format dokumen XML
dengan presentasi tampilan CSS pada web browser.
4. XML hanya untuk menampilkan semua data saja, tidak untuk proses
pencarian data.
5. User dapat melakukan pencarian informasi obat berdasarkan beberapa
kategori kata kunci, tetapi untuk kata kunci yang terdiri dari dua suku kata,
tidak bisa balik. Jika dibalik tidak bisa menghasilkan hasil pencarian.
1.4 Tujuan Penulisan
Tujuan dari penulisan tugas akhir ini adalah sebagai berikut:
1. Menerapkan aplikasi XML untuk penyediaan informasi obat generik, dalam
hal ini cukup dengan sekali pendeskripsian data dapat digunakan untuk
bermacam model presentasi data.
2. Membantu masyarakat khususnya pihak farmasi dan kesehatan untuk
mendapatkan informasi obat Generik mengenai keterangan indikasi, kontra
indikasi, efek samping, dosis, dan bentuk sediaan atas suatu obat generik
3. Sebagai salah satu syarat administratif, untuk memperoleh gelar kesarjanaan
S1 di Fakultas Teknik Jurusan Teknik Informatika Universitas Sanata
Dharma.
1.5 Metodologi Penelitian
Metodologi penelitian yang digunakan adalah laboratory research
(penelitian laboratorium) dengan metode pengembangan sistem perangkat lunak
secara terstruktur. Adapun langkah-langkah yang dilakukan adalah sebagai
berikut:
1. Studi kepustakaan
Pengumpulan data yang dilakukan dengan cara membaca referensi
berupa buku-buku, laporan-laporan, karya ilmiah, makalah di internet
yang berhubungan dengan permasalahan yang terkait.
2. Wawancara (interview).
Dilakukan dengan cara melakukan komunikasi langsung dalam bentuk
tanya jawab (interview) baik secara lisan maupun tertulis kepada pihak-
pihak yang membidangi permasalahan yang ada.
3. Perancangan sistem
Membuat rancangan desain program yang akan dibuat.
4. Implementasi sistem
Membuat program berdasarkan rancangan desain yang telah dibuat.
1.6 Sistematika Penulisan
Sistematika penulisan tugas akhir ini terbagi atas enam bagian sebagai
berikut :
BAB I PENDAHULUAN
Bab ini berisi latar belakang masalah, rumusan masalah, batasan
masalah, tujuan penulisan, metodologi penelitian dan sistematika
penulisan.
BAB II LANDASAN TEORI
Bab ini berisi landasan teori yang dipakai untuk pembahasan
penulisan tugas akhir.
BAB III ANALISA DAN PERANCANGAN SISTEM
Bab ini membahas mengenai analisa dan perancangan sistem
aplikasi yang akan dibuat.
BAB IV IMPLEMENTASI SISTEM
Bab ini berisi implementasi tiap tampilan atau antarmuka dari
rancangan yang dibuat pada bab sebelumnya dan menganalisa
program pada masing–masing tampilan atau antarmuka.
BAB V ANALISA HASIL IMPLEMENTASI
Bab ini berisi tentang analisa hasil dari aplikasi yang dibuat dan
berisi tentang kelebihan dan kekurangan program.
BAB VI KESIMPULAN DAN SARAN
Bab ini berisi kesimpulan yang menjawab tujuan skripsi dan berisi
saran yang berguna untuk pengembangan program.
BAB II
LANDASAN TEORI
Bab ini akan menjelaskan mengenai teori yang berhubungan dengan
masalah yang terkait dalam penyusunan tugas akhir ini, yaitu mencakup teori
internet, XML(eXtensible Markup Language), CSS(Cascading Style Sheet),
PHP(Personal Home Page tools), MySQL, dan informasi mengenai obat
generik.
2.1 Internet
Internet berasal dari kata Interconnection Networking adalah jaringan
komputer yang terdiri dari dua komputer atau lebih yang saling berhubungan dan
saling berinteraksi serta saling bertukar informasi. Untuk dapat saling
berhubungan dan berkomunikasi diperlukan protokol TCP/IP (Transmission
Control Protokol / Internet Protokol) agar setiap browser setiap jaringan dapat
mengakses layanan jaringan lain.
2.1.1 WWW
World Web Wide (WWW) adalah layanan yang paling sering digunakan
dan memiliki perkembangan yang sangat cepat karena dengan layanan ini kita
bisa menerima informasi dalam berbagai format (multimedia). Untuk mengakses
layanan WWW dari sebuah komputer (yang disebut WWW server atau web
server) digunakan program web client yang disebut web browser Jenis-jenis
browser yang sering digunakan adalah: Netscape Navigator/Comunicator, Internet
Explorer, NCSA Mosaic, Arena, Lynx, dan lain-lain.
2.2.2 HTTP
Protokol adalah suatu mekanisme yang sudah distandarkan untuk
mentransfer atau memanipulasi data. Seperti server dan browser WWW harus
mendukung protokol HTTP agar dapat digunakan. HTTP (Hyper Text Transfer
Protocol) adalah suatu protokol internet yang digunakan oleh WWW. Dengan
protokol ini suatu web client yaitu browser dapat melakukan pertukaran data
hypermedia seperti teks, gambar, suara, dan video dengan web server.
2.2 XML (eXtensible Markup Language)
XML (eXtensible Markup Language) adalah mark up language yang
menyediakan format untuk mendeskripsikan data terstruktur atau terurut. Fasilitas
yang disediakan XML ini membuat isi (content) sebuah data menjadi lebih mudah
dimengerti. XML dikembangkan mulai tahun 1996 dan mendapatkan pengakuan
dari W3C (World Wide Web Consurtium) pada bulan Februari 1998. Teknologi
yang digunakan pada XML sebenarnya bukan teknologi baru, tapi merupakan
turunan dari SGML (Standard Generalized Mark up Language) yang telah
dikembangkan pada awal 80-an dan telah banyak digunakan pada dokumentasi
teknis proyek-proyek berskala besar.
Seperti halnya HTML, XML juga menggunakan elemen yang ditandai
dengan tag pembuka (diawali dengan ‘<’ dan diakhiri dengan ‘>’), tag penutup
(diawali dengan ‘</ ‘diakhiri ‘>’) dan atribut elemen (parameter yang dinyatakan
dalam tag pembuka). Hanya bedanya, HTML medefinisikan dari awal tag dan
atribut yang dipakai didalamnya, sedangkan pada XML user bisa menggunakan
tag dan atribut sesuai kehendak user.
Tag – tag dalam XML case sensitive, sehingga tag <Buku> berbeda
dengan tag <buku>. Jika dalam penulisan program di dalam XML sama dengan
beberapa tanda yang dipakai di XML, maka penulisan program akan
memanfaatkan entity reference untuk mengkodekan beberapa karakter. Beberapa
entity reference akan ditunjukkan pada Tabel 2.1.
Entity Reference Karakter
> >
< <
& &
" “
' ‘
Tabel 2.1 Entity Reference
XLM parser adalah sebuah program untuk menguji apakah sebuah
dokumen XML benar atau tidak, sesuai dengan aturan XML atau tidak.
2.2.1 Struktur Dasar XML
Sebuah struktur atau dokumen XML terdiri dari bagian yang disebut
dengan node. Node-node itu adalah:
1. Root node yaitu node yang melingkupi keseluruhan dokumen. Dalam satu
dokumen XML hanya ada satu root node. Node-node yang lainnya berada
di dalam root node.
2. Element node yaitu bagian dari dokumen XML yang ditandai dengan tag
pembuka dan tag penutup, atau bisa juga sebuah tag tunggal elemen
kosong seperti <anggota nama=”ochy”/> . Root node biasa juga disebut
root element.
3. Attribute note termasuk nama dan nilai atribut ditulis pada tag awal sebuah
elemen atau pada tag tunggal.
4. Text node adalah text yang merupakan isi dari sebuah elemen, ditulis
diantara tag pembuka dan tag penutup.
5. Comment node adalah baris yang tidak dieksekusi oleh parser.
2.2.2. Sintaks XML
Dibandingkan dengan HTML, XML lebih banyak aturan. Kalau user
menulis sebuah dokumen HTML, beberapa kesalahan penulisan masih ditolerir.
Misalnya pemakai menempatkan tag bersilangan seperti <p><b>Huruf
Tebal</p></b> meskipun tidak dianjurkan, HTML masih bisa bekerja dan
menampilkan hasil seperti yang user inginkan. Tidak demikian dengan XML.
Dalam XML harus memperhatikan sintaks – sintaks yang tidak boleh dilanggar,
sintaks – sintaks tersebut antara lain :
1. Heading standard untuk Document XML.
Setiap membuat dokumen XML diawali dengan heading standard XML.
Formatnya adalah sebagai berikut:
<?xml version=”1.0” encoding=”iso-8859-1”?>
Penjelasan : xml version=”1.0” berarti bahwa file XML ini dibuat sesuai
dengan aturan versi 1.0 dan enconding menunjukkan bahwa file XML ini
ditulis dengan kode iso-8859-1.
2. Dokumen XML harus memiliki Root tag.
Sebuah dokumen XML yang baik harus memiliki root tag. Yaitu tag yang
melingkupi keseluruhan dari dokumen. Tag-tag yang lain, disebut child
tag, berada didalam root membentuk hirarki. Formatnya adalah sebagai
berikut :
<root> <child> <subchild></subchild> </child> </root>
Bentuk mengenai diagram hirarki XML tampak pada Gambar 2.1.
Gambar 2.1 Diagram Hirarki XML
3. Tag pada XML harus lengkap berpasangan.
Pada HTML beberapa elemen tidak harus berpasangan. Contoh berikut ini
diperbolehkan dalam penulisan HTML.
<p>paragraph pertama
<p>paragarap kedua
yang demikian tidak berlaku pada XML. Pemakai XML harus menulis
pula tag penutup untuk setiap tag yang user buat. Penulisannya harus
seperti ini :
<p>paragraph pertama</p>
<p>paragarap kedua</p>
Tag tunggal hanya diperbolehkan untuk elemen kosong. Contoh
penulisannya sebagai berikut :
<anggota nama=”ochy”/>
4. XML membedakan huruf besar dengan huruf kecil.
Pada XML, <tanggal> berbeda dengan <Tanggal>. Tag pembuka dan tag
penutup harus sama susunan huruf besar dan kecilnya. Format
penulisannya adalah sebagai berikut :
<contoh>ini penulisan yang salah</Contoh>
<contoh>ini baru betul</contoh>
5. Penyarangan tag harus benar.
Penulisan tag pada XML harus mengikuti aturan Last In First Out (LIFO).
Pada XML user tidak bisa membuat tag yang saling bersilang seperti
format berikut ini :
<p><b>Huruf Tebal</p></b>
tapi harus disusun seperti format berikut ini :
<p><b>Huruf tebal</b></p>
bila dipaksakan juga, browser akan menampilkan pesan error.
6. XML mempertahankan spasi seperti apa adanya.
Berbeda dengan HTML, XML menampilkan spasi persis bagaimana data
ditulis. Contoh berikut ini :
Pada HTML terdapat kalimat sebagai berikut :
Kami pergi bersama
akan ditampilkan sebagai :
Kami pergi bersama
Sedangkan pada XML akan ditampilkan sama persis dengan kalimat
asalnya.
7. Nilai atribut harus diletakkan diantara tanda petik.
Seperti HTML, XML memiliki atribut. Nilai atribut harus diletakkan
diantara dua tanda petik. Tidak masalah apakah tanda petik tunggal atau
tanda petik ganda. Contoh format penulisan sebagai berikut :
<pesan dari=”ochy”> atau
<pesan dari=’ochy’>
8. Penamaan tag dan atribut.
Nama tag bisa terdiri dari huruf, angka dan underscore(“_”). Karakter
awal nama tag harus berupa huruf atau underscore (“_”), tidak diawali
dengan kata xml atau XML, (misal:<xmlstring>), dan tidak mengandung
spasi. Aturan penamaan atribut sama dengan aturan penamaan tag.
9. Menyisipkan komentar.
Pada bahasa pemrograman atau scripting kita dikenal adanya komentar
(comment). Komentar adalah kalimat antara baris yang tidak dieksekusi
oleh compiler, browser atau parser. Untuk menyisipkan komentar pada
dokumen XML caranya adalah sebagai berikut:
<!—Baris ini tidak di eksekusi oleh parser -->
2.2.3 Keuntungan XML
Berikut adalah keuntungan XML :
1. Ekstensibilitas.
Artinya bebas menentukan tag – tag sendiri sesuai dengan kebutuhan user.
2. Memisahkan data dengan presentasi.
Ini merupakan keunggulan lain dari XML, yaitu pemisahan antara data dan
presentasi. Maksudnya, sebuah data itu hanya berisi data saja, tidak ada
informasi lain mengenai cara menampilkannya. Sebuah dokumen XML
merupakan data yang menerangkan data itu sendiri. Tag – tag pada XML
menjelaskan mengenai isi datanya. HTML sendiri mencampuradukkan
antara data dan presentasi. XML hanya mendefinisikan tentang isi saja.
Misalnya ada tag di HTML yang menjelaskan bagaimana browser
menampilkan data untuk ditulis miring atau tebal.
Contoh :
<I>Bandung</I>
Namun tag di XML menjelaskan data itu sendiri.
<nama>Bandung</nama>
Di contoh HTML di atas, tidak diketahui apakah Bandung kota atau
julukan ataupun nama. Namun di XML, jelas bahwa Bandung itu nama.
3. Penyederhanaan Aplikasi.
Saat ini, banyak aplikasi memiliki ukuran besar dan menghabiskan memori.
Biasanya aplikasi untuk mengolah kata maupun gambar dan harus
mengakomodasikan berbagai format file. XML yang terbuka, akan
memudahkan aplikasi untuk mengolah data.
2.3 CSS (Cascading Style Sheet)
Pada tahun 1996, W3C mengumumkan cara yang cukup sederhana untuk
mengatasi masalah penggabungan antara data dengan stylenya yang menjadikan
source code cukup sulit untuk dilihat dan susah untuk dikembangkan lebih lanjut.
Solusi tersebut adalah dengan menggunakan Cascading Style Sheet (CSS).
Dengan CSS dapat melakukan pemisahan antara data dengan style yang akan
diberikan, dengan menempatkan perintah pemformatan untuk sebuah halaman
web di suatu tempat tersendiri yang terpisah dari seluruh isi. Prinsip umum CSS
adalah untuk memisahkan informasi style secara fisik dari data.
2.3.1 Perintah CSS
Beberapa properti dari CSS diringkas sebagai berikut :
1. Ditampilkan atau tidak
Display: block, none
2. Huruf:
a. font-family: serif, sans-serif, cursive, fantasy, monospace, arial,
western, courier new
b. font-size: ukuran dalam point, smaller, large, medium
c. font-style: italic, oblique, normal
d. font-weight: normal, bold, border, lighter (atau ketebalannya 100-900)
e. font-variant: small-caps, normal
3. Warna:
a. color: red, green
b. background-color
c. background-image: url(“gambar.bmp”)
4. Teks:
a. text-align: left, right, center
b. text-indent: n %, n em (ganti dengan bilangan)
5. Margin:
a. margin-top
b. margin-right
c. margin-bottom
d. margin-left
6. Border:
a. border-style: solid, dotted, dashed, double, groove, ridge, inset, none
b. border-width: thin, medium, thick
c. border-color
7. Float:
Float: left, right, none
2.3.2 CSS pada XML
Untuk menampilkan data XML dengan CSS maka harus tambahkan baris
berikut pada awal dokumen XML :
<?xml-stylesheet type=”text/css” href=”coba.css”?>
Contoh lengkap css dalam xml adalah dokumen data.xml berikut :
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<?xml-stylesheet type="text/css" href="C:\My Documents\coba.css"?>
<woi>
<hai>
<nama>Ochy</nama>
<umur>21</umur>
</hai>
</woi>
Berikut ini adalah file coba.css :
hai
{display:block;
margin-top:20pt;
margin-left:15pt;
font-size:12pt;
font-style:normal}
nama
{display:block;
font-size:24pt;
font-style:italic;
font-family:lucida sans;
color:red}
umur
{display:block;
font-weight:bold;
font-variant:small-caps;
color:blue}
Hasil pada web browser adalah sebagai berikut :
Ochy
21
2.4 PHP (Personal Home Page tools)
Personal Home Page (PHP) merupakan script untuk pemrograman web
yang bekerja disisi server. PHP petama kali ditulis oleh Rasmus Lerdorf pada
tahun 1994. Pada tahun 1995, Rasmus membuat FI(Form Interpreter) ,yaitu tool
untuk memasukkan query SQL secara mudah ke dalam halaman web.
Dengan menggunakan PHP, maka maintenance suatu situs web menjadi
lebih mudah. Proses update data dapat dilakukan dengan menggunakan aplikasi
yang dibuat dengan menggunakan script PHP. PHP secara mendasar dapat
mengerjakan semua yang dapat dikerjakan program CGI, seperti mendapatkan
data dari form, menghasilkan isi halaman web yang dinamik dan menerima
cookies.
2.4.1 Mengenal Variabel
Variabel merupakan tempat penyimpanan data, di dalam PHP
penulisannya diawali dengan karakter $ diikuti dengan nama variabelnya. Nama
variabel harus dimulai dengan huruf atau underscore, sesudahnya dapat berupa
angka. Karakter (‘@’,’#’,’+’,’-‘,dsb) tidak boleh digunakan sebagai nama
variabel. Dalam penulisan nama variabel tidak boleh ada spasi.
2.4.2 Tipe Data
Tipe data yang dapat dioleh dengan PHP adalah tipe data numerik (integer
dan floating point), string, dan tipe data obyek. Tipe data obyek adalah tipe data
yang didalamnya mempunyai data dan method. Data obyek didefinisikan dengan
membuat definisi class terlebih dahulu.
Contoh pendeklarasian tipe data obyek :
<?php class obyek { function counter() { return 5; } } $test=new obyek; echo $test->counter();
?> 2.4.3 Escape Character
Merupakan karakter – karakter khusus yang digunakan untuk mewakili
karakter ASCII dengan fungsi khusus. Karakter ini diawali dengan tanda \ .
Contoh escape character:
\n ganti baris
\r enter
\t tab
\\ backslash
\$ karakter $
\” karakter “
2.4.4 Operator
Operator adalah alat yang digunakan untuk manipulasi data.
Jenis Operator :
1. Operator Aritmatika
Contoh Nama
$a+$b Penjumlahan a dengan b
$a-$b Pengurangan a dengan b
$a*$b Perkalian a dengan b
$a/$b Pembagian a dengan b
$a%$b Modulus (sisa pembagian) a dengan b
2. Operator string
Contoh Nama
$a.$b Concatenation (menggabungkan string)
3. Operator Increment / Decrement
Contoh Nama
++$a Pre increment
$a++ Post increment
--$a Pre decrement
$a-- Post decrement
2.4.5 Struktur Kendali
Aplikasi yang dikembangkan dengan menggunakan PHP tidak selalu
mempunyai struktur sequence (berurutan). untuk dapat melompati bagian program
atau mengulang suatu baris perintah dapat digunakan struktur kendali.
2.4.5.1 If ... else ....
Struktur if digunakan untuk memeriksa apakah perintah perintah yang ada
di dalam blok if dikerjakan atau tidak. Perintah dalam blok if akan dikerjakan bila
nilai dari ekspresi adalah benar. Jika tidak , maka perintah dalam blok else yang
akan dikerjakan.
Contoh ekspresi if :
If ($a==4) { Echo “bilangan empat”; } else { echo “bukan bilangan empat”; }
2.4.5.2 Switch
Switch merupakan bentuk struktur kontrol yang dapat lebih
menyederhanakan bentuk dari If…else . Bentuk switch ini digunakan untuk
mengganti urutan pemeriksaan if pada suatu hasil ekspresi dengan beberapa nilai.
Contoh ekspresi switch :
switch($no_hari){ case 1 : echo “Minggu”; break; case 2 : echo “Senin”; break; case 3 : echo “Selasa”; break; case 4 : echo “Rabu”; break; }
2.4.5.3 Statement perulangan
Untuk perintah – perintah yang berulang dapat digunakan statement
perulangan. Statement perulangan terdiri dari while, do while, for, dan foreach.
2.4.5.3.1 While
Perintah dalam while akan dikerjakan selama ekspresi bernilai benar.
Dalam blok perintah ini harus ada perintah yang melakukan perubahan nilai agar
ekspresi menjadi salah. Apabila tidak ada, maka akan terjadi perulangan tanpa
henti. Contoh :
<? $bil=1; while($bil<10){ echo ”bilangan = $bil”; $bil++; } ?>
2.4.5.3.2 do..while
do..while berfungsi sama dengan while yaitu mengulang suatu perintah
sampai ditemui ekspresi bernilai salah. Bedanya pada do..while, pengecekan
kondisi benar salah terletak sesudah melakukan perintah.
<? $bil=1; do{ echo :”bilangan = $bil”; $bil++; } while($bil<10); ?>
2.4.5.3.3 For
Merupakan struktur pengulangan dengan jumlah perulangan dapat
ditentukan.
<? for($I=0;$I<10;$I++){ echo “bilangan = $I”; }
?>
2.4.5.3.4 Foreach
Merupakan struktur kontrol khusus yang digunakan untuk melakukan
perulangan pada array. Dengan cara ini kita tidak perlu mengetahui berapa jumlah
array.
<? $nama[0]=”agus”; $nama[1]=”domi”; $nama[2]=”toni”; $nama[3]=”beni”; $nama[4]=”esa”; Foreach ($nama as $nilai){ echo “nama mahasiswa : $nilai <br>”; } ?>
2.4.5.4. Fungsi
Fungsi merupakan serangkaian perintah yang mempunyai kegunaan
tertentu dan sering dipakai. Dengan adanya fungsi pemrogram dipermudah karena
tidak perlu menulis script berulang-ulang. Fungsi digunakan untuk
menggabungkan beberapa statement yang biasanya untuk melakukan suatu proses
yang akan menghasilkan suatu nilai tertentu.
Struktur dari fungsi pada PHP adalah sebagai berikut :
Function nama_fungsi( $arg1, $arg2, …., argn) { Statement; return $nilai_hasilfungsi;
}
2.4.6 Koneksi PHP dengan Database
2.4.6.1 Koneksi ke Database
Sebelum kita melakukan akses terhadap suatu database server, terlebih
dahulu harus membuka koneksi ke database tersebut.
Proses koneksi database pada PHP dapat dilakukan dengan cara berikut :
<? $hostname=”hostname-databaseserver”; $username=”username-databaseserver”; $password=”password-username”; if (! $dbh = mysql_connect($hostname, $username, $password)) { echo mysql_error(); return 0; } ?>
2.4.6.2 Query ke Database
Setelah proses koneksi ke database berhasil dilakukan selanjutnya
melakukan akses terhadap database baik untuk membaca data, menyisipkan,
memperbaharui, dan sebagainya pada satu atau beberapa tabel dengan
menggunakan bahasa SQL.
2.4.6.2.1 Mengirimkan Query ke Server
Query yang telah kita buat harus dikirimkan ke server sehingga kita dapat
memperoleh hasil yang kita inginkan. Untuk mengirimkan query ke server dapat
dilakukan dengan cara berikut :
<? If (mysql_select_db(“namadatabase”)) {
echo mysql_error(); return 0; } $sql=”select kolom-kolom from nama-tabel”; If (! $res=mysql_query($sql, $dbh)) { echo mysql_error(); return 0;
} ?>
2.4.6.2.2 Menampilkan Isi Tabel
Hasil dari suatu query yang telah kita kirimkan ke server dapat kita
tampilkan ada web browser (biasanya dalam bentuk tabel) dengan cara sebagai
berikut :
<table> <tr> <td>nama-field1</td> <td>nama-field2</td> ……………… </tr> <? While ($row = mysql_fetch_row($res)) { echo “<tr>” echo “<td>$row[0]</td>”; echo “<td>$row[1]</td>”; …………………… echo “</tr>”; } ?> </table>
2.4.6.2.3 Menambah Record
Untuk menambah atau menyisipkan record ke suatu tabel database dapat
digunakan baris – baris perintah sebagai berikut :
<? $sql = “insert into nama_tabel (field1, field2, field3,…) values ($field1,$field2,$field3,….)”; if (! mysql_query($sql, $dbh)) { echo mysql_error(); return 0; } ?>
2.4.6.2.4 Menghapus Record
Untuk menghapus suatu record suatu tabel database dapat digunakan
baris–baris perintah sebagai berikut :
<? $sql = “delete from nama_tabel where kriteria”; if (! mysql_query($sql, $dbh)) { echo mysql_error(); return 0; } ?>
2.4.6.2.5 Memodifikasi Record
Untuk menghapus suatu record suatu tabel database dapat digunakan
baris–baris perintah sebagai berikut :
<? $sql = “UPDATE nama_tabel SET field = kriteria”; $sql .= “where kriteria2”; if (! mysql_query($sql, $dbh)) { echo mysql_error(); return 0; }
?>
2.5. MySQL
MySQL adalah salah satu jenis database server yang sudah sangat terkenal.
MySQL termasuk jenis RDBMS (Relational Database Management System).
MySQL mempunyai beberapa kelebihan dibandingkan dengan yang lainnya
misalnya PostgreSQL, Microsoft SQL Server, dan Oracle. Kelebihan MySQL
adalah pada kecepatan akses, biaya, konfigurasi, tersedia source code karena
MySQL berada di bawah Open Source License dan MySQL juga dapat
digunakan di berbagai Sistem Operasi misalnya : LINUX, UNIX, Windows.
Dalam konteks database, informasi tersimpan dalam tabel-tabel yang secara
logika merupakan struktur data dua dimensi yang terdiri atas baris-baris data
yang berada dalam satu atau lebih kolom. Keseluruhan tabel itu dihimpun
dalam satu kesatuan yang disebut database.
2.5.1 Akses Database pada PHP
Untuk koneksi ke database, gunakan perintah :
mysql_connect(hostname, username, password);
Contoh :
<?
$hostname=”localhost”; // hostname server database
$username=”php”; // username database
$password=”php”; // password database
if(!$db=mysql_connect($hostname,$username,$password))//Connect database
{
echo mysql_error ();// tampilkan pesan error
return 0;
}
2.5.2 Query ke database
Setelah connect ke database selanjutnya melakukan query ke database, caranya
:
<?
mysql_select_db(“nama_database”); //memilih database yang digunakan
$query=”select * from nama_tabel”; // query yang akan dieksekusi
$res=mysql_query($query, $db); // eksekusi query
?>
Begitu pula untuk query yang lainnya misalnya insert, delete, update, dll kita
dapat menggunakan perintah mysql_query.
2.6. Obat Generik
Obat merupakan semua zat baik kimiawi, hewani, maupun nabati yang
dalam dosis layak dapat menyembuhkan, meringankan, atau mencegah
penyakit berikut dengan gejalanya. Obat Generik ialah obat dengan nama resmi
yang telah ditetapkan dalam Farmakope Indonesia dan INN (International Non-
proprietary Names) WHO untuk zat berkhasiat yang dikandungnya. Obat
Generik hanya menggunakan nama yang sesuai dengan zat berkhasiat yang
dikandungnya, walaupun diproduksi oleh pabrik yang berlainan. Kemasannya
sederhana dan tidak dipromosikan oleh produsennya. Promosi obat generik
hanya dilakukan oleh Pemerintah.
Istilah Obat Generik Berlogo (OGB) muncul sekitar tahun 1989, ketika itu
ada program pemerintah untuk menyediakan obat esensial dengan harga yang
terjangkau bagi masyarakat luas. Sediaan obat tanpa merek dagang ini pada
awalnya hanya diproduksi oleh 3 industri farmasi BUMN yang sudah diakui
menggunakan standar CPOB (Cara Pembuatan Obat yang Baik) atau GMP (Good
Manufacturing Practice). Untuk membedakannya dari sediaan lain yang belum
diakui, maka diberi logo berupa lingkaran bergaris-garis berwarna hijau.
Obat generik ditujukan untuk :
a. Menjamin suplai dan ketersediaan obat Esensial.
b. Menjamin mutu obat
c. Meningkatkan penggunaan obat secara rasional.
d. Menjamin agar harga terjangkau oleh masyarakat luas
Pemerintah telah mengeluarkan Keputusan Menteri Kesehatan Republik
Indonesia Nomor: 1112/Menkes/SKN/VII/2003 tentang Harga Jual Obat Generik
dengan pertimbangan :
Bahwa kesinambungan dalam penyediaan dan ketersediaan obat generik
dengan harga terjangkau yang selama ini dapat memenuhi kebutuhan
masyarakat perlu terus dipertahankan.
Penyesuaian Harga Obat Generik tahun 2003 yang telah ditetapkan diambil
antara lain dengan mengacu pada kenaikan bahan baku untuk beberapa item
obat, bahan kemasan, biaya produksi serta biaya distribusi dan lain - lain.
BAB III
ANALISA DAN PERANCANGAN SISTEM
3.1 Sistem Yang Dikembangkan
Sistem yang akan dikembangkan adalah sistem pemanfaatan dokumen
XML, sehingga dalam sekali pendefinisian data dalam XML dapat digunakan
untuk lebih dari satu presentasi data dengan CSS, dalam program akan dipakai
dua model tampilan. Program yang akan dibuat bersifat client - server, database
yang akan diolah adalah database informasi obat generik yang diolah di server
untuk diubah menjadi format dokumen XML, sehingga dokumen tersebut dapat
diakses di client dalam tampilan web browser.
3.2 Perancangan Sistem
3.2.1 Konsep Kerja Sistem
Konsep kerja sistem dalam pengaksesan informasi obat generik akan
digambarkan pada Gambar 3.1 berikut :
2 1
3 4 5
Database
PHP
Web Server
web browser
Gambar 3.1 Konsep Kerja Sistem
Keterangan :
1. Request pada sisi web browser.
2. Web server akan mencari skrip PHP untuk diproses di mesin PHP.
3. Karena dalam skrip PHP melibatkan pengaksesan database, maka
database tersebut akan diproses bersama – sama dengan skrip PHP dalam
mesin PHP.
4. Mesin PHP akan menghasilkan dokumen XML dan CSSnya kemudian
dikirim ke web server.
5. Web server akan mengirimkan yang direquest oleh web browser tadi
berupa dokumen XML yang akan ditampilkan dalam tampilan CSS pada
web browser.
3.2.2 Pengguna Web
Web ini dikhususkan untuk user yang bergerak dalam bidang farmasi dan
kesehatan karena bahasa dan istilah yang digunakan merupakan istilah medis yang
sesuai dengan sumbernya yaitu berdasarkan buku Informatorium Obat Nasional
Indonesia (IONI) 2000. User bisa mendapatkan informasi obat generik dari web
ini, yaitu mengenai nama obat yang disertai dengan keterangan indikasi, kontra-
indikasi, efek samping, dosis, dan bentuk sediaannya.
3.2.3 DAD (Diagram Aliran Data)
3.2.3.1 Konteks Diagram
Jika administrator akan masuk ke dalam sistem untuk melakukan proses
tambah data, edit data dan hapus data obat Generik, administrator harus
memasukkan Nama admin dan Password. Jika user ingin mendapatkan informasi
obat generik, user dapat melakukan proses pencarian berdasarkan jenis obat,
indikasi, kontraindikasi, bentuksediaan, dan efeksamping ke dalam sistem untuk
mendapatkan nama obat beserta informasi obat Generik sesuai dengan yang
dikehendaki user. Konteks diagram sistem dapat dilihat seperti Gambar 3.2
berikut.
0
Informasi ObatGenerikUser
Jenis Obat,Indikasi, KontraIndikasi, BentukSediaan, Efek
Samping
Data ObatGenerik
Administrator
Data ObatGenerik, Nama
admin,Password
Data ObatGenerik
Gambar 3.2 Konteks Diagram Informasi Obat Generik
3.2.3.2 Diagram Berjenjang
Diagram berjenjang dari sistem dapat dilihat pada Gambar 3.3 berikut ini.
InformasiObat Generik
0
Lihat Data ObatGenerik
Tambah DataObat Generik
Edit DataObat Generik
21 4
Level 0
Top Level
Hapus DataObat Generik
3
Menampilkan DataObat Generik
4.2
Cari DataObat Generik
4.1
Level 1
Gambar 3.3 Diagram Berjenjang Sistem
3.2.3.3 DAD Level 0 Dan Level 1
DAD level 0 dari sistem dapat dilihat pada Gambar 3.4 berikut ini.
UserLihat Data
Obat Generik
4JenisObat, Indikasi,KontraIndikasi,BentukSediaan,EfekSamping
Data Obat Generik
Data ObatGenerik
Administrator Hapus DataObat Generik
3
D1 Data Obat Generik
Data ObatGenerik
ID jenis,nama jenis,ID subjenis,namasubjenis,ket_subjenis,ID
sub2jenis,namasub2jenis,ket_sub2jenis,ID obat,Nama
obat,ID indikasi,nama indikasi,IDkontra indikasi,nama kontra-
indikasi,ID efek samping,nama efeksamping,dosis anak,dosis dewasa,IDbentuk sediaan,nama bentuk sediaan
Edit DataObat Generik
2
Data ObatGenerik
nama jenis,namasubjenis,ket_subjenis,nama
sub2jenis,ket_sub2jenis,Nama obat,nama indikasi,namakontra-indikasi,nama efeksamping,dosis anak,dosis
dewasa,nama bentuk sediaan
Tambah DataObat Generik
1 Data ObatGenerik
ID jenis,nama jenis,IDsubjenis,nama
subjenis,ket_subjenis,IDsub2jenis,nama
sub2jenis,ket_sub2jenis,IDobat,Nama obat,ID indikasi,namaindikasi,ID kontra indikasi,nama
kontra-indikasi,ID efeksamping,nama efek
samping,dosis anak,dosisdewasa,ID bentuk sediaan,nama
bentuk sediaan
Gambar 3.4 Gambar DAD Level 0
DAD level 1 untuk proses 4 dapat dilihat pada Gambar 3.5 berikut ini.
UserMenampilkan
Data ObatGenerik
4.2
Cari DataObat Generik
4.1Jenis Obat, Indikasi, Kontra
Indikasi, Efek Samping,Bentuk Sediaan
Data Obat Generik
Data Obat Generik
D1 Data Obat Generik
Data Obat Generik
Gambar 3.5 DAD Level 1 (Proses 4)
3.2.3.4. Diagram Gabungan
UserMenampilkan
Data ObatGenerik
4.2
Cari DataObat Generik
4.1
Jenis Obat, Indikasi, KontraIndikasi, Efek Samping,
Bentuk Sediaan
Data Obat Generik
Data Obat Generik
D1 Data Obat Generik
Data Obat Generik
Administrator Hapus DataObat Generik
3
Data ObatGenerik
ID jenis,nama jenis,ID subjenis,namasubjenis,ket_subjenis,ID
sub2jenis,namasub2jenis,ket_sub2jenis,ID obat,Nama
obat,,ID indikasi,nama indikasi,IDkontra indikasi,nama kontra-
indikasi,ID efek samping,nama efeksamping,dosis anak,dosis dewasa,IDbentuk sediaan,nama bentuk sediaan
Edit DataObat Generik
2
Data ObatGenerik
nama jenis,namasubjenis,ket_subjenis,nama
sub2jenis,ket_sub2jenis,Namaobat,nama indikasi,namakontra-indikasi,nama efeksamping,dosis anak,dosis
dewasa,,nama bentuk sediaan
Tambah DataObat Generik
1 Data ObatGenerik
ID jenis,nama jenis,IDsubjenis,nama
subjenis,ket_subjenis,IDsub2jenis,nama
sub2jenis,ket_sub2jenis,IDobat,Nama obat,ID indikasi,namaindikasi,ID kontra indikasi,nama
kontra-indikasi,ID efeksamping,nama efek samping,dosis
anak,dosis dewasa,,ID bentuksediaan,nama bentuk sediaan
Gambar 3.6 Diagram Gabungan Sistem
3.2.4 Kamus Data
Kamus data dalam informasi obat generik adalah sebagai berikut :
1. Nama Arus Data : ID jenis.
Nama Alias : -
Bentuk Data : Item data.
Arus Data : Administrator – Proses 1, Administrator – Proses 3.
Penjelasan : Berisi tentang nomor ID (nomor unik) dari
jenis obat Generik.
Periode : Setiap dilakukan tambah dan hapus data
jenis obat Generik.
Struktur Data : id_jenis (int).
2. Nama Arus Data : Nama jenis.
Nama Alias : -
Bentuk Data : Item Data.
Arus Data : Administrator – Proses 1, Administrator – Proses 2,
Administrator – Proses 3.
Penjelasan : Berisi nama jenis obat Generik.
Periode : Setiap dilakukan proses tambah data,
edit data, hapus data.
Struktur Data : nama_ jenis(Varchar).
3. Nama Arus Data : ID subjenis.
Nama Alias : -
Bentuk Data : Item data.
Arus Data : Administrator – Proses 1, Administrator – Proses 3.
Penjelasan : Berisi tentang nomor ID (nomor unik) sub bagian
dari jenis Obat Generik.
Periode : Setiap dilakukan tambah dan hapus data subjenis
Obat Generik.
Struktur Data : id_subjenis(int).
4. Nama Arus Data : Nama subjenis.
Bentuk Data : Item Data.
Arus Data : Administrator – Proses 1, Administrator – Proses 2,
Administrator – Proses 3.
Penjelasan : Berisi nama sub bagian dari jenis obat Generik.
Periode : Setiap dilakukan proses tambah data,
edit data, hapus data.
Struktur Data : nama_ subjenis(Varchar).
5. Nama Arus Data : Ket subjenis.
Nama Alias : -
Bentuk Data : Item data.
Arus Data : Administrator – Proses 1, Administrator – Proses 2,
Administrator – Proses 3.
Penjelasan : Berisi tentang keterangan dari sub bagian
jenis obat Generik.
Periode : Setiap dilakukan tambah, hapus data dan edit
subjenis obat Generik.
Struktur Data : ket_subjenis(text).
6. Nama Arus Data : ID sub2jenis.
Nama Alias : -
Bentuk Data : Item data.
Arus Data : Administrator – Proses 1, Administrator – Proses 3.
Penjelasan : Berisi tentang nomor ID (nomor unik) dari sub dari
sub bagian jenis Obat Generik.
Periode : Setiap dilakukan tambah dan hapus data sub dari
sub bagian Obat Generik.
Struktur Data : id_sub2jenis(int).
7. Nama Arus Data : Nama sub2jenis.
Nama Alias : -
Bentuk Data : Item Data.
Arus Data : Administrator – Proses 1, Administrator – Proses 2,
Administrator – Proses 3.
Penjelasan : Berisi nama obat Generik.
Periode : Setiap dilakukan proses tambah data,
edit data, hapus data.
Struktur Data : nama_ sub2janis(Varchar).
8. Nama Arus Data : Ket sub2jenis.
Nama Alias : -
Bentuk Data : Item data.
Arus Data : Administrator – Proses 1, Administrator – Proses 2,
Administrator – Proses 3.
Penjelasan : Berisi tentang keterangan dari sub dari sub bagian
jenis obat Generik.
Periode : Setiap dilakukan tambah, hapus data dan edit
Sub dari subjenis obat Generik.
Struktur Data : ket_sub2jenis(text).
9. Nama Arus Data : ID obat.
Nama Alias : -
Bentuk Data : Item data.
Arus Data : Administrator – Proses 1, Administrator - Proses 3.
Penjelasan :Berisi tentang nomor ID (nomor unik) dari obat
yang berbeda satu dengan yang lain.
Periode : Setiap dilakukan tambah dan hapus obat.
Struktur Data : ID_obat (varchar).
10. Nama Arus Data : Nama Obat.
Bentuk Data : Item Data.
Arus Data : Administrator – Proses 1, Administrator –
Proses 2, Administrator – Proses 3, User – Proses
4.1.
Penjelasan : Berisi nama suatu obat.
Periode : Setiap dilakukan proses tambah, edit, hapus dan
cari data obat Generik.
Struktur Data : nama_obat (varchar).
11. Nama Arus Data : ID indikasi.
Nama Alias : -
Bentuk Data : Item data.
Arus Data : Administrator – Proses 1, Administrator - Proses 3.
Penjelasan :Berisi tentang nomor ID (nomor unik) dari indikasi
yang berbeda satu dengan yang lain.
Periode : Setiap dilakukan tambah dan hapus keterangan.
Struktur Data : ID_indikasi (varchar).
12. Nama Arus Data : Indikasi.
Nama Alias : -
Bentuk Data : Item Data.
Arus Data : Administrator – Proses 1, Administrator –
Proses 2, Administrator – Proses 3, User – Proses
4.1.
Penjelasan : Berisi keterangan indikasi obat.
Periode : Setiap dilakukan proses tambah, edit, hapus dan
cari data obat Generik.
Struktur Data : ket_indikasi (varchar).
13. Nama Arus Data : ID kontra indikasi.
Bentuk Data : Item data.
Arus Data : Administrator – Proses 1, Administrator - Proses 3.
Penjelasan :Berisi tentang nomor ID (nomor unik) dari kontra
indikasi yang berbeda satu dengan yang lain.
Periode : Setiap dilakukan tambah dan hapus keterangan.
Struktur Data : ID_kontra(varchar).
14. Nama Arus Data : Kontra-Indikasi.
Nama Alias : -
Bentuk Data : Item Data.
Arus Data : Administrator – Proses 1, Administrator –
Proses 2, Administrator – Proses 3 User – Proses
4.1.
Penjelasan : Berisi keterangan kontra-indikasi obat.
Periode : Setiap dilakukan proses tambah, edit, hapus, dan
cari data obat Generik.
Struktur Data : ket_kontra(varchar).
15. Nama Arus Data : ID efek samping.
Nama Alias : -
Bentuk Data : Item data.
Arus Data : Administrator – Proses 1, Administrator - Proses 3.
Penjelasan :Berisi tentang nomor ID (nomor unik) dari efek
samping yang berbeda satu dengan yang lain.
Periode : Setiap dilakukan tambah dan hapus keterangan.
Struktur Data : ID_efek (varchar).
16. Nama Arus Data : Efek Samping.
Nama Alias : -
Bentuk Data : Item Data.
Arus Data : Administrator – Proses 1, Administrator –
Proses 2, Administrator – Proses 3.
Penjelasan : Berisi keterangan efek samping obat.
Periode : Setiap dilakukan proses tambah, edit dan hapus
data obat Generik.
Struktur Data : ket_efek (varchar).
17. Nama Arus Data : Dosis Anak.
Nama Alias : -
Bentuk Data : Item Data.
Arus Data : Administrator – Proses 1, Administrator –
Proses 2, Administrator – Proses 3, User – Proses
4.1.
Penjelasan : Berisi keterangan dosis obat untuk anak.
Periode : Setiap dilakukan proses tambah, edit, hapus dan
cari data obat Generik.
Struktur Data : dosis_anak (varchar).
18. Nama Arus Data : Dosis Dewasa.
Nama Alias : -
Bentuk Data : Item Data.
Arus Data : Administrator – Proses 1, Administrator –
Proses 2, Administrator – Proses 3, User – Proses
4.1.
Penjelasan : Berisi keterangan dosis obat untuj dewasa.
Periode : Setiap dilakukan proses tambah, edit, hapus dan
cari data obat Generik.
Struktur Data : dosis_dewasa (varchar).
19. Nama Arus Data : ID bentuk sediaan.
Nama Alias : -
Bentuk Data : Item data.
Arus Data : Administrator – Proses 1, Administrator - Proses 3.
Penjelasan :Berisi tentang nomor ID (nomor unik) dari bentuk
sediaan yang berbeda satu dengan yang lain.
Periode : Setiap dilakukan tambah dan hapus keterangan.
Struktur Data : ID_bentuk (varchar).
20. Nama Arus Data : Bentuk-Sediaan.
Nama Alias : -
Bentuk Data : Item Data.
Arus Data : Administrator – Proses 1, Administrator –
Proses 2, Administrator – Proses 3, User – Proses
4.1.
Penjelasan : Berisi keterangan bentuk sediaan obat.
Periode : Setiap dilakukan proses tambah, edit, hapus, dan
cari data obat Generik.
Struktur Data : ket_bentuk (varchar).
21. Nama Arus Data : Data obat generik
Nama Alias : -
Bentuk Data : Item Data.
Arus Data : Proses 1 – D1, Proses 2 – D1, Proses 3 – D1,
D1 – Proses 4.1, Proses 4.1 – Proses 4.2, Proses –
4.2 – User.
Penjelasan : Berisi data obat Generik.
Periode : Setiap dilakukan proses tambah, edit, hapus data
obat Generik.
Struktur Data : Informasi tentang obat Generik mengenai beberapa
item data berikut :
Id_jenis(int), nama_jenis(varchar), Id_subjenis(int),
nama_subjenis(varchar), ket_subjenis(text),
Id_sub2jenis(int), nama_sub2jenis(varchar),
ket_sub2jenis(text), id_obat(varchar),
nama_obat(Varchar), id_kontra(varchar),
ket_kontra(varchar), id_indikasi(varchar),
ket_indikasi(varchar), id_efek(varchar),
ket_efek(varchar),
dosis_anak(varchar),dosis_dewasa(varchar),
id_bentuk(varchar),ket_bentuk(varchar).
3.3 Perancangan Database
3.3.1 Conceptual Database Design
Jenis obat Sub2jenisobat
Subjenisobat
punya punya
ObatKontraIndikasi
Indikasi
EfekSamping
BentukSediaan
Dosis
punya
punya
punya
punya
punya
punya
id_jenis nama_jenis id_subjenisnama_subjenis
ket_subjenis
id_sub2jenis
nama_sub2jenisket_sub2jenis
Id_indikasi ket_indikasi
Id_kontra ket_kontra
Id_efek ket_efek
Id_obat dosis_anakid_bentukket_bentuk
Id_obat Id_indikasi
Id_obat Id_kontra
Id_obat
Id_efek
Id_obatid_bentuk
id_subjenis
id_jenis
id_sub2jenis
nama_obat
Id_obat
1 N 1
1
N
N
N
N
N
1
N
N
N
N
1
dosis_dewasa
Gambar 3.7 ERD Sistem
3.3.2 Logical Database Design
Hubungan antar keseluruhan tabel yang digunakan dalam basis data ini
dapat dilihat pada Gambar 3.8.
jenis_obat subjenis_obat * ** *
ID_jenis nama_jenis
ID_jenis ID_subjenis nama_subjenis
ket_subjenis
sub2jenis_obat ** * obat ** * punya_indikasi punya _kontra efeksamping ** ** ** ** ** ** indikasi kontraindikasi punya _efek * * * punya_dosis punya_bentuk ** ** ** admin bentuksediaan * *
Gambar 3.8 Relasi antar tabel 3.3.3 Physical Database Design
Rancang struktur data dari masing – masing tabel sebagai berikut :
1. Struktur tabel jenis_obat.
Nama Field Tipe Ukuran
Id_jenis int 10
id_admin nama_admin password
ID_subjenis ID_sub2jenis nama_sub2jenis
ket_sub2jenis
ID_sub2jenis ID_obat nama_obat
ID_obat ID_indikasi
ID_indikasi ket_indikasi
ID_efek ket_efek
ID_kontra ket_kontra
ID_obat ID_kontra
ID_obat ID_efek
ID_obat Dosis_anak Dosis_dewasa
ID_obat ID_bentuk
ID_bentuk Ket_bentuk
Nama_jenis varchar 20
Tabel 3.1 Struktur tabel jenis_obat
2. Struktur tabel subjenis_obat.
Nama Field Tipe Ukuran
Id_jenis int 10
Id_subjenis int 10
Nama_subjenis varchar 20
Ket_subjenis text -
Tabel 3.2 Struktur tabel subjenis_obat
3. Struktur tabel sub2jenis_obat.
Nama Field Tipe Ukuran
Id_subjenis int 10
Id_sub2jenis int 10
Nama_sub2jenis varchar 20
Ket_sub2jenis text -
Tabel 3.3 Struktur tabel sub2jenis_obat
4. Struktur tabel obat.
Nama Field Tipe Ukuran
Id_sub2jenis int 10
Id_obat varchar 10
Nama_obat varchar 20
Tabel 3.4 Struktur tabel obat
5. Struktur tabel punya _indikasi.
Nama Field Tipe Ukuran
Id_obat varchar 10
Id_indikasi varchar 10
Tabel 3.5 Struktur tabel punya indikasi
6. Struktur tabel indikasi.
Nama Field Tipe Ukuran
Id_indikasi varchar 10
ket_indikasi varchar 20
Tabel 3.6 Struktur tabel memiliki indikasi
7. Struktur tabel punya _kontra
Nama Field Tipe Ukuran
Id_obat varchar 10
Id_kontra varchart 10
Tabel 3.7 Struktur tabel punya kontraindikasi
8. Struktur tabel kontraindikasi.
Nama Field Tipe Ukuran
Id_kontra varchar 10
ket_kontra varchar 20
Tabel 3.8 Struktur tabel kontraindikasi
9. Struktur tabel punya _efek
Nama Field Tipe Ukuran
Id_obat Varchar 10
Id_ efek Varchar 10
Tabel 3.9 Struktur tabel punya efek
10. Struktur tabel efeksamping.
Nama Field Tipe Ukuran
Id_ efek varchar 10
ket_ efek varchar 20
Tabel 3.10 Struktur tabel efeksamping
11. Struktur tabel punya_dosis.
Tabel 3.11
Struktur tabel punya
dosis
12. Struktur tabel
punya _bentuk
Nama Field Tipe Ukuran
Id_obat varchar 10
Dosis_anak 200
Dosis_dewasa varchar 200
Nama Field Tipe Ukuran
Id_obat Varchar 10
Id_ bentuk varchar 10
Tabel 3.12 Struktur tabel punya bentuk
13. Struktur tabel bentuksediaan.
Nama Field Tipe Ukuran
Id_ bentuk varchar 10
ket_ bentuk varchar 20
Tabel 3.13 Struktur tabel bentuksediaan
14. Struktur tabel admin
Nama Field Tipe Ukuran Id_admin int 10 Nama_admin varchar 20 Password varchar 10
Tabel 3.11 Struktur tabel admin
3.4. Perancangan Struktur XML
Perancangan struktur XML yang akan dibuat dalam sistem adalah :
3.4.1 Definsi Root, Child dan Subchild
Dalam struktur XML yang akan dibuat pada sistem tersusun atas root,
child dan subchild dengan spesifikasi sebagai berikut ini.
1. Root.
Root node ini melingkupi keseluruhan dari dokumen XML, jadi dalam
suatu dokumen XML hanya ada satu root node. Root node membentuk
hirarki yang di dalamnya terdapat child dan subchild. Root node dalam
dokumen XML pada sistem adalah Generik.
2. Child.
Child node dalam dokumen XML pada sistem adalah jenis_obat
3. Subchild.
Subchild node dalam dokumen XML pada sistem adalah sebagai berikut
ini.
a. nama_jenis
b. subjenis_obat, memiliki subchild
i. nama_subjenis
ii. ket_subjenis
iii. sub2jenis_obat, memiliki subchild
- nama_sub2jenis
- ket_sub2jenis
- obat, memiliki subchild
~ nama_obat memiliki subchild
~ indikasi memiliki subchild ket_indikasi
~ kontraindikasi memiliki subchild ket_kontra
~ efeksamping memiliki subchild ket_efek
~dosis memiliki subchild dosis_anak dan
dosis_dewasa
~ bentuksediaan memiliki subchild ket_bentuk
3.4.2 Struktur XML
Struktur XML yang akan dibentuk dari root node, child node dan subchild
node akan digambarkan dalam bentuk tree berikut ini.
GENERIK
Jenis_obat
subjenis_obat
efek_samping
kontra_indikasi
indikasi
dosis
bentuk_sediaan
sub2jenis_obat
obat
nama_jenis_obat
ket_jenis_obat
nama_subjenis_obat
ket_subjenis_obat
nama_sub2jenis_obat
ket_sub2jenis_obat
nama_obat
Ket_efek_samping
Ket_indikasi
Ket_kontraindikasi
Dosis_anak
Ket_bentuksediaan
Dosis_dewasa
Gambar 3.9 Struktur XML dalam bentuk tree
Contoh struktur XMLnya adalah sebagai berikut :
<?xml version="1.0" encoding="iso-8859-1" ?>
- <generik>- <jenis_obat id="1"> <nama_jenis>obat yang bekerja pada sistem saluran cerna</nama_jenis> - <subjenis_obat id="1.1"> <nama_subjenis>antitukak</nama_subjenis> <ket_subjenis>meringankan atau menghilangkan
gejala,mempercepat penyembuhan, mencegah komplikasi yang serius,mencegah kambuh.</ket_subjenis>
- <sub2jenis_obat id="1.1.2"> <nama_sub2jenis>antagonis reseptor-H2</nama_sub2jenis> <ket_sub2jenis>menyembuhkan tukak lambung dan
duodenum dengan cara mengurangi sekresi asam lambung sebagai akibat hambatan reseptor-H2.</ket_sub2jenis>
- <obat id="f1"> <nama_obat>famotidin</nama_obat> - <indikasi>
<ket_indikasi>tukaklambung</ket_indikasi> <ket_indikasi>tukakduodenum</ket_indikasi>
</indikasi>- <kontraindikasi> <ket_kontra>gangguan ginjal</ket_kontra> <ket_kontra>gangguan hati</ket_kontra> <ket_kontra>hamil dan menyusui</ket_kontra>
</kontraindikasi>- <efeksamping> <ket_efek>pusing</ket_efek> <ket_efek>nyeri otot</ket_efek> <ket_efek>keadaan bingung yang reversibel</ket_efek> <ket_efek>kerusakan hati yang reversibel</ket_efek>
</efeksamping>- <dosis> <dosis_anak>40 mg 4 kali sehari</dosis_anak> <dosis_dewasa>80 mg 4 kali sehari</dosis_dewasa>
</dosis>- <bentuksediaan> <ket_bentuk>tablet 20 mg</ket_bentuk> <ket_bentuk>tablet 40 mg</ket_bentuk>
</bentuksediaan> </obat>
</sub2jenis_obat> </subjenis_obat>
</jenis_obat> </generik>
3.5 Perancangan Antar Muka
Pada perancangan antar muka ini terdiri dari : perancangan antar muka
untuk administrator pada pihak server dan perancangan antar muka untuk browser
pada pihak client. Perancangan dan pembahasannya adalah sebagai berikut :
3.5.1 Perancangan Antar Muka Untuk Administrator
3.5.1.1 Perancangan Login Administrator
Pada antar muka menu login, administrator harus memasukkan nomor ID,
nama dan password untuk dapat login. Jika password yang dimasukkan benar
maka administrator akan dapat melakukan tambah, edit, atau hapus data obat
generik. Jika tidak administrator diminta mengulang mengisi password sampai
benar. Tampilan login administrator adalah sebagai berikut :
INFORMASI OBAT GENERIK
Login Admin
Nama Admin :
Password :
LOGIN
Gambar 3.10 Rancangan antar muka menu login administrator
3.5.1.2 Perancangan Tampilan Menu Utama Administrator
Setelah admin login dengan password yang benar, maka akan masuk ke
menu utama admin. Pada antar muka menu utama, terdapat beberapa menu yaitu
jenis obat, indikasi, kontra indikasi, efek samping, dosis, bentuk sediaan, dan
keluar. Rancangan tampilannya adalah sebagai berikut :
INFORMASI OBAT GENERIK
Menu Utama Admin
Jenis Obat Dosis
Indikasi Bentuk Sediaan
Efek Samping
KELUAR
Kontra Indikasi
Gambar 3.11 Rancangan antar muka menu utama administrator
3.5.1.3 Perancangan Menu Jenis Obat
Pada menu jenis obat ini jika ingin melakukan edit data, klik link edit
untuk membuka form edit data jenis obat. Untuk menambah data jenis obat
baru,klik link tambah jenis obat maka akan muncul form tambah jenis obat untuk
mengisi datanya. Jika ingin menghapus data, cek list dahulu data-data yang ingin
dihapus kemudian tekan hapus. Sedangkan link subjenis untuk masuk ke form
subjenis dari suatu jenis obat. Rancangan menu jenis obat adalah seperti gambar
berikut :
INFORMASI OBAT GENERIK
Jenis Obat Generik
Menu Utama
Tambah Jenis Obat
Hapus ID Nama Jenis Obat
Edit SubJenis
SubJenis SubJenis
Hapus
Gambar 3.12 Rancangan antar muka menu jenis obat
3.5.1.4 Perancangan Menu Edit Data Jenis Obat
Pada rancangan antar muka form edit data jenis obat Generik,
administrator dapat melakukan edit data nama jenis obat. Tombol simpan
digunakan untuk merekam data jenis obat yang diedit ke dalam database. Tombol
kembali digunakan untuk kembali ke menu utama administrator.
INFORMASI OBAT GENERIK
Edit Jenis Obat
ID Jenis Obat :
Nama Jenis Obat :
Gambar 3.13 Rancangan antar muka menu edit jenis obat
Simpan
Kembali
3.5.1.5 Perancangan Menu Tambah Jenis Obat
Pada rancangan antar muka form tambah data jenis obat Generik,
administrator dapat melakukan tambah data dengan memasukkan id jenis obat dan
nama jenis obat. Tombol simpan digunakan untuk merekam data jenis obat yang
baru ke dalam database. Tombol kembali digunakan untuk kembali ke menu
utama administrator.
INFORMASI OBAT GENERIK
Tambah Jenis Obat
ID Jenis Obat :
Nama Jenis Obat :
Simpan
Kembali
Gambar 3.14 Rancangan antar muka menu tambah jenis obat
3.5.1.6 Perancangan Menu SubJenis Obat
Pada menu subjenis obat ini jika ingin melakukan edit data, klik link edit
untuk membuka form edit data subjenis obat. Untuk menambah data jenis obat
baru, klik link tambah subjenis obat maka akan muncul form tambah subjenis obat
untuk mengisi datanya. Jika ingin menghapus data, cek list dahulu data-data yang
ingin dihapus kemudian tekan hapus. Sedangkan link sub2jenis untuk masuk ke
form sub2jenis dari suatu subjenis obat. Rancangan menu subjenis obat adalah
seperti gambar berikut :
INFORMASI OBAT GENERIK
SubJenis Obat Generik
Jenis Obat>>Menu Utama
Tambah SubJenis Obat
Hapus ID Nama SubJenis Obat
Edit Sub2Jenis
Sub2Jenis Sub2Jenis
Hapus
Gambar 3.15 Rancangan antar muka menu subjenis obat
3.5.1.7 Perancangan Menu Edit Data SubJenis Obat
Pada rancangan antar muka form edit data subjenis obat Generik,
administrator dapat melakukan edit data nama subjenis obat. Tombol simpan
digunakan untuk merekam data subjenis obat yang diedit ke dalam database.
Tombol kembali digunakan untuk kembali ke menu utama administrator.
INFORMASI OBAT GENERIK
Edit SubJenis Obat
ID SubJenis Obat :
Nama SubJenis Obat :
Gambar 3.16 Rancangan antar muka menu edit subjenis obat
Simpan
Kembali
3.5.1.8 Perancangan Menu Tambah SubJenis Obat
Pada rancangan antar muka form tambah data subjenis obat Generik,
administrator dapat melakukan tambah data dengan memasukkan id subjenis obat
dan nama subjenis obat. Tombol simpan digunakan untuk merekam data subjenis
obat yang baru ke dalam database. Tombol kembali digunakan untuk kembali ke
menu utama administrator.
INFORMASI OBAT GENERIK
Tambah SubJenis Obat
ID Jenis Obat :
ID SubJenis Obat :
Nama SubJenis Obat :
Gambar 3.17 Rancangan antar muka menu tambah subjenis obat
Simpan
Kembali
3.5.1.9 Perancangan Menu Sub2Jenis Obat
Pada menu sub2jenis obat ini jika ingin melakukan edit data, klik link edit
untuk membuka form edit data sub2jenis obat. Untuk menambah data sub2jenis
obat baru, klik link tambah subjenis obat maka akan muncul form tambah
sub2jenis obat untuk mengisi datanya. Jika ingin menghapus data, cek list dahulu
data-data yang ingin dihapus kemudian tekan hapus. Sedangkan link obat untuk
masuk ke form obat dari suatu sub2jenis obat. Rancangan menu sub2jenis obat
adalah seperti gambar berikut :
INFORMASI OBAT GENERIK
Sub2Jenis Obat Generik
SubJenis Obat>>Jenis Obat>>Menu Utama
Tambah Sub2Jenis Obat
Hapus ID Nama Sub2Jenis Obat
Edit Obat
Obat Obat
Hapus
Gambar 3.18 Rancangan antar muka menu sub2jenis obat
3.5.1.10 Perancangan Menu Edit Data Sub2Jenis Obat
Pada rancangan antar muka form edit data sub2jenis obat Generik,
administrator dapat melakukan edit data nama sub2jenis obat. Tombol simpan
digunakan untuk merekam data sub2jenis obat yang diedit ke dalam database.
Tombol kembali digunakan untuk kembali ke menu utama administrator.
INFORMASI OBAT GENERIK
Edit Sub2Jenis Obat
ID Sub2Jenis Obat :
Nama Sub2Jenis Obat :
Gambar 3.19 Rancangan antar muka menu edit sub2jenis obat
Simpan
Kembali
3.5.1.11 Perancangan Menu Tambah Sub2Jenis Obat
Pada rancangan antar muka form tambah data sub2jenis obat Generik,
administrator dapat melakukan tambah data dengan memasukkan id sub2jenis
obat dan nama sub2jenis obat. Tombol simpan digunakan untuk merekam data
sub2jenis obat yang baru ke dalam database. Tombol kembali digunakan untuk
kembali ke menu utama administrator.
INFORMASI OBAT GENERIK
Tambah Sub2Jenis Obat
ID SubJenis Obat :
ID Sub2Jenis Obat :
Nama Sub2Jenis Obat :
Gambar 3.20 Rancangan antar muka menu tambah sub2jenis obat
Simpan
Kembali
3.5.1.12 Perancangan Menu Obat
Pada menu obat ini jika ingin melakukan edit data, klik link edit untuk
membuka form edit data obat. Untuk menambah data obat baru, klik link tambah
obat maka akan muncul form tambah obat untuk mengisi datanya. Jika ingin
menghapus data, cek list dahulu data-data yang ingin dihapus kemudian tekan
hapus. Rancangan menu adalah seperti gambar berikut :
INFORMASI OBAT GENERIK
Obat Generik
Sub2Jenis Obat>>SubJenis Obat>>Jenis
Obat>>Menu Utama
Tambah Obat
Hapus Nama Obat Edit
Hapus
Gambar 3.21 Rancangan antar muka menu obat
3.5.1.13 Perancangan Menu Tambah Obat
Pada rancangan antar muka form tambah data obat Generik, administrator
dapat melakukan tambah data dengan memasukkan id obat dan nama obat.
Tombol simpan digunakan untuk merekam data obat yang baru ke dalam
database. Tombol tambah digunakan untuk menambah lagi data obat baru.
Tombol keluar digunakan untuk kembali ke menu utama administrator..
INFORMASI OBAT GENERIK
Tambah Obat
ID Sub2JenisObat :
ID Obat :
Nama Obat :
Simpan
Tambah
Keluar
Gambar 3.22 Rancangan antar muka menu tambah obat
3.5.1.14 Perancangan Menu Edit Obat
Pada antar muka edit obat terdapat link-link ke form informasi obat yang
ingin diedit, yaitu indikasi obat, efek samping obat, bentuk sediaan obat, dan
kontra indikasi obat.
INFORMASI OBAT GENERIK
EDIT OBAT
IndikasiEfek Samping
Bentuk SediaanKontra Indikasi
Gambar 3.23 Rancangan antar muka menu edit keterangan obat
3.5.1.15 Perancangan Menu Edit Indikasi Obat
Untuk antarmuka edit informasi keterangan obat yaitu indikasi obat, efek
samping obat, bentuk sediaan obat, dan kontra indikasi obat sama semua. Pada
Form ini kita dapat menginputkan sekaligus mengedit data dengan men-ceklist
keterangan yang merupakan informasi suatu obat. Berikut adalah bentuk dari form
edit informasi keterangan indikasi obat.
Id Indikasi Keterangan Indikasi Checked
KEMBALI Simp
Gambar 3.24 Rancangan antar muka menu edit keterangan indikasi obat
Untuk form edit kontraindikasi, edit bentuk sediaan, dan edit efeksamping sama
seperti bentuk form edit indikasi di atas.
3.5.2 Perancangan Antar Muka Untuk User
3.5.2.1 Perancangan Tampilan Awal
Tampilan pada sisi user memiliki beberapa menu, adalah utama yang
berisi informasi pengertian obat generik, menu daftar isi, dan pilihan tamplate.
Rancangan tampilan awal untuk user adalah :
> < Informasi Obat Generik X
Utama || Daftar Isi || Tamplate 1 || Tamplate 2|| Tamplate 3 Pencarian Obat Obat Generik
Obat generik adalah ………. ……. Kata Kunci
CARI
Pilih \/
Gambar 3.25 Perancangan tampilan awal browser
3.5.2.2 Perancangan Tampilan Menu Pencarian
Untuk pencarian obat dapat berdasarkan jenis obat, indikasi,
kontraindikasi, bentuk sediaan, dan efek samping. Pilih kata kunci yang
diinginkan untuk pencariannya setelah itu masukkan kata kuncinya dan tekan
tombol cari. Tampilannya :
> < Informasi Obat Generik X
Utama || Daftar Isi || Tamplate 1 || Tamplate 2|| Tamplate 3 Pencarian Obat Hasil Pencarian Nama obat…… Nama obat……
Gambar 3.26 Perancangan tampilan menu pencarian pada web browser
3.5.2.3 Perancangan Menu Tamplate
Pada menu tampilan terdapat pilihan beberapa tamplate, menu ini
memberikan informasi obat generik dalam format dokumen XML yang telah
disajikan dengan CSS sebagai pemodelan datanya. Pilihan template merupakan
pilihan CSS sebagai style sheet dari dokumen XML yang menghasilkan informasi
obat generik.
Kata Kunci
CARI
Pilih \/
3.5.2.4 Perancangan Menu Daftar Isi
Menu daftar isi berisi daftar isi dari jenis obat sampai nama obat yang
dilengkapi informasi dosisnya, efeksampingnya, bentuksediaannya, indikasinya,
dan kontraindikasinya.
3.6 Analisis Kebutuhan Sistem
3.6.1 Kebutuhan Perangkat Lunak (Software)
1. Admin Side.
a. Sistem Operasi Linux RadHat
b. PHP
c. Database MySQL
d. Server Web Apache
2. User Side.
a. Sistem Operasi Linux RadHat
b. Browser Mozilla Firefox.
3.6.2 Kebutuhan Perangkat Keras (Hardware)
Server / Client Side.
a. Processor IP-III.
b. Memory 128 MB SDRAM.
c. HDD 20 GB 7200 RPM.
d. VGA Card 64MB.
BAB IV
IMPLEMENTASI SISTEM
Pada aplikasi untuk penyediaan informasi obat generik ini, terdapat dua
pembagian area, yaitu admin area dan user area. Admin area adalah halaman-
halaman yang hanya dapat dilihat oleh admin saja dan admin dapat mengakses
data–data informasi obat generik, manambah data–data informasi obat generik,
mengedit data–data informasi obat generik dan menghapus data–data informasi
obat generik dalam database server. Sedangkan user area adalah halaman-
halaman yang dapat dilihat oleh user dan administrator. User ini dapat melakukan
operasi pencarian untuk mencari data–data informasi obat generik berdasarkan
nama jenis obat, indikasi, kontra indikasi, bentuk sediaan, bentuk sediaan.
Sistem ini menggunakan MySQL sebagai DBMSnya. Oleh karena itu,
program ini bisa berjalan jika telah terkoneksi dengan MySQL. Adapun skrip
untuk melakukan koneksi dengan MySQL adalah sebagai berikut:
<?php $hostname_dbMySQL = "localhost"; $database_dbMySQL = "generik"; $dbMySQL = mysql_pconnect($hostname_dbMySQL) or die(mysql_error()); mysql_select_db($database_dbMySQL, $dbMySQL); ?>
Skrip diatas digunakan untuk koneksi ke database. Variabel
$hostname_dbMySQL merupakan variabel yang digunakan untuk menyimpan
nama hostname tempat database dan $database_dbMySQL digunakan untuk
menyimpan nama database yang akan diakses. Untuk mengadakan koneksi ke
database maka digunakan perintah mysql_pconnect() dengan skrip:
$dbMySQL=mysql_pconnect($hostname_dbMySQL) or die(mysql_error());
Sementara untuk memilih database maka menggunakan perintah
mysql_select_db($database_dbMySQL,$dbMySQL);
4.1 Admin Area
4.1.1 Form Login Administrator
Form login administrator ( index.php ) ini digunakan khusus bagi administrator
dalam melakukan update data., jadi tidak semua orang bisa mengakses form ini.
Administrator harus melakukan login dengan mengisi nama administrator dan
password. Jika nama administrator dan password yang dimasukkan sesuai dengan
data administrator yang terdapat dalam database maka akan ditampilkan form
menu utama administrator ( utama.php ). Tampilan form utama untuk
administrator ini nampak pada Gambar 4.1.
Gambar 4.1 Tampilan Form login untuk administrator
Program untuk melakukan input nama administrator dan password
sekaligus pengecekan data yang dimasukkan administrator dengan data yang ada
dalam database adalah sebagai berikut ini :
if (isset($_POST['submit_login'])){ $query = "SELECT 1 FROM admin WHERE nama_admin='".$_POST['PHP_AUTH_USER']."' and password='".$_POST['PHP_AUTH_PW']."' "; $auth = mysql_fetch_array(mysql_query($query)); if ($auth[0]!="1") { header("Location: index.php"); exit; } else $_SESSION['PHP_AUTH_USER']=$_POST['PHP_AUTH_USER']; $_SESSION['PHP_AUTH_PW']=$_POST['PHP_AUTH_PW']; header("Location: utama.php"); exit; } elseif (isset($_GET['logout'])) { session_destroy(); }
Penjelasan dari program di atas adalah jika administrator telah mengisi
nama administrator dan password, kemudian menekan tombol login maka secara
otomatis program akan mengecek data yang dimasukkan administrator dengan
data yang ada dalam database admin. Jika data yang dimasukkan administrator
tersebut sesuai dengan data yang ada dalam database admin maka akan dilakukan
proses session. Fungsi session di atas untuk mengenali administrator dalam
melakukan login ke dalam sistem dan hanya administrator yang mempunyai nama
administrator dan password yang benar yang bisa mengakses sistem tersebut.
Jika program sudah melakukan proses session maka program akan
berpindah ke halaman menu utama administrator ( utama.php ).
Jika input nama administrator dan password tidak sesuai dengan data
yang berada dalam database admin maka administrator tidak bisa masuk ke
menu utama administrator tetapi akan kembali ke menu login.
4.1.2 Form utama administrator
Pada menu administrator ini akan ditampilkan jika input nama
administrator dan password sesuai dengan data yang ada dalam database admin.
Pada menu utama administrator ini terdapat link ke halaman lain, yaitu :
1. Jenis Obat, yang berfungsi bagi administrator untuk menambah data jenis
obat baru, edit maupun delete data jenis obat yang telah ada. Di halaman
ini juga terdapat link ke halaman subjenis obat.
2. Indikasi, yang berfungsi bagi administrator untuk menambah data indikasi
baru, mengedit dan mendelete data indikasi obat.
3. Kontra Indikasi, yang berfungsi bagi administrator untuk menambah data
kontra indikasi baru, mengedit dan mendelete data kontra indikasi obat.
4. Dosis, yang berfungsi bagi administrator untuk menambah data dosis baru,
mengedit dan mendelete data dosis obat.
5. Bentuk Sediaan, yang berfungsi bagi administrator untuk menambah data
bentuk sediaan baru, mengedit dan mendelete data bentuk sediaan obat.
6. Efek Samping, yang berfungsi bagi administrator untuk menambah data
bentuk sediaan baru, mengedit dan mendelete data bentuk sediaan obat.
Tampilan form utama dapat dilihat pada Gambar 4.2 berikut ini.
Gambar 4.2 Tampilan Form Utama untuk administrator
4.1.3 Form Jenis Obat
Pada form ini terdapat beberapa link untuk menghubungkan ke halaman
subjenis obat, tambah jenis obat dan edit jenis obat, dan juga dilengkapi dengan
fasilitas delete. Halaman ini menampilkan semua jenis obat yang ada, dengan
program sebagai berikut :
$query = "SELECT id_jenis, nama_jenis FROM jenis_obat ORDER BY id_jenis ASC $limit";
Program yang digunakan untuk delete data jenis obat adalah sebagai
berikut ini :
if(isset($_POST['submit_delete']) && !empty($_POST['del_id'])){ while(list($key, $value) = each($_POST['del_id'])){ $query = "DELETE FROM jenis_obat WHERE id_jenis='".$value."'"; mysql_query($query) or die(mysql_error()); }
} Tampilan form jenis obat dapat dilihat pada Gambar 4.3 berikut ini.
Gambar 4.3 Tampilan Form Jenis Obat
4.1.4 Form Tambah Jenis Obat
Form tambah jenis obat ( tambah_jenis.php ) ini digunakan oleh
administrator untuk menambah data jenis obat baru. Pada menu ini terdapat
tombol simpan untuk menambahkan data yang sudah dimasukkan ke dalam
database dan tombol kembali digunakan untuk kembali ke menu jenis obat (
jenis_obat.php ). Tampilan form tambah jenis obat dapat dilihat pada Gambar 4.4.
Gambar 4.4 Tampilan Form Tambah Jenis Obat
Pada form ini pada saat selesai mengisi data id_jenis dan nama_jenis
kemudian menekan tombol simpan maka secara otomatis program akan
menjalankan insert data ke dalam database jenis_obat. Program insert data
tersebut adalah sebagai berikut ini :
if (isset($_POST['Simpan']) && !empty($_POST['id'])){
$id = htmlentities($_POST['id']);
$nama = (htmlentities($_POST['nama']));
$query = "INSERT INTO jenis_obat
VALUES ('".$id."', '".$nama."')";
mysql_query($query) or die (mysql_error());
}
4.1.5 Form Edit Jenis Obat
Form edit jenis obat ( edit_jenis.php ) ini digunakan oleh administrator
untuk mengedit data jenis obat. Pada menu ini terdapat tombol simpan untuk
menyimpan data yang sudah diedit ke dalam database dan tombol kembali
digunakan untuk kembali ke menu jenis obat ( jenis_obat.php ). Tampilan form
edit jenis obat dapat dilihat pada Gambar 4.5
Gambar 4.5 Tampilan Form Edit Jenis Obat
Pada form ini pada saat selesai mengedit data nama_jenis kemudian
menekan tombol simpan maka secara otomatis program akan menjalankan update
data ke dalam database jenis_obat. Program update data tersebut adalah sebagai
berikut ini :
if (isset($_POST['Update']) ) { $id = htmlentities($_POST['id']); $nama = (htmlentities($_POST['nama'])); $query="UPDATE $table SET id_jenis='$id', nama_jenis='$nama' WHERE id_jenis = '".$_POST['id']."'"; mysql_query($query) or die ( mysql_error()); }
4.1.6 Form SubJenis Obat
Pada form ini terdapat beberapa link untuk menghubungkan ke halaman
sub2jenis obat, tambah subjenis obat dan edit subjenis obat, dan juga dilengkapi
dengan fasilitas delete. Halaman ini menampilkan semua subjenis obat yang ada,
dengan program sebagai berikut :
$query = "SELECT id_subjenis, nama_subjenis FROM subjenis_obat
ORDER BY id_subjenis ASC $limit";
Program yang digunakan untuk delete data subjenis obat adalah sebagai
berikut ini :
if(isset($_POST['Hapus']) && !empty($_POST['del_sid'])){ while(list($key, $value) = each($_POST['del_sid'])){ $query = "DELETE FROM subjenis_obat WHERE id_subjenis='".$value."'"; mysql_query($query) or die(mysql_error()); $query1 = "DELETE FROM sub2jenis_obat WHERE id_subjenis='".$value."'"; mysql_query($query1) or die(mysql_error()); $query_select = "SELECT subjenis_obat.id_subjenis, sub2jenis_obat.id_subjenis, sub2jenis_obat.id_sub2jenis FROM subjenis_obat, sub2jenis_obat WHERE subjenis_obat.id_subjenis = sub2jenis_obat.id_subjenis AND subjenis_obat.id_subjenis='".$value."'"; $hasil = mysql_query($query_select) or die(mysql_error()); } }
Tampilan form subjenis obat dapat dilihat pada Gambar 4.6 berikut ini.
Gambar 4.6 Tampilan Form SubJenis Obat
4.1.7 Form Tambah SubJenis Obat
Form tambah subjenis obat ( tambah_subjenis.php ) ini digunakan oleh
administrator untuk menambah data subjenis obat baru. Pada menu ini terdapat
tombol simpan untuk menambahkan data yang sudah dimasukkan ke dalam
database dan tombol kembali digunakan untuk kembali ke menu subjenis obat (
subjenis_obat.php ). Tampilan form tambah subjenis obat dapat dilihat pada
Gambar 4.7
Gambar 4.7 Tampilan Form Tambah SubJenis Obat
Pada form ini pada saat selesai mengisi data id_subjenis, nama_subjenis,
dan ket_subjenis kemudian menekan tombol simpan maka secara otomatis
program akan menjalankan insert data ke dalam database subjenis_obat. Program
insert data tersebut adalah sebagai berikut ini :
if (isset($_POST['Simpan']) && !empty($_POST['id_jenis'])){
$id_jenis = htmlentities($_POST['id_jenis']);
$id_subjenis = htmlentities($_POST['id_subjenis']);
$nama_subjenis = (htmlentities($_POST['nama_subjenis']));
$ket_subjenis = (htmlentities($_POST['ket_subjenis']));
$query = "INSERT INTO subjenis_obat
VALUES ('".$id_jenis."',
'".$id_subjenis."', '".$nama_subjenis."', '".$ket_subjenis."')";
mysql_query($query) or die (mysql_error());
}
4.1.8 Form Edit SubJenis Obat
Form edit subjenis obat ( edit_subjenis.php ) ini digunakan oleh
administrator untuk mengedit data subjenis obat. Pada menu ini terdapat tombol
simpan untuk menyimpan data yang sudah diedit ke dalam database dan tombol
kembali digunakan untuk kembali ke menu subjenis obat ( subjenis_obat.php ).
Tampilan form edit subjenis obat dapat dilihat pada Gambar 4.8
Gambar 4.8 Tampilan Form Edit SubJenis Obat
Pada form ini pada saat selesai mengedit data nama_subjenis dan
ket_subjenis kemudian menekan tombol simpan maka secara otomatis program
akan menjalankan update data ke dalam database subjenis_obat. Program update
data tersebut adalah sebagai berikut ini :
if (isset($_POST['Update']) ) { $id_sub = htmlentities($_POST['id_sub']); $nama_sub = (htmlentities($_POST['nama_sub'])); $ket_sub = (htmlentities($_POST['ket_sub'])); $query="UPDATE $table SET id_subjenis='$id_sub', nama_subjenis='$nama_sub', ket_subjenis='$ket_sub' WHERE id_jenis = '".$_POST['id']."' AND id_subjenis= '".$_POST['id_sub']."'"; mysql_query($query) or die ( mysql_error()); }
4.1.9 Form Sub2Jenis Obat
Pada form ini terdapat beberapa link untuk menghubungkan ke halaman
obat, tambah subjenis obat dan edit subjenis obat, dan juga dilengkapi dengan
fasilitas delete. Halaman ini menampilkan semua subjenis obat yang ada, dengan
program sebagai berikut :
$query = "SELECT id_sub2jenis, nama_sub2jenis, ket_sub2jenis FROM sub2jenis_obat ORDER BY id_sub2jenis ASC $limit";
Program yang digunakan untuk delete data subjenis obat adalah sebagai
berikut ini :
if (isset($_POST["Hapus"]) && !empty($_POST['del_s2id'])){ while(list($key,$value) = each($_POST['del_s2id'])) { $query = "DELETE FROM sub2jenis_obat WHERE id_sub2jenis = '".$value."'"; mysql_query($query) or die(mysql_error()); $query2 = "DELETE FROM obat WHERE id_sub2jenis = '".$value."'"; mysql_query($query2) or die(mysql_error()); } }
Tampilan form sub2jenis obat dapat dilihat pada Gambar 4.9 berikut ini.
Gambar 4.9 Tampilan Form Sub2Jenis Obat
4.1.10 Form Tambah Sub2Jenis Obat
Form tambah sub2jenis obat ( tambah_su2bjenis.php ) ini digunakan oleh
administrator untuk menambah data sub2jenis obat baru. Pada menu ini terdapat
tombol simpan untuk menambahkan data yang sudah dimasukkan ke dalam
database dan tombol kembali digunakan untuk kembali ke menu sub2jenis obat (
su2bjenis_obat.php ). Tampilan form tambah su2bjenis obat dapat dilihat pada
Gambar 4.10
Gambar 4.10 Tampilan Form Tambah Sub2Jenis Obat
Pada form ini pada saat selesai mengisi data id_sub2jenis, nama_subjenis,
dan ket_sub2jenis kemudian menekan tombol simpan maka secara otomatis
program akan menjalankan insert data ke dalam database subjenis_obat. Program
insert data tersebut adalah sebagai berikut ini :
if (isset($_POST['Simpan']) && !empty($_POST['id_jenis'])){
$id_subjenis = htmlentities($_POST['id_subjenis']);
$id_sub2jenis = htmlentities($_POST['id_sub2jenis']);
$nama_sub2jenis =
(htmlentities($_POST['nama_sub2jenis']));
$ket_sub2jenis = (htmlentities($_POST['ket_sub2jenis']));
$query = "INSERT INTO sub2jenis_obat
VALUES ('".$id_subjenis."',
'".$id_sub2jenis."', '".$nama_sub2jenis."',
'".$ket_sub2jenis."')";
mysql_query($query) or die (mysql_error());
}
4.1.11 Form Edit Sub2Jenis Obat
Form edit sub2jenis obat ( edit_sub2jenis.php ) ini digunakan oleh
administrator untuk mengedit data sub2jenis obat. Pada menu ini terdapat tombol
simpan untuk menyimpan data yang sudah diedit ke dalam database dan tombol
kembali digunakan untuk kembali ke menu sub2jenis obat ( sub2jenis_obat.php ).
Tampilan form edit sub2jenis obat dapat dilihat pada Gambar 4.11
Gambar 4.11 Tampilan Form Edit Sub2Jenis Obat
Pada form ini pada saat selesai mengedit data nama_sub2jenis dan
ket_sub2jenis kemudian menekan tombol simpan maka secara otomatis program
akan menjalankan update data ke dalam database sub2jenis_obat. Program
update data tersebut adalah sebagai berikut ini :
if (isset($_POST['Update']) ) { $id_sub = htmlentities($_POST['id_subjenis']); $id_sub2jenis = htmlentities($_POST['id_sub2jenis']); $nama_sub2jenis = (htmlentities($_POST['nama_sub2jenis'])); $ket_sub2jenis = (htmlentities($_POST['ket_sub2jenis'])); $query="UPDATE sub2jenis_obat SET id_sub2jenis='$id_sub2jenis', nama_sub2jenis='$nama_sub2jenis', ket_sub2jenis='$ket_sub2jenis' WHERE id_subjenis = '".$_POST['id_sub']."' AND id_sub2jenis= '".$_POST['id_sub2jenis']."'"; mysql_query($query) or die ( mysql_error()); }
4.1.12 Form Obat
Pada form ini terdapat beberapa link untuk menghubungkan ke halaman
tambah obat dan edit obat, dan juga dilengkapi dengan fasilitas delete. Program
yang digunakan untuk delete data adalah sebagai berikut ini :
if (isset($_POST["Hapus"]) && !empty($_POST['del_oid'])){ while(list($key,$value) = each($_POST['del_oid'])) { $query = "DELETE FROM obat WHERE id_obat = '".$value."'"; mysql_query($query) or die(mysql_error()); } }
Tampilan form obat dapat dilihat pada Gambar 4.12 berikut ini.
Gambar 4.12 Tampilan Obat
4.1.13 Form Tambah Obat
Form tambah obat ( tambah_obat ) ini digunakan oleh administrator untuk
menambah data obat baru. Pada menu ini terdapat tombol simpan untuk
menambahkan data yang sudah dimasukkan ke dalam database dan tombol
kembali digunakan untuk kembali ke menu obat (obat.php ). Tampilan form
tambah obat dapat dilihat pada Gambar 4.13
Gambar 4.13 Tampilan Form Tambah Obat
Pada form ini pada saat selesai mengisi data id_obat, dan nama_obat
kemudian menekan tombol simpan maka secara otomatis program akan
menjalankan insert data ke dalam database obat. Program insert data tersebut
adalah sebagai berikut ini :
if (isset($_POST['Simpan']) && !empty($_POST['id_obat'])){
$id_subjenis = htmlentities($_POST['id_subjenis']);
$id_sub2jenis = htmlentities($_POST['id_sub2jenis']);
$id_obat = htmlentities($_POST['id_obat']);
$nama_obat = (htmlentities($_POST['nama_sub2jenis']));
$query = "INSERT INTO obat
VALUES ('".$s2id."', '".$id_obat."',
'".$nama_obat."')";
mysql_query($query) or die (mysql_error());
}
4.1.14 Form Edit Obat
Form edit obat ( edit_obat.php ) ini terdapat link ke halaman indikasi,
kontraindikasi, dosis, bentuksediaan, dan efeksamping. Tampilan form edit obat
dapat dilihat pada Gambar 4.14
Gambar 4.14 Tampilan Form Edit Obat
4.1.15 Form Edit Indikasi Obat
Form edit indikasi obat ( eo_indikasi.php ) ini digunakan oleh
administrator untuk mengisi maupun mengedit data indikasi suatu obat dengan
men-checklist indikasi yang merupakan keterangan indikasi dari obat tersebut.
Pada menu ini terdapat tombol simpan untuk menyimpan data yang sudah diisi
maupun diedit ke dalam database dan tombol kembali digunakan untuk kembali
ke menu obat (obat.php ). Tampilan form edit indikasi obat dapat dilihat pada
Gambar 4.15
Gambar 4.15 Tampilan Form Edit Indikasi Obat
Pada form ini pada saat selesai men-checklist ket_indikasi kemudian
menekan tombol simpan maka secara otomatis program akan menjalankan insert
data ke dalam database indikasi. Program insert data tersebut adalah sebagai
berikut ini :
if (isset($_POST['Simpan']) && !empty($_POST['cek_id'])){ $query = "DELETE FROM memiliki_indikasi WHERE id_obat = '".$oid."'"; mysql_query($query) or die(mysql_error()); while(list($key, $value) = each($_POST['cek_id'])) { $q = "INSERT INTO memiliki_indikasi VALUES ('".$oid."','".$value."')"; $hasil = mysql_query($q) or die(mysql_error()); } }
4.1.16 Form Edit KontraIndikasi Obat
Form edit kontraindikasi obat ( eo_kontra.php ) ini digunakan oleh
administrator untuk mengisi maupun mengedit data kontraindikasi suatu obat
dengan men-checklist kontraindikasi yang merupakan keterangan kontraindikasi
dari obat tersebut. Pada menu ini terdapat tombol simpan untuk menyimpan data
yang sudah diisi maupun diedit ke dalam database dan tombol kembali digunakan
untuk kembali ke menu obat (obat.php ). Tampilan form edit kontraindikasi obat
dapat dilihat pada Gambar 4.16
Gambar 4.16 Tampilan Form Edit kontraIndikasi Obat
Pada form ini pada saat selesai men-checklist ket_kontra kemudian
menekan tombol simpan maka secara otomatis program akan menjalankan insert
data ke dalam database kontraindikasi. Program insert data tersebut adalah
sebagai berikut ini :
if (isset($_POST['Simpan']) && !empty($_POST['cek_id'])){ $query = "DELETE FROM memiliki_kontra WHERE id_obat = '".$oid."'"; mysql_query($query) or die(mysql_error()); while(list($key, $value) = each($_POST['cek_id'])) { $q = "INSERT INTO memiliki_kontra VALUES ('".$oid."','".$value."')"; $hasil = mysql_query($q) or die(mysql_error()); } }
4.1.17 Form Edit EfekSamping Obat
Form edit efeksamping obat ( eo_efek.php ) ini digunakan oleh
administrator untuk mengisi maupun mengedit data efeksamping suatu obat
dengan men-checklist efeksamping yang merupakan keterangan efeksamping dari
obat tersebut. Pada menu ini terdapat tombol simpan untuk menyimpan data yang
sudah diisi maupun diedit ke dalam database dan tombol kembali digunakan untuk
kembali ke menu obat (obat.php ). Tampilan form edit efeksamping obat dapat
dilihat pada Gambar 4.17
Gambar 4.17 Tampilan Form Edit efeksamping Obat
Pada form ini pada saat selesai men-checklist ket_efek kemudian menekan
tombol simpan maka secara otomatis program akan menjalankan insert data ke
dalam database efeksamping. Program insert data tersebut adalah sebagai berikut :
if (isset($_POST['Simpan']) && !empty($_POST['cek_id'])){ $query = "DELETE FROM memiliki_efek WHERE id_obat = '".$oid."'"; mysql_query($query) or die(mysql_error()); while(list($key, $value) = each($_POST['cek_id'])) { $q = "INSERT INTO memiliki_efek VALUES ('".$oid."','".$value."')"; $hasil = mysql_query($q) or die(mysql_error()); } }
4.1.18 Form Edit BentukSediaan Obat
Form edit bentuksediaan obat ( eo_sediaan.php ) ini digunakan oleh
administrator untuk mengisi maupun mengedit data bentuksediaan obat suatu obat
dengan men-checklist bentuksediaan obat yang merupakan keterangan
bentuksediaan obat dari obat tersebut. Pada menu ini terdapat tombol simpan
untuk menyimpan data yang sudah diisi maupun diedit ke dalam database dan
tombol kembali digunakan untuk kembali ke menu obat (obat.php ). Tampilan
form edit bentuksediaan obat dapat dilihat pada Gambar 4.18
Gambar 4.18 Tampilan Form Edit Bentuk Sediaan Obat
Pada form ini pada saat selesai men-checklist ket_kontra kemudian
menekan tombol simpan maka secara otomatis program akan menjalankan insert
data ke dalam database kontraindikasi. Program insert data tersebut adalah
sebagai berikut ini :
if (isset($_POST['Simpan']) && !empty($_POST['cek_id'])){ $query = "DELETE FROM memiliki_bentuk WHERE id_obat = '".$oid."'"; mysql_query($query) or die(mysql_error()); while(list($key, $value) = each($_POST['cek_id'])) { $q = "INSERT INTO memiliki_bentuk VALUES ('".$oid."','".$value."')"; $hasil = mysql_query($q) or die(mysql_error()); } }
4.2 Browser Area
4.2.1 Form Utama
Form Utama adalah form yang pertama kali ditampilkan pada saat user
mengakses e-book informasi obat generik. Pada form ini terdapat informasi
pengertian obat generik, juga terdapat menu pencarian untuk mencari nama obat
berdasarkan beberapa pilihan kata kunci. Selain menu cari terdapat menu daftar isi
untuk menampilkan keseluruhan informasi obat generik dan menu template untuk
menampilkan informasi obat generik dalam bentuk format xml dan dalam
tampilan css.
Tampilan form utama dapat dilihat pada gambar 4.19 berikut :
Gambar 4.19 Tampilan Form Utama
4.2.2 Form Pencarian
Untuk proses pencarian dapat berdasarkan beberapa pilihan kata kunci,
yaitu berdasarkan jenis obat, indikasi, kontraindikasi, bentuk sediaan, dan
efeksamping. Tampilan form pencarian adalah sebagai berikut :
Gambar 4.20 Tampilan Form Pencarian
Proses pencarian akan menghasilkan hasil pencarian berupa nama obat
yang dilengkapi dengan informasi indikasi, kontraindikasi, dosis, efeksamping,
dan bentuksediaan. Program pencarian nama obat adalah sebagai berikut,
misalnya berdasarkan jenis obat berikut :
$query = $query . " AND jo.nama_jenis like '%$keyword%'";
4.2.3 Form Daftar Isi
Form ini menampilkan keseluruhan informasi obat generik dengan
memilih menu Daftar Isi. Informasi mengenai jenis obat, subjenis obat, sub2jenis
obat, nama obat yang dilengkapi dengan keterangan indikasi, kontraindikasi,
dosis, efeksamping, dan bentuksediaan.
Gambar 4.21 Tampilan Form Daftar Isi
4.2.4 Form Template
Form template merupakan halaman yang berisi informasi obat generik
yang dihasilkan dari sebuah dokumen XML dengan tampilan data menggunakan
CSS. Pembentukan dokumen XMLnya adalah sebagai berikut :
<? $root = $doc->add_root("generik");
if($nama_jenis != $row['nama_jenis']) { $nama_jenis=$row['nama_jenis']; $ID_jenis_parent = $row['id_jenis']; $record_cv = $root->new_child("jenis_obat", ""); $record_cv->set_attribute("id_jenis", "$ID_jenis_parent"); $record_cv->new_child("nama_jenis", "$nama_jenis"); }
if ($nama_subjenis != $row['nama_subjenis']) { $nama_subjenis = $row['nama_subjenis']; $ID_subjenis = $row['id_subjenis']; $record_sj = $record_cv->new_child("sub_jenis", ""); $record_sj->set_attribute("id_subjenis", "$ID_subjenis"); $record_sj->new_child("nama_subjenis", "$nama_subjenis"); $record_sj->new_child("ket_subjenis", $row['ket_subjenis']); }
.
.
.
print $doc->dumpmem(); ?>
Hasil dari dokumen XML tersebut adalah :
<?xml version="1.0" encoding="iso-8859-1" ?> - <generik>
- <jenis_obat id="1"> <nama_jenis>obat yang bekerja pada sistem saluran cerna</nama_jenis> - <subjenis_obat id="1.1"> <nama_subjenis>antitukak</nama_subjenis> <ket_subjenis>meringankan atau menghilangkan
gejala,mempercepat penyembuhan, mencegah komplikasi yang serius,mencegah kambuh.</ket_subjenis>
- <sub2jenis_obat id="1.1.2"> <nama_sub2jenis>antagonis reseptor-H2</nama_sub2jenis> <ket_sub2jenis>menyembuhkan tukak lambung dan
duodenum dengan cara mengurangi sekresi asam lambung sebagai akibat hambatan reseptor-H2.</ket_sub2jenis>
- <obat id="f1"> <nama_obat>famotidin</nama_obat>
- <indikasi><ket_indikasi>tukaklambung</ket_indikasi> <ket_indikasi>tukakduodenum</ket_indikasi>
</indikasi>- <kontraindikasi> <ket_kontra>gangguan ginjal</ket_kontra> <ket_kontra>gangguan hati</ket_kontra> <ket_kontra>hamil dan menyusui</ket_kontra>
</kontraindikasi>- <efeksamping> <ket_efek>pusing</ket_efek> <ket_efek>nyeri otot</ket_efek> <ket_efek>keadaan bingung yang reversibel</ket_efek> <ket_efek>kerusakan hati yang reversibel</ket_efek>
</efeksamping>- <dosis> <dosis_anak>40 mg 4 kali sehari</dosis_anak> <dosis_dewasa>80 mg 4 kali sehari</dosis_dewasa>
</dosis>- <bentuksediaan> <ket_bentuk>tablet 20 mg</ket_bentuk> <ket_bentuk>tablet 40 mg</ket_bentuk>
</bentuksediaan> </obat>
</sub2jenis_obat> </subjenis_obat>
</jenis_obat> </generik>
Untuk menampilkan dokumen XML dengan menggunakan css sebagai
stylesheet-nya menggunakan perintah berikut ini :
$css = $doc->create_processing_instruction( 'xml-stylesheet', 'type="text/css" href="./css/satu.css"'); $doc->append_child($css);
Berikut adalah pilihan tampilan template dari satu dokumen xml dengan
beberapa css sebagai stylesheetnya :
Gambar 4.22 Tampilan Form Template 1
Gambar 4.23 Tampilan Form Template 2
Gambar 4.24 Tampilan Form Template 3
BAB V
ANALISA HASIL IMPLEMENTASI
Secara umum aplikasi ini dapat berjalan dengan baik, sehingga dapat
diambil analisa dari hasil implementasinya adalah sebagai berikut :
5.1 Kelebihan Program dan Kekurangan Program
Penggunaan dari sistem ini sangat mudah, user mendapatkan informasi
mengenai obat generik yang dilengkapi dengan dosis, indikasi, kontraindikasi,
bentuksediaan, dan efeksamping. Juga dapat melakukan pencarian informasi
obat generik berdasarkan beberapa pilihan kategori untuk kata kunci. Dapat
melihat informasi obat generik yang disajikan dalam format XML dengan
tampilan data CSS dalam beberapa pilihan template yang disediakan.
Sistem ini memiliki kekurangan untuk pencarian obat yang kata kuncinya
terdiri dari dua suku kata tidak bisa dibalik, karena tidak akan menghasilkan hasil
pencarian. Misalnya pencarian berdasarkan efeksamping dengan kata kunci sakit
kepala akan menghasilkan hasil pencarian, tetapi jika dibalik menjadi kepala sakit
tidak akan menghasilkan hasil pencarian.
5.2 Analisa Manfaat
Sistem ini dapat membantu pihak-pihak yang berkaitan dalam bidang farmasi
dan kesehatan yang ingin memiliki pengetahuan dan informasi mengenai obat
generik. Hal ini disebabkan aplikasi penyediaan informasi obat generik
menyediakan fasilitas untuk mendapatkan informasi mengenai obat generik
dengan mudah yang diimplementasikan di website user. User dapat
memperoleh informasi melalui pencarian data maupun data lengkap dalam
format XML yang disajikan dalam tampilan CSS. Selain itu user dapat memilih
tampilan melalui template yang telah disediakan.
5.3 Analisa Teknologi
Perangkat lunak PHP dan DBMS MySQL digunakan untuk menampung
data informasi obat generik dan menampilkannya pada halaman administrator.
DBMS MySQL yang diletakkan pada server cukup mendukung dalam mengelola
data. Perangkat lunak PHP dan XML sangat mendukung digunakan untuk
mengubah data obat generik dalam database menjadi format xml. Dengan
penggunaan dokumen XML dalam sistem ini sangat mendukung untuk studi kasus
obat generik yang datanya terstruktur. Karena XML memang menyediakan format
untuk data terstruktur.
Sistem operasi yang digunakan adalah Linux Redhat, dengan linux
pembuat aplikasi dimudahkan karena web server apache, database mysql, php,
dan web browser mozilla telah terinstal bersamaan dengan menginstal linux..
Linux juga mensupport berbagai macam program, dalam hal ini dokumen xml
dalam php yang tampilan datanya menggunakan css.
BAB VI
KESIMPULAN DAN SARAN
6.1 Kesimpulan
Kesimpulan yang dapat diambil dari pembuatan sistem aplikasi XML
untuk format e-Books dengan studi kasus database informasi obat generik ini
adalah secara umum aplikasi ini dapat berjalan dengan baik, sehingga tidak
menutup kemungkinan digunakan dalam keadaan sesungguhnya.
Perangkat lunak PHP dan DBMS MySQL digunakan untuk menampung
data informasi obat generik dan menampilkannya pada halaman administrator.
DBMS MySQL yang diletakkan pada server cukup mendukung dalam mengelola
data. Perangkat lunak PHP dan XML sangat mendukung digunakan untuk
mengubah data obat generik dalam database menjadi format xml.
6.2 Saran – Saran
Saran yang dapat diberikan adalah sebagai berikut :
1. Kelemahan CSS untuk memformat XML hanya terbatas berdasarkan
elemen-elemennya saja. Dan CSS hanya mampu bekerja dilingkungan
browser HTML. Untuk dapat menghasilkan format dokumen yang lebih
beragam, maka diusulkan untuk menggunakan XSLT.
2. Untuk proses pencarian dengan inputan dua kata kunci, yang tidak dapat
memberikan hasil pencarian jika inputan dua kata kunci tersebut dibalik,
disarankan untuk menggunakan fulltext indexing.
3. Hasil query dari database dapat langsung diformat dengan XML.
DAFTAR PUSTAKA
Utdirartatmo, Firrar. Belajar Pemrograman Web Pada XML, Yogyakarta : Andi
Offset Yogyakarta, 2002.
Kadir, Abdul. Pemrograman Web Dinamis Menggunakan PHP, Yogyakarta :
Andi Offset Yogyakarta, 2002.