sistem informasi prasarana lalu lintas berbasis web...
TRANSCRIPT
i
SISTEM INFORMASI PRASARANA LALU LINTAS
BERBASIS WEB
(Studi Kasus di Dinas Perhubungan Propinsi DIY)
Skripsi
Dikerjakan Untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Teknik Jurusan Teknik Informatika
Disusun Oleh :
Dadittya Adi Nugroho
NIM. 025314076
PROGRAM STUDI TEKNIK INFORMATIKA
JURUSAN TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2007
WWEEBB BBAASSEEDD TTRRAAFFFFIICC IINNFFRRAASSTTRRUUCCTTUURREE
IINNFFOORRMMAATTIIOONN SSYYSSTTEEMM (( CCaassee SSttuuddyy iinn DDiinnaass PPeerrhhuubbuunnggaann DDIIYY PPrroovviinnccee ))
A Thesis
Presented as Partial Fulfillment of the Requirements
To Obtain the Sarjana Teknik Degree
in Informatics Engineering
by :
Dadittya Adi Nugroho
NIM. 025314076
INFORMATICS ENGINEERING STUDY PROGRAM
DEPARTMENT OF INFORMATICS ENGINEERING
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2007
i
v
PERSEMBAHAN
KUPERSEMBAHKAN SKRIPSI INI UNTUK:
Untuk Mama dan Papa tercinta, yang selalu
mengasihiku.
Kakakku mas Pungki tersayang.
Itta Kumalasari.W yang selalu ada untukku dan selalu
menjadi pemacu semangatku
vi
MOTTO
“Jangan jadikan kegagalan sebagai akhir dari segalanya
karena sesuatu yang indah akan datang pada
waktunya”
“Jangan menangisi apa yang kamu tidak punya,
nikmatilah dan syukurilah apa yang kamu punya
sekarang”
vii
ABSTRAKSI
Pendataan prasarana lalu lintas di DIY seperti jalan dan prasarana-
parasarana lain seperti rambu-rambu lalu lintas, marka jalan, paku marka, warning
light, cermin tikungan dll yang dilakukan oleh dinas Perhubungan DIY masih di
data dengan menggunakan Microsoft Access dan masih bersifat single user.
Melihat permasalahan di atas saya bermaksud membuat sebuah sistem
informasi berbasis web untuk melakukan pendataan prasarana lalu lintas tersebut
dan menggunakan bahasa pemograman PHP dan untuk databasenya menggunakan
MySql.. Sistem informasi yang akan saya buat akan bersifat multi user dan
menggunakan jaringan internet sehingga tidak hanya user yang bertugas
menginputkan data saja yang dapat melihat data-data yang ada tetapi data-data
yang ada juga dapat dlihat oleh user lain yang diberi hak oleh admin, masyarakat
umum juga dapat mengakses situs ini untuk memberikan laporan-laporan tentang
kerusakan-kerusakan pada prasarana-prasarana lalu lintas tersebut atau dapat juga
memberikan keluhan-keluhan atas ketidaknyamanan dalam penggunaan
parasarana-prasarana lalu lintas tersebut.
Secara umum Sistem Informasi Prasarana Lalu Lintas Berbasis
Web ini dapat berjalan dengan baik sehingga dapat digunakan dalam kondisi
sesungguhnya. Kemampuan dari sistem ini antara lain, sistem dapat
mempermudah bagian Lalu Lintas dalam melakukan penyimpanan dan pencarian
data prasarana lalu lintas, sistem dapat menyediakan fasilitas kepada masyarakat
umum untuk menyampaikan pengaduan kerusakan atau ketidaknyamanan dalam
penggunaan prasarana lalu lintas, sistem dapat memudahkan administrator dalam
melakukan update data prasarana lalu lintas dan sistem dapat memberikan
laporan-laporan yang berkaitan dengan data prasarana lalu lintas. Sedangkan
kekurangan – kekurangan dari sistem ini antara lain keamanan database masih
belum terjamin, tampilan masih sederhana, fasilitas Error Handling masih kurang
dan pendataan simpang masih kurang jelas lokasi ruas jalannya karena belum
adanya relasi antara data simpang dan data ruas jalan.
viii
ABSTRACT
The Record keeping of traffic infrastructure in DIY like roads and other
infrastructures such as traffic fringes, road borders, nail borders, warning lights,
curve mirrors etc done by Dinas Perhubungan DIY is still using Microsoft Access
and still have single user characteristic.
Seeing the problems above, I wanted to make a web based information
system to do the traffic infrastructure record keeping and apply PHP programming
language and use MySql for database. The information system which I create will
have the characteristic of multi users and applies internet networking so that, not
only the user commissioned to input data can view the data but other users entitled
by the admin can also view it. The public can also access this site to give reports
about damages on the traffic infrastructures or to give complaints about un-
comfort in daily usage of the traffic infrastructures.
In General the Web Based Traffic Infrastructure Information System can
run quite well in real condition. The performances of this system are: the system
can make it easier for the officer in Traffic in doing storage and in seeking traffic
infrastructure data; the system can facilitate common public in submitting damage
denunciating or un-comfort in usage of traffic infrastructure, the system can
facilitate administrator in doing traffic infrastructure data update and the system
can give reports related to traffic infrastructure data. While the insufficiencies of
this system are: the security and safety of database is still not well guarantied, the
appearance is still too simple, the Error Handling facility is still low in
performance and the juncture data is still unable to explain the location of the
street joint because the relation between juncture data and streets joint data do not
exist.
ix
KATA PENGANTAR
Puji dan syukur saya ucapkan kepada Tuhan YME atas berkah dalam
penyelesaian Tugas Akhir ini sehingga dapat diselesaikan dengan baik. Tugas
akhir ini disusun untuk memenuhi salah satu syarat untuk memperoleh gelar
sarjana strata satu program studi Teknik Informatika jurusan Teknik Informatika
Fakultas Sains dan Teknologi Universitas Sanata Dharma Yogyakarta.
Tugas akhir ini yang berjudul “Sistem Informasi Prasarana Lalu Lintas
Berbasis Web” diharapkan dapat bermanfaat bagi Dinas Perhubungan Propinsi
DIY dan Program Studi Teknik Informatika Universitas Sanata Dharma
Yogyakarta sebagai lembaga studi ilmu serta pihak-pihak lain yang terkait
Banyak kendala-kendala yang dihadapi dalam menyelesaikan tugas akhir
ini, namun berkat adanya bantuan, bimbingan dan kerjasama maka saya sebagai
penulis disini mengucapkan terima kasih kepada :
1. Tuhan YME sebagai sumber inspirasi dan tempatku bersandar dan memohon.
Terima kasih atas segala karunia, berkat, penyertaan, kasih, dan petunjukNya
sehingga penulis dapat sampai pada titik ini.
2. Papa, Mama, serta kakakku mas Pungki atas doa, nasehat, dorongan, bantuan
dan semangatnya.
3. Dr. Ir. P. Wiryono P., S.J. selaku Rektor Universitas Sanata Dharma
Yogyakarta.
4. Romo Ir. Gregorius Heliarko SJ, SS, BST, MA, M.Sc selaku Dekan Teknik
x
5. Ibu AM. Polina, S.Kom, M.T selaku Ketua Jurusan Teknik Informatika,
Dosen Pembimbing Angkatan 2002 dan selaku Dosen Pembimbing yang
telah memberikan dukungan, bantuan dan dorongan kepada penulis selama
mengikuti kuliah sampai penyelesaian Tugas Akhir ini juga telah meluangkan
waktu untuk membimbing dan juga banyak membantu dan memberikan
masukkan serta jalan keluar kepada penulis sehingga Tugas Akhir ini dapat
terselesaikan dengan baik.
6. Semua Dosen Teknik Informatika, sekretariat, laboran, seluruh karyawan
Kampus III Universitas Sanata Dharma yang telah memberikan bantuan dan
dukungan kepada penulis untuk dapat menyelesaikan Tugas Akhir ini dengan
baik.
7. Bapak Bagas Setiadji atas semua bantuan yang telah diberikan untuk dapat
menyelesaikan Tugas Akhir ini dengan baik..
8. Itta “tata tayank” Kumalasari Widiyatno yang selalu ada disampingku untuk
membantu, memberikan semangat, dan selalu mendoakan agar bisa
menyelasaikan Tugas Akhir ini dengan baik, terima kasih juga untuk semua
nasehat – nasehat dan segala sesuatunya yang telah di berikan sehingga
membuatku tetap berdiri dan mampu menyelesaikan Tugas Akhir ini, you are
my most beautiful thing wich I had.
9. Adikku Ratih dan Arum yang selalu bisa membuatku tertawa dan terhina
setiap hari.
10. Teman-teman TI ’02 Nita yang telah rela membagi aku, Rika yang selalu
membuat kamarku ramai, ucok yang mau laptopnya aku pinjam, Nine yang
xi
udah rela menghibahkan bukunya padaku, serta anak –anak TI ’02 yang lain
dan yang tidak bisa aku sebutkan satu persatu yang telah membantu dan
memberikan ide, kritik saran serta dukungannya.
11. Angga (coupet), Andis, Gompis, Ade (toa), Joe (Burung), Dedi, Andi (kura),
Bibint dan anak – anak patria yang lainya, kalian sangat membantu
menghilangkan stressku.
12. Dan pihak lain yang tidak bisa disebutkan satu persatu telah membantu dan
memberi inspirasi penulis hingga Tugas Akhir ini dapat terselesaikan dengan
baik.
Tentunya tugas akhir ini belum sempurna, maka kritik yang membangun dan
saran dari semua pihak sangat diharapkan untuk kebaikan sistem yang dibuat.
Serta semoga penulisan tugas akhir ini dapat bermanfaat bagi pembacanya.
Yogyakarta, 28 September 2007
Penulis
Dadittya Adi Nugroho
xii
PERNYATAAN KEASLIAN KARYA
Dengan ini saya menyatakan bahwa tugas akhir saya ini tidak terdapat karya yang
pernah diajukan untuk memperoleh gelar sarjana disuatu perguruan tinggi, dan
sepanjang sepengetahuan saya juga tidak terdapat karya atau pendapat yang
pernah ditulis atau diterbitkan oleh orang lain, kecuali yang diacu dalam naskah
ini dan disebutkan dalam daftar pustaka sebagaimana layaknya karya ilmiah.
Yogyakarta, 28 September 2007
(Dadittya Adi Nugroho)
xiii
DAFTAR ISI
JUDUL ........................................................................................................ i
JUDUL INGGRIS ...................................................................................... ii
HALAMAN PERSETUJUAN ................................................................... iii
HALAMAN PENGESAHAN .................................................................... iv
HALAMAN PERSEMBAHAN ...................................................................v
HALAMAN MOTTO ................................................................................ vi
ABSTRAKSI............................................................................................ vii
ABSTRACT ............................................................................................ viii
KATA PENGANTAR ............................................................................... ix
PERNYATAAN KEASLIAN KARYA.... ................................................ xii
DAFTAR ISI ........................................................................................... xiii
DAFTAR TABEL ....................................................................................xxi
DAFTAR GAMBAR .............................................................................. xxii
BAB I PENDAHULUAN............................................................................... 1
1.1 Latar Belakang.........................................................................................1
1.2 Rumusan Masalah....................................................................................2
1.3 Batasan Masalah......................................................................................2
1.4 Tujuan......................................................................................................3
1.5 Metode Penelitian....................................................................................3
1.6 Sistematika Penulisan..............................................................................4
xiv
BAB II LANDASAN TEORI......................................................................... 6
2.1 SISTEM.......................................................................................................6
2.1.1 Konsep Dasar Sistem.......................................................................6
2.1.2 Karakteristik Sistem........................................................................ 6
2.2 INFORMASI...............................................................................................8
2.2.1 Konsep Dasar Informasi..................................................................8
2.2.2 Siklus Informasi...............................................................................8
2.2.3 Kualitas Informasi............................................................................9
2.2.4 Nilai Informasi.................................................................................9
2.3 SISTEM INFORMASI............................................................................... 9
2.3.1 Konsep Dasar Sistem Informasi......................................................9
2.4 METODOLOGI PENGEMBANGAN SISTEM....................................... 10
2.4.1 Use Case Modelling.........................................................................10
2.4.1.1 Konsep Sistem untuk Use Case Modeling....................................11
2.4.1.2 Simbol Dasar Use Case Diagram..............................................11
2.4.1.3 Diagram Konteks (Context Diagram)........................................12
2.4.2 ERD (Entity relationship Diagram)..........................................................12
2.4.3 DFD (Data Flow Diagram).......................................................................16
2.5 PHP..............................................................................................................18
2.5.1 Pengertian PHP................................................................................18
2.5.2 Hubungan PHP dengan HTML....................................................... 19
2.5.3 Kelebihan PHP................................................................................ 20
2.6 WEB SERVER............................................................................................22
2.7 MySQL........................................................................................................23
xv
BAB III ANALISIS DAN PERANCANGAN SISTEM............................. 24
3.1 ANALISIS SISTEM...................................................................................24
3.1.1 Gambaran Umum Sistem.................................................................24
3.1.2 Requirement Analysis.......................................................................27
3.1.2.1 Use Case Diagram............................................................... .27
3.1.3 Pemodelan Proses..........................................................................28
3.1.3.1 Context Diagram.........................................................28
3.1.3.2 Diagram Berjenjang.....................................................29
3.1.3.3 DFD level 0.................................................................30
3.1.3.4 DFD level 1 proses 2 proses update data ruas
Jalan.............................................................................31
3.1.3.5 DFD level 1 proses 3 proses update data
Simpang.......................................................................31
3.1.3.6 DFD level 1 proses 4 update data prasarana
Ruas.............................................................................32
3.1.3.7 DFD level 1 proses 5 proses update data prasarana
Simpang.......................................................................32
3.1.3.8 DFD level 1 proses 6 proses update jenis
Prasarana......................................................................33
3.1.3.9 DFD level 1 proses 7 proses update user.....................33
3.1.3.10 DFD level 1 proses 8 proses Berita..............................34
3.1.3.11 DFD level 1 proses 9 proses update keluhan...............34
3.1.3.12 DFD level 1 proses 10 proses laporan..........................35
3.1.3.14 DFD gabungan.............................................................36
xvi
3.1.4 Pemodelan Data.............................................................................39
3.1.4.1 ER Diagram.................................................................39
3.2 DESAIN SISTEM.......................................................................................40
3.2.1 Desain database............................................................................... .40
3.2.1.1 Relasi Antar Tabel........................................................40
3.2.1.2 Fisikal Data Model.......................................................42
3.2.1.3 Data Contoh.................................................................49
3.2.2 Desain Input Output.......................................................................51
3.2.2.1 Desain User Interface................................................. .51
3.2.2.1.1 Form Login...............................................51
3.2.2.1.2 Form Utama Admin..................................52
3.2.2.1.3 Form Lihat Ruas Jalan..............................52
3.2.2.1.4 Form Lihat Prasarana Ruas Jalan..............53
3.2.2.1.5 Form Lihat Simpang..................................53
3.2.2.1.6 Form Lihat Prasarana Simpang.................54
3.2.2.1.7 Form Detail Geometri dan Kinerja
Ruas Jalan..................................................54
3.2.2.1.8 Form detail prasarana Ruas jalan...............55
3.2.2.1.9 Form detail Kinerja Simpang.....................55
3.2.2.1.10 Form Detail Prasarana Simpang................56
3.2.2.1.11 Form Update User.................................... .56
3.2.2.1.12 Form Update Keluhan...............................57
3.2.2.1.13 Form Tambah Ruas Jalan..........................57
3.2.2.1.14 Form Tambah Prasarana Ruas Jalan.........58
3.2.2.1.15 Form Tambah Simpang.............................58
xvii
3.2.2.1.16 Form Tambah Prasarana Simpang............59
3.2.2.1.17 Form Tambah User...................................59
3.2.2.1.18 Form Tambah Keluhan.............................60
3.2.2.1.19 Form Ubah Ruas Jalan..............................60
3.2.2.1.20 Form Ubah Prasarana Ruas Jalan.............61
3.2.2.1.21 Form Ubah Simpang.................................61
3.2.2.1.22 Form Ubah Prasarana Simpang................62
3.2.2.1.23 Form Utama Untuk User Bagian
Lalu Lintas................................................62
3.2.2.1.24 Form Lihat Ruas Jalan Untuk User
Bagian Lalu Lintas....................................63
3.2.2.1.25 Form Lihat Prasarana Ruas Jalan
Untuk User Bagian Lalu Lintas................63
3.2.2.1.26 Form Lihat Simpang Untuk User
Bagian Lalu Lintas....................................64
3.2.2.1.27 Form Lihat Prasarana Simpang Untuk
User Bagian Lalu Lintas...........................64
3.2.2.1.28 Form Lihat Keluhan Untuk User
Bagian Lalu Lintas................................... 65
3.2.2.1.29 Form Isi Keluhan Untuk User
Bagian Lalu Lintas................................... 65
3.2.2.1.30 Form Laporan Ruas Jalan.........................66
3.2.2.1.31 Form Laporan Prasarana Ruas Jalan.........66
3.2.2.1.32 Form Laporan Simpang............................67
3.2.2.1.33 Form Laporan Prasarana Simpang............67
xviii
3.2.2.1.34 Form Utama Untuk User Masyarakat
Umum.......................................................68
3.2.2.2 Desain Output.............................................................70
3.2.2.2.1 Desain Output Laporan Ruas Jalan...........70
3.2.2.2.2 Desain Output Laporan Prasarana
Ruas Jalan.................................................71
3.2.2.2.3 Desain Output Laporan Simpang..............72
3.2.2.2.4 Desain Output Laporan Simpang..............73
BAB IV IMPLEMENTASI............................................................................74
4.1 Perangkat Kebutuhan Sistem.....................................................................74
4.2 Koneksi Database......................................................................................75
4.3 Antar muka................................................................................................75
4.2.1 Halaman Login..............................................................................75
4.2.2 Halaman Utama User (Masyarakat Umum)..................................76
4.2.3 Halaman Admin............................................................................77
4.2.3 Halaman Utama User ( Bagian Lalu Lintas)................................ 78
4.3 Antar muka Admin...................................................................................79
4.3.1 Halaman Cari dan Lihat Prasarana...............................................79
4.3.2 Halaman Tambah Prasarana.........................................................81
4.3.3 Halaman Edit Prasarana............................................................... 82
4.3.4 Halaman Geometri dan Kinerja Ruas Jalan..................................83
4.3.5 Halaman Tambah Geometri dan Kinerja Ruas Jalan................... 89
4.3.6 Halaman Detail Geometri dan Kinerja Ruas Jalan.......................90
4.3.7 Halaman Edit Geometri dan Kinerja Ruas Jalan..........................91
xix
4.3.8 Halaman Hapus Geometri dan Kinerja Ruas Jalan.......................92
4.3.9 Halaman Prasarana Ruas Jalan.....................................................93
4.3.10 Halaman Tambah Prasarana Ruas Jalan.......................................99
4.3.11 Halaman Detail Prasarana Ruas Jalan.........................................100
4.3.12 Halaman Edit Prasarana Ruas Jalan............................................101
4.3.13 Halaman Hapus Prasarana Ruas Jalan.........................................102
4.3.14 Halaman Kinerja Simpang...........................................................103
4.3.15 Halaman Tambah Kinerja Simpang.............................................105
4.3.16 Halaman Detail Kinerja Simpang................................................106
4.3.17 Halaman Edit Kinerja Simpang...................................................108
4.3.18 Halaman Hapus Kinerja Simpang................................................109
4.3.19 Halaman Prasarana Simpang........................................................110
4.3.20 Halaman Tambah Prasarana Simpang..........................................117
4.3.21 Halaman Detail Prasarana Simpang.............................................118
4.3.22 Halaman Edit Prasarana Simpang................................................119
4.3.23 Halaman Hapus Prasarana Simpang.............................................120
4.3.24 Halaman Filter Keluhan...............................................................121
4.3.25 Halaman Ubah Profil...................................................................123
4.3.26 Halaman Cari dan Lihat User......................................................124
4.3.27 Halaman Tambah User................................................................125
4.3.28 Halaman Hapus User...................................................................126
4.3.29 Halaman Cari dan lihat berita......................................................127
4.3.30 Halaman Tambah Berita..............................................................129
4.3.31 Halaman Edit Berita....................................................................130
4.3.32 Halaman Hapus Berita.................................................................131
xx
4.4 Antar muka User (Masyarakat Umum)....................................................131
4.4.1 Halaman Keluhan / Pengaduan....................................................131
4.4.2 Halaman Isi Keluhan.................................................................... 133
4.5 Antar Muka User (Bagian Lalu Lintas)....................................................134
4.5.1 Geometri dan Kinerja Ruas Jalan.................................................134
4.5.2 Prasarana Ruas Jalan.....................................................................134
4.5.3 Kinerja Simpang...........................................................................135
4.5.4 Prasarana Simpang........................................................................136
4.6 Desain Output...........................................................................................137
4.6.1 Laporan Geometri dan Kinerja Ruas Jalan...................................137
4.6.2 Laporan Prasarana Ruas............................................................... 141
4.6.3 Laporan Kinerja Simpang.............................................................148
4.6.4 Laporan Prasarana Simpang.........................................................151
BAB V ANALISIS HASIL IMPLEMENTASI...........................................156
5.1 Kemampuan Sistem..................................................................................156
5.2 Kekurangan Sistem...................................................................................156
BAB VI PENUTUP......................................................................................... 157
DAFTAR PUSTAKA...................................................................................... 158
xi
DAFTAR TABEL
Tabel 3.1 fisikal data model tabel ruas jalan................................................................44
Tabel 3.2 fisikal data model tabel prasarana ruas........................................................44
Tabel 3.3 fisikal data model tabel simpang.................................................................47
Tabel 3.4 fisikal data model tabel prasarana simpang.................................................47
Tabel 3.5 fisikal data model tabel jenis prasarana.......................................................48
Tabel 3.6 fisikal data model tabel admin.....................................................................48
Tabel 3.7 fisikal data model tabel keluhan..................................................................48
Tabel 3.8 fisikal data model tabel berita......................................................................49
Tabel 3.9 data contoh ruas jalan..................................................................................50
Tabel 3.10 data contoh prasarana ruas jalan................................................................50
Tabel 3.11 data contoh simpang..................................................................................51
Tabel 3.12 data contoh prasarana simpang..................................................................51
Tabel 3.13 data contoh prasarana simpang..................................................................52
xii
DAFTAR GAMBAR
Gambar 2.1. Simbol Use Case.....................................................................................12
Gambar 2.2. Simbol Aktor...........................................................................................13
Gambar 2.3. Contoh dari E-R Diagram.......................................................................14
Gambar 2.4 Contoh dari Entity....................................................................................14
Gambar 2.5 Contoh dari Atribut..................................................................................14
Gambar 2.6. Contoh dari identifier atau key ...............................................................15
Gambar 2.7. Contoh dari Relasi...................................................................................15
Gambar 2.8. Notasi dari Cardinality............................................................................16
Gambar 2.9 Simbol Proses menurut Gane dan Sarson.................................................17
Gambar 2.10 Simbol dari arus data..............................................................................17
Gambar 2.11 Simbol kesatuan luar menurut Gane dan Sarson....................................18
Gambar 2.12 Simbol penyimpanan data menurut Gane dan Sarson............................18
Gambar 3.1 Usecase Diagram......................................................................................29
Gambar 3.2 Context Diagram......................................................................................29
Gambar 3.3 Diagram Berjenjang.................................................................................30
Gambar 3.4 DFD level 0..............................................................................................31
Gambar 3.5 DFD level 1 proses 5 proses update data ruas jalan.................................32
Gambar 3.6 DFD level 1 proses 3 update data simpang..............................................32
Gambar 3.7 DFD level 1 proses 4 update data prasarana ruas.....................................33
Gambar 3.8 DFD level 1 proses 5 proses update data prasarana simpang...................33
Gambar 3.9 DFD level 1 proses 6 proses update data jenis prasarana.........................34
Gambar 3.10 DFD level 1 proses 7 proses update data user........................................34
xiii
Gambar 3.11 DFD level 1 proses 8 proses update data berita.....................................35
Gambar 3.12 DFD level 1 proses 9 proses update keluhan..........................................35
Gambar 3.13 DFD level 1 proses 10 proses laporan....................................................36
Gambar 3.14 DFD gabungan ......................................................................................39
Gambar 3.15 E-R Diagram…………………………………………………………...40
Gambar 3.16 relasi antar tabel......................................................................................42
Gambar 3.17 form login...............................................................................................52
Gambar 3.18 form utama admin...................................................................................53
Gambar 3.19 form lihat ruas jalan................................................................................53
Gambar 3.20 form lihat prasarana ruas jalan...............................................................54
Gambar 3.21 form lihat simpang..................................................................................54
Gambar 3.22 form lihat prasarana simpang.................................................................55
Gambar 3.23 form detail Geometri dan Kinerja ruas jalan..........................................55
Gambar 3.24 form detail Prasarana Ruas jalan............................................................56
Gambar 3.25 form detail Kinerja Simpang..................................................................56
Gambar 3.26 form detail prasarana Simpang...............................................................57
Gambar 3.27 form update user.....................................................................................57
Gambar 3.28 form update keluhan...............................................................................58
Gambar 3.29 form tambah ruas jalan...........................................................................58
Gambar 3.30 form tambah prasarana ruas jalan...........................................................59
Gambar 3.31 form tambah simpang.............................................................................59
Gambar 3.32 form tambah prasarana simpang.............................................................60
Gambar 3.33 form tambah user....................................................................................60
Gambar 3.34 form tambah keluhan..............................................................................61
xiv
Gambar 3.35 form ubah ruas jalan...............................................................................61
Gambar 3.36 form ubah Prasarana ruas jalan...............................................................62
Gambar 3.37 form ubah simpang.................................................................................62
Gambar 3.38 form ubah prasarana simpang.................................................................63
Gambar 3.39 form utama untuk user bagian lalu lintas...............................................63
Gambar 3.40 form lihat ruas jalan untuk user bagian lalu lintas..................................64
Gambar 3.41 form lihat prasarana ruas jalan untuk user bagian lalu lintas.................64
Gambar 3.42 form lihat simpang untuk user bagian lalu lintas………………………65
Gambar 3.43 form lihat prasarana simpang untuk user bagian lalu lintas…………...65
Gambar 3.44 form lihat keluhan……………………………………………………...66
Gambar 3.45 form isi keluhan………………………………………………………..66
Gambar 3.46 form laporan ruas jalan………………………………………………...67
Gambar 3.47 form laporan prasarana ruas jalan…………………………………...…67
Gambar 3.48 form laporan simpang………………………………………………….68
Gambar 3.49 form laporan prasarana simpang………………………………………68
Gambar 3.50 form utama untuk user dari masyarakat umum………………………..69
Gambar 3.51 desain output laporan ruas jalan……………………………………….70
Gambar 3.52 desain output laporan prasarana ruas jalan…………………………….71
Gambar 3.53 desain output laporan simpang………………………………………...72
Gambar 3.54 desain output laporan prasarana simpang……………………………...73
Gambar 4.1 Halaman login…………………………………………………………..76
Gambar 4.2 Konfirmasi Login salah…………………………………………………76
Gambar 4.3 Halaman User…………………………………………………………..77
Gambar 4.4 Halaman Admin…………………………………………………………78
xv
Gambar 4.5 Halaman User Bagian Lalu Lintas……………………………………...79
Gambar 4.6 Halaman Cari dan Lihat Jenis Prasarana.................................................80
Gambar 4.7 Halaman Tambah Jenis Prasarana……………………………………...81
Gambar 4.8 Halaman Edit Jenis Prasarana………………………………………….82
Gambar 4.9 Halaman Cari dan Lihat Geometri dan Kinerja Ruas jalan…………….83
Gambar 4.10 tambah Geometri dan Kinerja Ruas Jalan……………………………..89
Gambar 4.11 detail Geometri dan Kinerja Ruas Jalan……………………………….90
Gambar 4.12 Edit data Geometri dan Kinerja Ruas Jalan……………………………92
Gambar 4.13 Hapus data Geometri dan Kinerja Ruas Jalan…………………………93
Gambar 4.14 Halaman Cari dan Lihat Prasarana Ruas jalan………………………..94
Gambar 4.15 Tambah Prasarana Ruas Jalan………………………………………..100
Gambar 4.16 Detail Prasarana Ruas Jalan…………………………………………..101
Gambar 4.17 Edit Prasarana Ruas Jalan…………………………………………….102
Gambar 4.18 Hapus data Prasarana Ruas Jalan…………………………………….103
Gambar 4.19 Halaman Cari dan Lihat Kinerja Simpang………………………….104
Gambar 4.20 Tambah Kinerja Simpang…………………………………………….106
Gambar 4.21 Detail Kinerja Simpang………………………………………………107
Gambar 4.22 Edit Kinerja Simpang………………………………………………...108
Gambar 4.23 Hapus data Kinerja Simpang…………………………………………109
Gambar 4.24 Halaman Cari dan Lihat Prasarana Simpang.......................................110
xvi
Gambar 4.25 tambah Prasarana Simpang…………………………………………...118
Gambar 4.26 Detail Prasarana Simpang…………………………………………….119
Gambar 4.27 Edit Prasarana Simpang………………………………………………120
Gambar 4.28 Hapus data Prasarana Simpang………………………………………121
Gambar 4.29 Filter / Saring Keluhan……………………………………………….122
Gambar 4.30 Ubah Profil…………………………………………………………...124
Gambar 4.31 Halaman Cari dan Lihat User………………………………………...125
Gambar 4.32 Tambah User…………………………………………………………126
Gambar 4.33 Hapus User…………………………………………………………...127
Gambar 4.34 Halaman Cari dan Lihat Berita............................................................128
Gambar 4.35 Tambah Berita………………………………………………………..129
Gambar 4.36 Edit Berita…………………………………………………………….130
Gambar 4.37 Hapus Berita………………………………………………………….131
Gambar 4.38 Halaman Keluhan / Pengaduan………………………………………132
Gambar 4.39 Isi Keluhan…………………………………………………………...133
Gambar 4. 40 Geometri dan kinerja Ruas Jalan.........................................................134
Gambar 4.41. Prasarana Ruas Jalan………………………………………………...135
Gambar 4.42. Kinerja Simpang……………………………………………………..136
xvii
Gambar 4.43. Prasarana Simpang…………………………………………………..137
Gambar 4.44. Laporan Geometri dan kinerja Ruas Jalan...........................................138
Gambar 4.45. Laporan Prasarana Ruas......................................................................141
Gambar 4.46. Laporan Kinerja Simpang...................................................................148
Gambar 4.47. Laporan Prasarana Simpang................................................................152
1
BAB I
PENDAHULUAN
1.1 Latar Belakang
Dewasa ini kebutuhan manusia akan informasi yang cepat, tepat dan
akurat semakin meningkat. Sejalan dengan itu teknologi informasi juga
berkembang dengan pesatnya untuk memenuhi kebutuhan manusia tersebut.
Untuk memenuhi kebutuhan manusia tersebut di bangunlah berbagai sistem
informasi yang ditujukan untuk mengolah data dengan cepat, tepat dan akurat
sehingga bisa memberikan informasi yang tepat dan akurat pula bagi manusia.
Sistem informasi berbasis web merupakan dampak dari perkembangan di
dunia internet. Web merupakan media yang dapat menyampaikan informasi
secara cepat dan luas. Dengan web orang dapat dengan mudah mendapatkan
informasi dari mana saja dan kapan saja.
Di Dinas Perhubungan DIY terdapat bagian-bagian dimana setiap bagian
menangani bidang yang berbeda-beda. Salah satu bagian yang ada di Dinas
Perhubungan DIY adalah bagian Lalu Lintas dan salah satu bagian yang ditangani
oleh bagian Lalu Lintas tersebut adalah bagian pendataan prasarana lalu lintas
DIY seperti jalan dan prasarana-parasarana lain seperti rambu-rambu lalu lintas,
marka jalan, paku marka, warning light, cermin tikungan dll. Selama ini
pendataan data tersebut dilakukan dengan menggunakan MS Access dan masih
bersifat single user sehingga hanya dapat diakses pada satu komputer saja oleh
karena itu informasi yang akan disampaikan hanya bisa diakses pada lingkungan
2
sekitar tempat sistem tersebut saja. Oleh karena itu perlu dibangun suatu sistem
yang bisa menyampaikan informasi petugas bagian lalu lintas dan memudahkan
masyarakat umum untuk memberikan laporan-laporan tentang kerusakan-
kerusakan pada prasarana-prasarana lalu lintas tersebut atau dapat juga
memberikan keluhan-keluhan atas ketidaknyamanan dalam penggunaan
parasarana-prasarana lalu lintas tersebut dengan membuat Sistem Informasi
Prasarana Lalu Lintas Berbasis Web.
1.2 Rumusan Masalah
Rumusan masalah yang akan dibahas dalam pembuatan Tugas Akhir ini adalah:
Bagaimana mengimplementasikan Sistem Informasi Prasarana Lalu Lintas
Berbasis Web di Dinas Perhubungan DIY.
1.3 Batasan Masalah
Dalam pembuatan Sistem Informasi Prasarana Lalu Lintas Berbasis Web, masalah
dibatasi sebagai berikut:
1. Sistem ini hanya menangani pendataan dan memberikan informasi prasarana
lalu lintas jalan raya propinsi dan nasional di DIY kepada pegawai bagian lalu
lintas dan kepala bagian lalu lintas.
2. Data yang ditangani meliputi
a. Data ruas jalan seperti nama ruas jalan, panjang ruas jalan, lebar ruas
jalan, kapasitas ruas jalan, dll
3
b. Data simpang seperti nama simpang, ketersediaan lampu lalu lintas,
kapasitas simpang, dll
c. Data prasarana ruas jalan seperti rambu lalu lintas, marka jalan, cermin
tikungan, dll
d. Data prasarana simpang seperti rambu lalu lintas, lampu lalu lintas, dll
3. Bahasa pemrograman untuk implementasi sistem adalah PHP dan MySQL
digunakan sebagai pengelola database serta Macromedia Dreamweaver
sebagai editor.
1.4. Tujuan
Membuat Sistem Informasi Prasarana Lalu Lintas Berbasis Web di dinas
Perhubungan DIY .
1.5.Metodologi Penelitian
Metodologi Penelitian yang digunakan adalah studi kasus dengan langkah –
langkah sebagai berikut :
1. Studi Literatur
Membaca buku dan referensi-referensi yang berhubungan dengan topik
penulisan tugas akhir, melakukan studi kepustakaan dan studi kearsipan.
Literatur yang dipelajari misalnya tentang pemrograman PHP dan database
MySql.
2. Pengembangan Sistem Informasi Prasarana Lalu Lintas Berbasis Web
4
Metodologi pengembangan sistem yang digunakan adalah menggunakan
metodologi pendekatan terstruktur dengan metode SSADM (Structure System
Analysis and Design Method), dengan tahapan sebagai berikut :
a. Analisis Sistem
Melakukan berbagai analisis untuk mengidentifikasi masalah pada sistem
yang akan dibuat dan melakukan pengumpulan data dengan melakukan
observasi dan interview dengan pihak yang terkait. Analisis sistem akan
menghasilkan usecase, diagram berjenjang dan Data Flow Diagram
(DFD).
b. Perancangan Sistem
Melakukan perancangan sistem informasi yang meliputi ER Diagram,
perancangan masukan (input design), perancangan keluaran (output
design), dan perancangan antarmuka pengguna (user interface design).
c. Implementasi Sistem
Setelah melakukan perancangan sistem, maka tahap selanjutnya yaitu
melakukan implementasi pada sistem dengan menterjemahkannya dalam
bahasa pemrograman yang dimengerti oleh mesin.
d. Pengujian Sistem
Dilakukan untuk menguji apakah peraangkat lunak yang didapat sudah
sesuai dengan rancangan yang dibuat dan mencari kesalahan-kesalahan
yang mungkin terjadi.
1.6 Sistematika Penulisan
5
BAB I PENDAHULUAN
Bab ini membahas tentang latar belakang pemilihan topik penelitian,
rumusan masalah, batasan masalah, tujuan, metodologi penelitian dan
sistematika penulisan.
BAB II LANDASAN TEORI
Bab ini membahas mengenai landasan teori yang digunakan sebagai
pendukung dalam penulisan tugas akhir ini.
BAB III ANALISA DAN PERANCANGAN SISTEM
Bab ini membahas mengenai Analisa Sistem yang meliputi Analisa
Kebutuhan Sistem. Serta Perancangan Sistem meliputi Perancangan
Database yaitu Logical design dan Physical design. Dan Perancangan
Antarmuka yaitu Perancangan Struktur Menu, Perancangan Antar
muka untuk User dan Perancangan Antarmuka untuk Admin.
BAB IV IMPLEMENTASI SISTEM
Bab ini berisi mengenai penerapan sistem yang dibuat sesuai dengan
rancangan yang telah dilakukan antara lain lingkungan inplementasi,
karakteristik pengguna, implementasi database, implementasi design
antarmuka yang meliputi implementasi antarmuka untuk user dan
implementasi antarmuka untuk admin.
BAB V ANALISA HASIL IMPLEMENTASI
Bab ini membahas tentang analisa hasil dari sistem yang dibangun
beserta kelebihan dan kekurangannya.
BAB VI PENUTUP
6
Bab ini berisi tentang kesimpulan dan saran dari pembahasan,
perancangan serta implementasi yang telah dilakukan dalam tugas
akhir ini.
7
BAB II
LANDASAN TEORI
2.4 SISTEM
2.1.1 Konsep Dasar Sistem
Sistem adalah kumpulan dari elemen-elemen yang berinteraksi untuk
mencapai suatu tujuan tertentu (Jogiyanto, 1999). Sebuah perusahaan juga
merupakan suatu sistem. Komponen atau unsur-unsur di dalamnya seperti
pemasaran, penjualan, penelitian, pembukuan, dan personalia yang mana
semuanya bekerja sama untuk mencapai keuntungan baik bagi para pekerjanya
maupun bagi pemilik perusahaan.
2.1.2 Karakteristik Sistem
Suatu sistem mempunyai karakteristik atau sifat-sifat tertentu, yaitu
mempunyai komponen-komponen (components), batas sistem (boundary),
lingkungan luar sistem (environment), penghubung (interface), masukkan (input),
keluaran (output), pengolah (process) dan sasaran (objectives) atau tujuan (goal).
1) Komponen Sistem
Suatu sistem terdiri dari sejumlah komponen yang saling berinteraksi, yang
artinya saling bekerja sama membentuk satu kesatuan. Komponen-komponen
sistem atau elemen-elemen sistem dapat berupa suatu subsistem atau bagian-
bagian dari sistem.
8
2) Batas sistem
Batas sistem (boundary) merupakan daerah yang membatasi antara suatu
sistem dengan sistem yang lainnya atau dengan lingkungan luarnya. Batas
sistem itu memungkinkan suatu sistem dipandang sebagai satu kesatuan. Batas
suatu sistem menunjukkan ruang lingkup (scope) dari sistem tersebut.
3) Lingkungan Luar Sistem
Lingkungan luar (environment) dari suatu sistem adalah apapun diluar batas
dari sistem yang mempengaruhi operasi sistem.
4) Penghubung Sistem.
Penghubung (interface) merupakan media penghubung antara satu subsistem
dengan subsistem lainnya. Melalui penghubung ini memungkinkan sumber-
sumber daya mengalir dari satu subsistem ke subsistem lainnya.
5) Masukan Sistem
Masukan (input) adalah energi yang dimasukkan ke dalam sistem. Masukan
dapat berupa masukan perawatan (maintenance input) dan masukan sinyal
(signal input) agar sistem tersebut dapat beroperasi.
6) Keluaran Sistem
Keluaran (output) adalah hasil dari energi yang diolah dan diklasifikasikan
menjadi keluaran yang berguna. Keluaran dapat merupakan masukan untuk
subsistem yang lain.
9
7) Pengolah Sistem
Bagian pengolah sistem ini merupakan bagian yang akan merubah masukkan
menjadi keluaran.
8) Sasaran Sistem
Suatu sistem pasti mempunyai tujuan (goal) atau sasaran (objective). Jika
suatu sistem tidak mempunyai sasaran, maka operasi sistem tidak akan ada
gunanya. Sasaran dari sistem sangat menentukan sekali masukan yang
dibutuhkan sistem dan keluaran yang akan dihasilkan sistem. Sistem dikatakan
berhasil bila mengenai sasaran atau tujuannya.
2.5 INFORMASI
2.2.1 Konsep Dasar Informasi
Informasi adalah data yang diolah menjadi bentuk yang lebih berguna dan
lebih berarti bagi yang menerimanya (Jogiyanto, 1999).
2.2.2 Siklus Informasi
Data yang diolah melalui suatu model menjadi informasi, penerima
kemudian menerima informasi tersebut, membuat suatu keputusan dan melakukan
tindakan, yang berarti menghasilkan suatu tindakan lain yang akan membuat
sejumlah data kembali. Data tersebut akan ditangkap sebagai input, diproses
kembali lewat suatu model dan seterusnya membentuk suatu siklus. Siklus ini
disebut dengan siklus informasi (information cycle). Siklus ini juga disebut
dengan siklus pengolahan data (data processing cycles).
10
2.2.3 Kualitas Informasi
Kualitas dari suatu informasi (quality of information) tergantung dari tiga
hal antara lain :
1) Akurat yang berarti informasi harus bebas dari kesalahan-kesalahan
dan tidak menyesatkan dan juga harus jelas mencerminkan
maksudnya.
2) Tepat pada waktunya, berarti informasi yang datang pada penerima
tidak boleh terlambat. Karena informasi merupakan landasan di dalam
pengambilan keputusan.
3) Relevan, berarti informasi tersebut mempunyai manfaat untuk
pemakainya.
2.2.4. Nilai Informasi
Informasi dikatakan bernilai bila manfaatnya lebih efektif dibandingkan
dengan biaya mendapatkannya.
2.6 SISTEM INFORMASI
2.3.1 Konsep Dasar Sistem Informasi
Sistem informasi adalah suatu sistem di dalam suatu organisasi yang
mempertemukan kebutuhan pengolahan transaksi harian, mendukung operasi,
bersifat managerial dan kegiatan startegi dari suatu organisasi dan menyediakan
pihak luar tertentu dengan laporan-laporan yang diperlukan (Robert A Leitch/K.
Roscoe Davis, 1983).
11
2.4 METODOLOGI PENGEMBANGAN SISTEM
2.4.1 Use Case Modeling
Use case modeling merupakan sebuah proses untuk memodelkan fungsi-
fungsi sistem yang terdapat dalam bisnis even, siapa yang melakukan kejadian dan
bagaimana sistem memberikan respon terhadap even
Keuntungan dari Use Case Modeling :
Menyediakan tool untuk meng-capture kebutuhan fungsional
Membantu untuk melakukan dekomposisi sistem ke dalam bagian-bagian
yang dapat di-manage.
Menyediakan komunikasi yang berarti antara user dengan stakehorder yang
lain yang berkonsentrasi pada fungsional sistem dalam bahasa yang mudah
dipahami.
Menyediakan cara untuk megidentifikasi, meng-assign, melacak, mengontrol
dan memanajemen aktifitas pengembangan sistem, khususnya dalam
pegembangan yang incremental dan iterative.
Menyediakan petunjuk untuk mengestimasi ruang lingkup, pengaruh dan
schedule
Menyediakan landasan untuk melakukan pengujian sebagau bagian dalam
pendefinisian perencanaan pengujian dan test case.
Menyediakan landasan untuk membantu membuat user dan manual sistem
untuk dokumentasi sistem
Menyediakan tools untuk melakukan pelacakan kebutuhan
12
Menyediakan sebuah starting point untuk mengidentifikasi objek data dan
entity.
Menyediakan spesifikasi fiungsi untuk mendesain user dan sistem interface.
Menyediakan sebuah kerangka kerja untuk menjalankan proyek
pengembangan sistem.
2.4.1.1 Konsep Sistem untuk Use Case Modeling
Use Case Diagram adalah sebuah diagram yang menggambarkan iteraksi
antara sistem dan eksternal sistem dan user. Berbasis grafik yang menggambarkan
siapa yang menggunakan sistem dan dengan cara bagaimana user berinteraksi
dengan sistem. Use Case secara behavioral berhubungan dengan langkah-langkah
yang berurutan, baik yang secara otomatis dan manual dengan tujuan unuk
melengkapi proses bisnis yang tungggal.
2.4.1.2 Symbol Dasar Use Case Diagram
gambar 2.9 Simbol Use Case
Use Case merupakan bagian dari seluruh fungsi sistem. Digambarkan secara
grafik dengan elips yang horizontal dengan nama dari use case tertera diatas,
dibawah atau didalam elips.
Use Case Simbol
13
gambar 2.10 Simbol Actor
Actor merupakan segala sesuatu yang dibutuhkan untuk brinteraksi dengan
sistem untuk mengubah informasi. Dapat berupa orang, organisasi atau sistem
informasi yang lain atau juga suatu waktu kejadian.
Temporal event merupakan sebuah waktu kejadian yang di-trigger oleh
user. Aktornya adalah waktu.
2.4.1.3 Diagram Konteks (context Diagram)
Diagram konteks merupakan awal dari Diagram Arus Data, sebelum masuk
ke dalam diagram yang lebih rinci. Diagram konteks digunakan untuk melihat apa
yang diproses atau dikerjakan sistem.
2.4.2 ERD (Entity Relationship Diagram)
ERD merupakan sebuah data model yang memanfaatkan beberapa notasi
untuk menggambarkan data dalam entity dan relasi yang dijelaskan oleh data.
Data model adalah sebuah teknik untuk mengorganisasikan dan
mendokumentasikan data dari sistem. Juga disebut dengan database modeling.
14
Gambar 2.3 Contoh dari E-R Diagram
Entity adalah sebuah objek yang nyata ada dan dapat dibedakan dari
sesuatu yang lain.
Gambar 2.4 Contoh dari Entity
Atribut merupakan sebuah properti yang deskriptif atau karakteristik dari
sebuah entity.
Gambar 2.5 Contoh dari Atribut
15
Key merupakan sebuah atribut atau kelompok atribut yang diasumsikan
memiliki nilai yang unik untuk setiap instance. Sering juga disebut dengan
identifier.
1. Concatenated key merupakan sekelompok atribut yang memiliki identitas
instance dari sebuah entity yang unik
2. Candidate key merupakan satu dari nilai key yang akan berfungsi sebagai
primary key dari sebuah entity.
3. Primary key merupakan sebuah candidate key yang paling umum digunakan
untuk mengidentifikasikan secara unik instance dari entity yang tunggal.
4. Alternate key merupakan sebuah candidate key yang tidak dapat dipilih
untuk menjadi primary key.
Gambar 2.6 Contoh dari identifier atau key
Relationship adalah sebuah asosiasi bisnis normal yang ada antara satu
atau lebih entity atau merupakan hubungan antar entity.
Gambar 2.7 Contoh dari Relasi
Student CurriculumIs being studied by is enrolled in
16
Cardinality merupakan minimum dan maksimum kejadian dari sebuah
entity yang dihubungkan dengan kejadian tunggal dari entity yang lain. Karena
seluruh relasi adalah bidirectional maka cardinality haru didefinisikan pada kedua
direction untuk setiap relasi.
Gambar 2.8 Notasi dari Cardinality
Foreign key adalah sebuah primary key dari sebuah entity yang digunakan
oleh entity yang lain untuk mengidentifikasikan instance dari sebuah relasi.
Nonspecific relationship merupakan relasi dimana banyak instance dari
sebuah entity berasosiasi dengan banyak instance dari entity yang lainnya. Disebut
juga dengan relasi many-to-many relationship. Nonspecific relationship harus
diselesaikan.
17
Key-base data model bertujuan untuk mengeliminasikan nonspecific
relationship jika ada, menambah asosiatif entity termasuk primary dan alternate
key, dan kardinalitas yang tepat.
Fully attributed data model bertujuan untuk memasukkan seluruh atribut.
2.4.3 DFD (Data Flow Diagram)
Data Flow Diagram merupakan sebuah model proses yang digunakan
untuk mengambarkan aliran dari data yang melalui sebuah system dan proses
yang dibentuk oleh sistem.
DFD terdiri dari 4 buah simbol yaitu :
1. Proses (Process)
Proses adalah kerja yang dilakukan oleh sistem dalam merespon arus data
yang datang atau suatu kondisi.
Gambar 2.9 merupakan simbol proses menurut Gane dan Sarson :
Gambar 2.9 Simbol Proses menurut Gane dan Sarson
2. Arus data (Data Flow)
Arus data adalah data sebagai masukan ke proses atau keluaran dari sebuah
proses.
Gambar 2.10 merupakan simbol dari arus data :
Gambar 2.10 Simbol dari arus data
Arus data adalah data yang bergerak.
Nama Proses
Nama Arus Data
18
Arus data juga digunakan untuk mewakili creation, reading, deleting, atau
updating dari data dalam file atau database (disebut datastore atau
penyimpanan data).
3. Kesatuan Luar (External Agent).
Kesatuan luar adalah orang, unit organisasi, sistem atau organisasi luar yang
berinteraksi dengan sistem. Disebut juga dengan external entity.
Gambar 2.11 merupakan simbol kesatuan luar menurut Gane dan Sarson :
Gambar 2.11 Simbol kesatuan luar menurut Gane dan Sarson
4. Penyimpanan data (Data Store)
Penyimpanan data digunakan untuk menyimpan data hasil proses maupun
menyediakan data untuk diproses. Sinonim dengan file dan database.
Gambar 2.12 merupakan simbol penyimpanan data menurut Gane dan Sarson
Gambar 2.12 Simbol penyimpanan data menurut Gane dan Sarson
Nama kesatuan
luar
Penyimpanan data
19
2.5 PHP
2.5.1 Pengertian PHP
PHP adalah PHP Hypertext Preposesor yang merupakan bahasa berbentuk
skrip yang ditempatkan dalam server dan diproses dalam server. Hasilnya dikirim
ke client, tempat user menggunakan browser. PHP adalah salah satu teknologi
yang biasa digunakan untuk membuat halaman web yang dinamis dan interaktif.
Secara umum, halaman web dapat dibuat secara statis dan dinamis. Web statis
biasanya dibuat dengan menggunakan HTML. Teknologi web dinamis dapat
digolongkan atas 2 golongan besar:
1. client-side technologies
2. server-side technologies
PHP dibangun sekitar tahun 1994 oleh Rasmus Lerdoff. PHP versi 3
ditulis ulang oleh Zeev Suraski dan Andi Gutmans pada tahun 1998.
PHP bekerja hampir sama seperti JSP dan ASP. Skrip diawali dengan tag
<?php …… dan diakhiri dengan tag ……?> serta dimasukkan ke halaman HTML.
Skrip ini akan dieksekusi oleh server sebelum halaman tersebut dikirim ke
browser klien, sehingga tidak mungkin ada ketidakcocokan platform mesin
browser klien. Tidak seperti ASP, PHP dapat dijalankan multiplatform. PHP dapat
dijalankan di web server IIS dan Apache, di sistem operasi Windows, UNIX dan
Linux. Faktor yang menguntungkan lainnya adalah PHP bersifat open source.
20
2.5.2 Hubungan PHP dengan HTML
Halaman web biasanya disusun dari kode-kode html yang disimpan dalam
sebuah file berekstensi .html. File html ini dikirimkan oleh server (atau file) ke
browser, kemudian browser menerjemahkan kode – kode tersebut sehingga
menghasilkan suatu tampilan yang indah. Lain halnya dengan program php,
program ini harus diterjemahkan oleh web-server sehingga menghasilkan kode
html yang dikirim ke browser agar dapat ditampilkan. Program ini dapat berdiri
sendiri ataupun disisipkan di antara kode – kode html sehingga dapat langsung
ditampilkan bersama dengan kode-kode html tersebut. Program php dapat
ditambahkan dengan mengapit program tersebut di antara tanda <? dan ?>. Tanda-
tanda tersebut biasanya disebut tanda untuk escaping ( kabur ) dari kode html. File
html yang telah dibubuhi program php harus diganti ekstensi-nya menjadi .php
atau .php3.
PHP merupakan bahasa pemograman web yang bersifat server-side
HTML=embedded scripting, di mana script-nya menyatu dengan HTML dan
berada di server. Artinya adalah sintaks dan perintah-perintah yang kita berikan
akan sepenuhnya dijalankan di server tetapi disertakan HTML biasa. PHP dikenal
sebgai bahasa scripting yang menyatu dengan tag HTML, dieksekusi di server dan
digunakan untuk membuat halaman web yang dinamis seperti ASP (Active Server
Pages) dan JSP (Java Server Pages).
PHP pertama kali dibuat oleh Rasmus Lerdroft, seorang programmer C.
Semula PHP digunakannya untuk menghitung jumlah pengunjung di dalam
webnya. Kemudian ia mengeluarkan Personal Home Page Tools versi 1.0 secara
21
gratis. Versi ini pertama kali keluar pada tahun 1995. Isinya adalah sekumpulan
script PERL yang dibuatnya untuk membuat halaman webnya menjadi dinamis.
Kemudian pada tahun1996 ia mengeluarkan PHP versi 2.0 yang kemampuannya
telah mampu mengakses database dan dapat terintegrasi dengan HTML.
Pada tahun 1998 tepatnya pada tanggal 6 Juni 1998 keluarlah PHP versi
3.0 yang dikeluarkan oleh Rasmus sendiri bersama kelompok pengembang
softwarenya. Versi teranyar yaitu PHP 4.0 keluar pada tanggal 22 Mei 2000
merupakan versi yang lebih lengkap lagi dibandingkan dengan versi sebelumnya.
Perubahan yang paling mendasar pada PHP 4.0 adalah terintegrasinya Zend
Engine yang dibuat oleh Zend Suraski dan Andi Gutmans yang merupakan
penyempurnaan dari PHP3 scripting engine. Yang lainnya adalah build in HTTP
session, tidak lagi menggunakan library tambahan seperti pada PHP3. Tujuan dari
bahasa scripting ini adalah untuk membuat aplikasi- aplikasi yang dijalankan di
atas teknologi web. Dalam hal ini, aplikasi pada umumnya akan memberikan hasil
pada web browser, tetapi prosesnya secara keseluruhan dijalankan web server.
2.5.3 Kelebihan PHP
Ketika e-commerce semakin berkembang, situs-situs yang statispun
semakin ditinggalkan Karena dianggap sudah tidak memenuhi keinginan pasar
karena situs tersebut harus tetap dinamis selama setiap hari. Pada saat ini bahasa
PERL dan CGI sudah jauh ketinggalan jaman sehingga sebagian besar designer
web banyak beralih ke bahasa server-side scripting yang lebih dinamis seperti
PHP. Seluruh aplikasi berbasis web dapat dibuat dengan PHP. Namun kekuatan
22
yang paling utama PHP adalah pada konektivitasnya dengan system database di
dalam web. Sistem database yang dapat didukung oleh PHP adalah :
1. Oracle
2. MySQL
3. MS SQL Server
4. PostgreSQL
5. dan lainnya
PHP dapat berjalan di berbagai sistem operasi seperti windows 98/NT,
UNIX/LINUX, solaris maupun macintosh. PHP merupakan software yang open
source yang dapat anda download secara gratis dari situs resminya yaitu
http://www.php.net, ataupun dari situs - situs yang menyediakan software.
Software ini juga dapat berjalan pada web server seperti PWS (Personal Web
Server), Apache, IIS, AOLServer, fhttpd, phttpd dan sebagainya. PHP juga
merupakan bahasa pemograman yang dapat kita kembangkan sendiri seperti
menambah fungsi-fungsi baru. Keunggulan lainnya dari PHP adalah PHP juga
mendukung komunikasi dengan layanan seperti protocol IMAP, SNMP, NNTP,
POP3 bahkan HTTP. PHP dapat diinstal sebagai bagian atau modul dari apache
web server atau sebagai CGI script yang mandiri. Banyak keuntungan yang dapat
diperoleh jika menggunakan PHP sebagai modul dari apache di antaranya adalah:
1. Tingkat keamanan yang cukup tinggi.
2. waktu eksekusi yang lebih cepat dibandingkan dengan bahasa pemograman
web lainnya yang berorientasi pada server-side scripting.
3. Akses ke sistem database yang lebih fleksibel.
23
2.6 WEB SERVER
Web browser dan web server berkomunikasi menggunakan protocol
internet yang dinamakan Transmission Control Protocol/Internet Protocol
(TCP/IP). Web server adalah server yang berfungsi untuk melayani respons
HyperText Transfer Protocol (HTTP). Pada sistem operasi windows, respons
HTTP ini dilayani oleh Internet Information System (IIS) yang salah satu
fungsinya adalah sebagai web server. HTTP bekerja dalam bentuk permintaan dan
respons. Pada saat client meminta file pada server, maka client akan membuat
hubungan ke web server. Selanjutnya web server akan merespons permintaan dan
memutuskan hubungan setelah permintaan selesai diproses.
HTTP memiliki kemampuan untuk mentransfer halaman web, gambar dan
beberapa tipe media lainnya. Suatu halaman web ditulis dalam bentuk HyperText
Markup Language(HTML) ditambah dengan script program java untuk memberi
kemampuan pemrograman pada halaman tersebut. Ketika client meminta file
ASP.NET, maka file tersebut oleh .NET Framework akan diterjemahkan
(dikompilasi) ke dalam bentuk file (elemen) HTML dan JavaScript agar dapat
dimengerti oleh web browser. File ASP.NET disimpan dalam folder yang dikenal
sebagai Virtual Web Directory. Sebuah web server dapat memiliki banyak virtual
web directory.
24
2.7 MySQL
MySQL adalah sebuah sistem manajemen database open source, yang
popular dan gratis untuk platform Unix dan Windows. Sistem manajemen My
SQL menggunakan kumpulan perintah sederhana untuk memanggil,
memasukkan, menghapus dan memperbaharui data. Beberapa kemampuan
MySQL antara lain :
1. MySQL bisa diakses dan di manipulasi dari sejumlah bahasa pemrograman
terkenal, diantaranya C, C++, Java, Perl, Phyton, dan PHP.
2. MySQL ditulis dalam C/C++ dan dioptimasi untuk platform Unix dan Win32.
3. MySQL mendukung tipe data yang umum digunakan termasuk FLOAT,
DOUBLE, CHARVARCHAR, TEXT, BLOB, DATE, SET dan ENUM.
4. MySQL mendukung subset fungsi query dan pengelompokan lanjut, termasuk
diantaranya GROUP BY dan ORDER BY.
5. MySQL memungkinkan alokasi password tiap server. Password yang melalui
MySQL untuk melakukan authentifikasi terenkripsi.
6. MySQL mendukung berbagai macam metode koneksi, seperti TCP/IP, soket
Unix, dan koneksi untuk Windows NT/2000.
7. MySQL bisa diperoleh secara gratis termasuk aplikasi-aplikasi lain yang
diperlukan dalam memakai MySQL.
25
BAB III
ANALISIS DAN PERANCANGAN SISTEM
3.1 Analisis Sistem
Pada pembuatan Tugas akhir ini akan dikembangkan sebuah sistem
Informasi Prasarana Lalu Lintas Berbasis Web. Sistem yang akan dikembangkan
ini diharapkan dapat memberikan solusi yang baik untuk menanggulangi dan
mengurangi masalah yang telah didefinisikan. Melalui sistem ini maka petugas
dapat melakukan pengolahan data prasarana lalu litas dan memperoleh informasi
serta laporan tentang prasarana lalu lintas secara cepat dan akurat.
3.1.1 Gambaran Umum Sistem
Sistem ini terdiri dari 2 pengguna yaitu administrator dan user.
Administrator disini bertugas petugas bagian lalu lintas yang mempunyai hak
untuk melakukan update data parsarana lalu lintas dan administrator disini juga
mempunyai hak untuk melakukan update data user. User yang dimaksud disini
masih dapat dibagi menjadi 2 lagi yaitu user yang berasal dari petugas bagian lalu
lintas dan user yang berasal dari masyarakat umum yang mengakses sistem ini
lewat internet. Perbedaan dari 2 user tersebut adalah user yang berasal dari
petugas bagian lalu lintas dapat melihat dan melakukan pencarian terhadap data –
data prasarana lalu lintas yang ada, user ini juga dapat melihat laporan data
prasarana lalu litas, sedangkan user yang berasal dari masyarakat umum hanya
dapat megakses halaman web tanpa dapat melihat data – data prasarana lalu lintas
tersebut. User dari masyarakat umum dapat memberikan pengaduan tentang
26
kerusakan prasarana lalu lintas tersebut atau dapat juga memberikan keluhan-
keluhan atas ketidaknyamanan dalam penggunaan prasarana-prasarana lalu lintas
tersebut. Sebelum mengakses data – data prasarana lalu lintas administrator dan
user yang berasal dari bagian lalu lintas harus melakukan login terlebih dahulu
sedangkan user yang berasal dari masyarakat umum tidak perlu melakukan login.
Gambaran sistem dari sisi user bagian lalu lintas:
a. User dapat melakukan pencarian data prasarana lalu lintas berdasar tipe
pencarian yang ada.
b. User dapat memperoleh laporan prasarana lalu lintas yaitu laporan Data
Geometri dan Kinerja Ruas Jalan, Prasarana Lalu Lintas, Kinerja Simpang dan
Data Prasarana Simpang.
c. User dapat melakukan edit password pada data user-nya sendiri.
Gambaran sistem dari sisi Administrator:
a. Administrator dapat melakukan update data berita, keluhan, dan data
prasarana lalu lintas seperti data geometri dan kierja ruas jalan, data
perasarana lalu lintas, data kinerja simpang, data jenis prasarana, dan data
prasarana simpang.
b. Administrator dapat melakukan pencarian data prasarana lalu lintas berdasar
tipe pencarian yang ada.
c. Administrator dapat memperoleh laporan prasarana lalu lintas yaitu laporan
Data Geometri dan Kinerja Ruas Jalan, Prasarana Lalu Lintas, Kinerja
Simpang , Data Prasarana Simpang, dan data Jenis Prasarana.
d. Administrator dapat melakukan tambah dan hapus data user.
27
e. Administrator dapat melakukan edit data administrator tersebut sendiri.
Gambaran sistem dari sisi user masyarakat umum:
a. User dari masyarakat umum dapat memberikan pengaduan tentang
kerusakan prasarana lalu lintas tersebut atau dapat juga memberikan
keluhan-keluhan atas ketidaknyamanan dalam penggunaan
parasarana-prasarana lalu lintas tersebut
b. User dari masyarakat umum dapat melihat berita seputar
perhubungan.
28
3.1.2 Requirement Analysis
3.1.2.1 Use Case Diagram
Use Case Diagram dari sistem yang dibuat dapat dilihat pada Gambar 3.1.
29
user(masyarakat sipil)
masukkan keluhan
lihat keluhan
lihat berita
Gambar 3.1 Usecase Diagram
3.1.3 Pemodelan Proses
3.1.3.1 Context Diagram
Context diagram dari sistem ini dapat dilihat pada gambar 3.2
Gambar 3.2 Context Diagram
30
3.1.3.2 Diagram Berjenjang
Bagan Berjenjang pada sistem ini dapat dilihat pada gambar 3.3
Gambar 3.3 Diagram Berjenjang
31
3.1.3.3 DFD level 0
Gambar 3.4 DFD level 0
32
3.1.3.4 DFD level 1 proses 2 proses update data ruas jalan
Gambar 3.5 DFD level 1 proses 5 proses update data ruas jalan
3.1.3.5 DFD level 1 proses 3 proses update data simpang
Gambar 3.6 DFD level 1 proses 3 update data simpang
33
3.1.3.6 DFD level 1 proses 4 update data prasarana ruas
Gambar 3.7 DFD level 1 proses 4 update data prasarana ruas
3.1.3.7 DFD level 1 proses 5 proses update data prasarana simpang
Gambar 3.8 DFD level 1 proses 5 proses update data prasarana simpang
34
3.1.3.8 DFD level 1 proses 6 proses update jenis prasarana
Gambar 3.9 DFD level 1 proses 6 proses update data jenis prasarana
3.1.3.9 DFD level 1 proses 7 proses update user
7.1p
tambah user
7.3p
hapus user
7.2p
edit user
adminvalidasi login
admin
userD1
userD1
userD1
data user yang akan ditambahinformasi tambah data user
data user yang akan ditambahdata user yang telah ditambah
kata kunci pencarian data usernya yang akan dieditinformasi edit data user
data user yang akan dieditdata user yang telah diedit
kata kunci pencarian data user yang akan dihapusinformasi hapus data user
data user yang akan dihapusdata user yang telah dihapus
User (petugas
bagian lalu lintas)
validasi login
admin
user (bagian lalu lintas)
7.4p
lihat data user
userD1
kata kunci pencarian data user yang akan dilihatinformasi hasil proses user yang telah terlihat
data user yang akan dilihatdata user yang terlihat
data pribadi admin yang akan diedit
informasi edit data admin
user (bagian lalu lintas)
kata kunci data user yang akan dilihat
informasi hasil proses user yang telah terlihat
Gambar 3.10 DFD level 1 proses 7 proses update data user
35
3.1.3.10 DFD level 1 proses 8 proses Berita
Gambar 3.11 DFD level 1 proses 8 proses update data berita
3.1.3.11 DFD level 1 proses 9 proses update keluhan
Gambar 3.12 DFD level 1 proses 9 proses update keluhan
36
3.1.3.12 DFD level 1 proses 10 proses laporan
Gambar 3.13 DFD level 1 proses 10 proses laporan
37
3.1.3.14 DFD gabungan
38
39
10.4p
proses laporan
prasarana simpang
10.3pproses laporan
prasarana ruas
10.2p
proses laporan simpang
10.1p
proses laporan ruas
user(bagian
lalu lintas)
adminprasarana ruasD4
ruasD2
simpangD3
laporan ruasperintah proses laporan ruas
perintah proses laporan ruasdata ruas
perintah proses laporan prasarana ruaslaporan prasarana ruas
data prasarana ruasperintah proses lap. prasarana ruas
data prasarana simpangperintah proses lap. prasarana simpang prasarana simpangD5
perintah proses laporan prasarana simpanglaporan prasarana simpang
perintah proses laporan simpangdata simpang
perintah proses laporan simpanglaporan simpang
laporan ruas
perintah proses laporan ruas
perintah proses laporan simpang
laporan simpang
perintah proses lap. prasarana ruas
laporan prasarana ruas
perintah proses lap. prasarana simpang
laporan prasarana simpang
1p
proses login
admin
userD1
username, password, statusvalidasi login
validasi loginvalidasi login
user(bagian lalu lintas)
username, password, statusvalidasi login
11p
proses pencarian
ruasD2
simpangD3
prasarana ruasD4
data ruas
data simpang
data prasarana ruas
data prasarana simpang
perintah proses laporan simpang
perintah proses laporan ruas
perintah proses lap. prasarana ruas
perintah proses lap. prasarana simpang prasarana simpangD5
kata kunci pencarian
hasil pencarian
kata kunci pencarian
hasil pencarian
12p
proses logout
Gambar 3.14 DFD gabungan
40
3.1.4 Pemodelan Data
3.1.4.1 ER Diagram
E-R Diagram dari sistem yang dibuat dapat dilihat pada Gambar 3.18
Gambar 3.15 E-R Diagram
41
3.2 Desain Sistem
3.2.1 Desain database
Pada desain database ini menggunakan 12 tabel yaitu tabel ruas jalan, table prasarana
ruas, tabel simpang, table prasarana simpang, tabel kelas jalan, tabel fungsi jalan, tabel
kelas jalan, tabel tipe jalan, tabel wilayah administrasi, tabel tipe simpang, tabel punya,
tabel admin, dan tabel keluhan.
3.2.1.1 Relasi Antar Tabel
Relasi antar tabel di dalam desain database dapat dilihat pada gambar 3.16
42
* no_ruas_jalan no_fungsi_jalan no_tipe_jalan no_kelas_jalan no_wilayah_administrasi nama_ruas volume_LL lbr_total panjang status_jalan FCw FCsp Fcsf kapasitas kapasitas_dasar tingkat_pelayanan
ruas_jalan
Admin
* no_admin username password status
Keluhan
* id_keluhan tanggal pengirim isi
* No_simpang tipe_simpang nama_simpang tundaan_rata2 APILL DS kapasitas pendekat_mayor1 pendekat_mayor2 pendekat minor1 pendekat_minor2 jml_ljr_lengan_mayor1 jml_ljr_lengan_mayor1 jml_ljr_lengan_minor1 jml_ljr_lengan_minor2 arus_msk_pendekat_mayor1 arus_msk_pendekat_mayor2 arus_msk_pendekat_minor1 arus_msk_pendekat_minor2
simpang
* no_prasarana_ruas** no_ruas_jalan** no_jenis_prasarana sub_ruas jenis_prasarana status_awal status_akhir pemasangan tahun kondisi usulan penanganan alinemen_vertikal alinemen_horizontal ket
prasarana ruas
* no_jenis_prasaranajenis_prasarana
jenis_prasarana
prasarana simpang
* no_prasarana_simpang** no_jenis-prasarana** no_simpang pendekat jenis_prasarana status_lokasi panjang jumlah tahun kondisi usulan_penanganan ket
berita
* id_berita tanggal isi
Gambar 3.16 relasi antar table
43
3.2.1.2 Fisikal Data Model
Fisikal data model dari sistem yang dibuat adalah sebagai berikut :
1. Tabel Ruas Jalan
No
Field Keterangan Tipe Lebar
1 no_ruas_jalan nomor ruas jalan char 10
2 nama_ruas nama ruas jalan char 100
3 tipe_jalan tipe jalan char 10
4 kelas_jalan kelas jalan char 10
5 wilayah_administrasi wilayah administrasi char 30
6 fungsi jalan fungsi ruas jalan char 10
7 volume_LL volume lalu lintas
(smp/jam)
char 100
8 lebar_total lebar total ruas jalan (m) int 3
9 panjang panjang ruas jalan (km) int 5
10 status_jalan status jalan char 10
11 FCw faktor penyesuaian
kapasitas akibat lebar
jalur
int 4
12 FCsp faktor penyesuaian
kapasitas akibat
pemisahan arah
int 4
13 FCsf faktor penyesuaian int 4
44
kapasitas akibat
hambatan samping
14 kapasitas dasar kapasitas dasar
(smp/jam)
int 5
15 kapasitas kapasitas (smp/jam) int 5
16 tingkat_pelayanan tingkat pelayanan char 15
Tabel 3.1 fisikal data model tabel ruas jalan
2. Tabel Prasarana Ruas
N
o
Field Keterangan Tip
e
Leba
r
1 no_prasarana_ruas nomor prasarana
ruas jalan
int 3
2 no_ruas_jalan nomor ruas int 3
3 no_jenis_prasarana nomor jenis
prasarana
int 3
4 sub_ruas sub ruas char 2
5 sta_awal sta awal char 10
6 sta_akhir sta akhir char 10
7 pemasangan letak pemasangan char 15
8 tahun tahun pemasangan char 4
9 kondisi kondisi char 6
45
10 usulan_penanganan usulan penanganan char 25
11 alinemen_vertikal alinemen vertikal char 5
12 alinemen_horizonta
l
alinemen
horizontal
char 10
13 keterangan keterangan char 100
Tabel 3.2 fisikal data model tabel prasarana ruas
3. Tabel Simpang
No Field Keterangan Tipe Lebar
1 no_simpang nomor
simpang
int 3
2 nama_simpang nama
simpang
char 50
3 tipe_simpang tipe simpang char 10
4 tundaan_rata2 tundaan
rata-rata
(det/smp)
char 4
5 APILL apill char 5
6 DS degree of
saturation
int 4
7 kapasitas kapasitas
(smp/jam)
char 15
8 pendekat_mayor1 pendekat char 20
46
mayor 1
9 pendekat_mayor2 pendekat
mayor2
char 20
10 pendekat_minor1 pendekat
minor1
char 20
11 pendekat_minor2 pendekat
minor2
char 20
12 jml_ljr_lengan_mayor1 jumlah lajur
pendekat
mayor 1
int 1
13 jml_ljr_lengan_mayor2 jumlah lajur
pendekat
mayor 2
int 1
14 jml_ljr_lengan_minor1 jumlah lajur
pendekat
minor 1
int 1
15 jml_ljr_lengan_mayor1 jumlah lajur
pendekat
minor 2
int 1
16 arus_masuk_pendekat_mayor1 arus masuk
pendekat
mayor1
(smp/jam)
int 5
47
17 arus_masuk_pendekat_mayor2 arus masuk
pendekat
mayor2
(smp/jam)
int 5
18 arus_masuk_pendekat_minor1 arus masuk
pendekat
minor1
(smp/jam)
int 5
19 arus_masuk_pendekat_minor2 arus masuk
pendekat
minor2
(smp/jam)
int 5
Tabel 3.3 fisikal data model tabel simpang
4. Tabel Prasarana Simpang
No Field Keterangan Tipe Lebar
1 no_prasarana_simpang nomor prasarana
simpang
int 3
2 no_simpang nomor simpang int 3
3
no_jenis_prasarana nomor jenis
prasarana
int
3
4 pendekat pendekat char 20
5 sta_lokasi sta lokasi char 10
48
6 panjang panjang (m) int 4
7 jumlah jumlah char 15
8 tahun tahun char 4
9 kondisi kondisi char 6
10 usuluan_penanganan usulan
penanganan
char 25
11 ket keterangan char 100
Tabel 3.4 fisikal data model tabel prasarana simpang
5. Tabel Jenis Prasarana
No Field Keterangan Tipe Lebar
1 no_jenis_prasar
ana
nomor jenis prasarana int 3
2 jenis_prasarana jenis_prasarana char 30
Tabel 3.5 fisikal data model tabel jenis prasarana
6. Tabel Admin
No Field Keterangan Tipe Lebar
1 id_admin id admin int 2
2 username username char 20
3 password password char 20
4 status status char 5
Tabel 3.6 fisikal data model tabel admin
49
7. Tabel Keluhan
No Field Keterangan Tipe Lebar
1 id_keluhan id keluhan int 3
2 tanggal tanggal date
3 pengirim pengirim char 20
4 isi isi char 100
Tabel 3.7 fisikal data model tabel keluhan
8. Tabel Berita
No Field Keterangan Tipe Lebar
1 id_berita id berita int 3
2 judul judul char 200
3 isi isi blob -
Tabel 3.8 fisikal data model tabel berita
50
3.2.1.3 Data Contoh
1. Tabel Ruas Jalan
No Ruas Nama Ruas Panjang
Lebar Total
Volume LL
Kelas Jalan
Status Jalan
Kapasitas Dasar FCw FCsp FCsf Fungsi Jalan
Wilayah Adm
Tipe Jalan Kapasitas
Tingkat Pelayanan
38 Ring Road Utara 1,80 9,00 3.340,00 III B Propinsi 3100 1,25 1 1 Kolektor Primer Sleman 2/2UD 3875 Dapat Diterima
11 Srandakan - Toyan 14,98 6,00 2.324,00 III B Propinsi 3100 0,91 1 1 Kolektor Primer Kl. Progo 2/2UD 2821 Dapat Diterima
12 Yogyakarta - Parang Tritis 24,36 9,00 3.436,00 III B Propinsi 3100 1,25 1 1 Kolektor Primer Bantul 2/2UD 3875 Dapat Diterima
3 Yogyakarta - Prambanan 17,83 9,00 857,00 IIIA Nasional 3000 1,15 1 1 Arteri Skunder Sleman 2/2UD 3450 Sangat Baik
9 Paliyan - Playen 11,61 12,00 1.633,00 III B Propinsi 6800 0,91 1 1,02 Kolektor Primer Gn. Kidul 4/2UD 6311,76 Sangat Baik
45 Playen - Gledak 5.2 10.00 1,455.00 IIIA Nasional 3200 0.80 1 1 Arteri Skunder Gn. Kidul 2/2UD 4566 Sangat Baik
44 Gading - Wonosari 6.7 12.50 852.00 IIIA Nasional 3500 0.45 1 1.09 Arteri Skunder Gn. Kidul 2/2UD 4125 Sangat Baik
Tabel 3.9 data contoh ruas jalan
2. Tabel Prasarana Ruas Jalan
No Prasarana
Ruas No
Ruas Sub
Ruas Ruas Jenis Prasarana
LL Sta Awal Sta Akhir Pemasangan Panjang Jumlah Tahun Kondisi Usulan
Penanganan Alinemen Horisontal
Alinemen Vertikal Keterangan
PJ001 11 1 Srandakan - Toyan Rambu LL 0+000 0+000 Kanan 40 3 2000 Baik - Lurus Datar S3 Srandakan
PJ002 11 1 Srandakan - Toyan Rambu LL 0+100 0+100 Kiri 40 3 2001 Baik - Lurus Datar
PJ003 11 1 Srandakan - Toyan Pagar Pengaman 10+500 10+600 Kiri 50 1 2005 Baik - Tikungan Datar
PJ004 11 1 Srandakan - Toyan Pagar Pengaman 10+500 10+600 Kanan 50 1 2005 Baik - Lurus Datar
PJ005 11 1 Srandakan - Toyan Rambu LL 10+900 10+900 Kiri 50 3 2006 Baik - Lurus Datar
PJ006 9 1 Yogyakarta - Bantul Rambu LL 6+200 6+200 Kiri 50 3 2001 Baik - Lurus Datar
Tabel 3.10 data contoh prasarana ruas jalan
51
3. Tabel Simpang
No simpang
Nama Simpang
Tipe Simpang
Pendekat Mayor 1
Pendekat Mayor 2
Pendekat Minor 1
Pendekat Minor 2
Jumlah Lajur
Lengan Mayor 1
Jumlah Lajur
Lengan Mayor 2
Jumlah Lajur
Lengan Minor 1
Jumlah Lajur
Lengan Minor 2
Arus Masuk
Pendekat Mayor 1
Arus Masuk
Pendekat Mayor 2
Arus Masuk
Pendekat Minor 1
Arus Masuk
Pendekat Minor 2
Kapasitas (smp/jam)
Tundaan
Rata-rata
Degree of Saturation (DS) APILL
60
S-3 Maguwoharjo 322
Ring Road Utara
Yogyakarta-Prambanan
Yogyakarta-Prambanan 2 2 2 936,9 2703,15 2703,15 0 3600 0 1,762 Ya
62 S-4 Druwo 422 Yogyakarta - Parang Tritis
Yogyakarta - Parang Tritis
Ring Road Selatan (Janti - Gamping)
Ring Road Selatan (Janti - Gamping) 2 2 2 2 1574 1574 1004 1004 4200 0
1,22761904
8 Ya
2
S-3 Temanggung 322
Panggang - Temanggung - Paliyan
Panggang - Temanggung - Paliyan
Temanggung - Kemiri 2 2 2 770,5 770,5 225 2700 0
0,65407407
4 Tidak
3 S-3 Playen 322 Paliyan - Playen
Playen - Gading
Playen - Gledak 2 2 2 1017 577 1022,5 2700 0
0,96907407
4 Tidak
12 S-3 Gading 322 Piyungan - Gading
Gading - Wonosari
Playen - Gading 275 275 410 335 2700 0
0,47962963 Ya
Tabel 3.11 data contoh simpang
4. Tabel Prasarana Simpang
no prasarana simpang Nama Simpang Pendekat Sta Lokasi
Panjang (m) Jumlah Tahun Kondisi
Usulan Penanganan Keterangan
PS001 S 3 Maguwo Ringroad Utara 50 3 Baik -
PS001 S 3 Maguwo Yogya - Prambanan 50 3 Baik -
PS001 S 3 Maguwo Yogya - Prambanan 40 3 Baik -
PS001 S-4 Pasar Gamping Yogya - Wates 45 3 Baik -
PS001 S-4 Pasar Gamping Ringroad Selatan 50 3 Baik -
Tabel 3.12 data contoh prasarana simpang
52
5. Tabel Jenis Prasarana
No_ jenis_prasarana Jenis Prasarana
1 Rambu LL
2 Cermin Tikungan
3 Pagar Pengaman
4 Paku Marka
5 Delineator
Tabel 3.13 data contoh prasarana simpang
3.2.2 Desain Input Output
3.2.2.1 Desain User Interface
3.2.2.1.1 Form Login
Gambar 3.17 form login
HEADER
FOOTER
Username :Password :
Login
Tanggal _hari ini
Home >> Login
53
3.2.2.1.2 Form Utama Admin
Gambar 3.18 form utama admin
3.2.2.1.3 Form Lihat Ruas Jalan
Gambar 3.19 form lihat ruas jalan
54
3.2.2.1.4 Form Lihat Prasarana Ruas Jalan
Gambar 3.20 form lihat prasarana ruas jalan
3.2.2.1.5 Form Lihat Simpang
Gambar 3.21 form lihat simpang
55
3.2.2.1.6 Form Lihat Prasarana Simpang
Gambar 3.22 form lihat prasarana simpang
3.2.2.1.7 Form Detail Geometri dan Kinerja Ruas Jalan
Gambar 3.23 form detail Geometri dan Kinerja ruas jalan
56
3.2.2.1.8 Form detail prasarana Ruas jalan
Gambar 3.24 form detail Prasarana Ruas jalan
3.2.2.1.9 Form detail Kinerja Simpang
Gambar 3.25 form detail Kinerja Simpang
57
3.2.2.1.10 Form Detail Prasarana Simpang
Gambar 3.26 form detail prasarana Simpang
3.2.2.1.11 Form Update User
Gambar 3.27 form update user
58
3.2.2.1.12 Form Update Keluhan
Gambar 3.28 form update keluhan
3.2.2.1.13 Form Tambah Ruas Jalan
Gambar 3.29 form tambah ruas jalan
59
3.2.2.1.14 Form Tambah Prasarana Ruas Jalan
Gambar 3.30 form tambah prasarana ruas jalan
3.2.2.1.15 Form Tambah Simpang
Gambar 3.31 form tambah simpang
60
3.2.2.1.16 Form Tambah Prasarana Simpang
Gambar 3.32 form tambah prasarana simpang
3.2.2.1.17 Form Tambah User
Gambar 3.33 form tambah user
61
3.2.2.1.18 Form Tambah Keluhan
Gambar 3.34 form tambah keluhan
3.2.2.1.19 Form Ubah Ruas Jalan
Gambar 3.35 form ubah ruas jalan
62
3.2.2.1.20 Form Ubah Prasarana Ruas Jalan
Gambar 3.36 form ubah Prasarana ruas jalan
3.2.2.1.21 Form Ubah Simpang
Gambar 3.37 form ubah simpang
63
3.2.2.1.22 Form Ubah Prasarana Simpang
Gambar 3.38 form ubah prasarana simpang
3.2.2.1.23 Form Utama Untuk User Bagian Lalu Lintas
Gambar 3.39 form utama untuk user bagian lalu lintas
64
3.2.2.1.24 Form Lihat Ruas Jalan Untuk User Bagian Lalu Lintas
Gambar 3.40 form lihat ruas jalan untuk user bagian lalu lintas
3.2.2.1.25 Form Lihat Prasarana Ruas Jalan Untuk User Bagian Lalu Lintas
Gambar 3.41 form lihat prasarana ruas jalan untuk user bagian lalu lintas
65
3.2.2.1.26 Form Lihat Simpang Untuk User Bagian Lalu Lintas
Gambar 3.42 form lihat simpang untuk user bagian lalu lintas
3.2.2.1.27 Form Lihat Prasarana Simpang Untuk User Bagian Lalu Lintas
Gambar 3.43 form lihat prasarana simpang untuk user bagian lalu lintas
66
3.2.2.1.28 Form Lihat Keluhan Untuk User Bagian Lalu Lintas
Gambar 3.44 form lihat keluhan Untuk User bagian lalu lintas
3.2.2.1.29 Form Isi Keluhan Untuk User Bagian Lalu Lintas
Gambar 3.45 form isi keluhan User bagian lalu lintas
67
3.2.2.1.30 Form Laporan Ruas Jalan
Gambar 3.46 form laporan ruas jalan
3.2.2.1.31 Form Laporan Prasarana Ruas Jalan
Gambar 3.47 form laporan prasarana ruas jalan
68
3.2.2.1.32 Form Laporan Simpang
Gambar 3.48 form laporan simpang
3.2.2.1.33 Form Laporan Prasarana Simpang
Gambar 3.49 form laporan prasarana simpang
69
3.2.2.1.34 Form Utama Untuk User Masyarakat Umum
Gambar 3.50 form utama untuk user dari masyarakat umum
70
3.2.2.2 Desain Output
3.2.2.2.1 Desain Output Laporan Ruas Jalan
Gambar 3.51 desain output laporan ruas jalan
71
3.2.2.2.2 Desain Output Laporan Prasarana Ruas Jalan
Gambar 3.52 desain output laporan prasarana ruas jalan
72
3.2.2.2.3 Desain Output Laporan Simpang
Gambar 3.53 desain output laporan simpang
73
3.2.2.2.4 Desain Output Laporan Simpang
Gambar 3.54 desain output laporan prasarana simpang
74
BAB IV IMPLEMENTASI
Pada bab berikut akan dijelaskan lebih lanjut mengenai implementasi dari
perancangan “Sistem Informasi Prasarana Lalu Lintas” yang telah dibuat pada bab
sebelumnya.
4.1 Perangkat Kebutuhan Sistem
Dalam pengujian sistem diperlukan sistem penunjang, diantaranya sebagai berikut:
Server
a. Microsoft Windows XP Professional SP 1
b. My SQL 5 untuk databasenya
c. PHP versi 4.0
d. Apache sebagai web service.
Client
a. Microsoft Windows XP Professional SP 1
b. IE (Internet Explorer)
4.2 Koneksi Database
Dalam pembuatan sistem informasi ini, langkah pertama yang harus
dilakukan adalah menghubungkan database dengan sistem. Adapun koneksi
database yang digunakan dalam adalah sebagai berikut.
<? $database = "prasarana"; $hostname = "localhost"; $username = "root"; $password = "";
75
$koneksi = mysql_connect($hostname, $username, $password)or die('<script>alert("Tidak dapat melakukan koneksi ke server..!\n");</script>'); mysql_select_db($database, $koneksi)or die('<script>alert("Tidak dapat melakukan koneksi ke database.. !\n");</script>'); ?>
4.2 Antar muka
Antar muka merupakan tampilan yang nantinya akan berinteraksi langsung dengan
user.
4.2.1 Halaman Login
Halaman login ini digunakan bagi admin dan user (bagian perhubungan)
sebelum masuk ke form utama admin atau user.Admin atau user diharuskan mengisi
username dan password, dan kemudian menekan tombol login untuk masuk ke
halaman user atau admin. Jika username dan password tidak sesuai maka akan
tampil konfirmasi bahwa username dan password salah dan user akan diminta untuk
memasukkan kembali username dan password yang benar.
Gambar 4.1 Halaman login
76
Gambar 4.2 Konfirmasi Login salah
4.2.2 Halaman Utama User (Masyarakat Umum)
Pada halaman utama terdapat header. Terdapat juga menu-menu diantaranya
profil yaitu berisi profil dari dinas Perhubungan Propinsi DIY, pengaduan yang
berisi cuplikan pengaduan dari masyarakat dan fasilitas bagi masyarakat umum
untuk menginputkan keluhan-keluhan, kontak kami berisi mengenai alamat sumber
atau Dinas Perhubungan Propinsi DIY , sejarah yang berisi sejarah berdirinya Dinas
Perhubungan. Disamping itu tersedia juga kolom berita yaitu berisi cuplikan berita
terbaru sekitar perhubungan Propinsi DIY yang bisa dilihat berita selengkapnya
dengan meng-klik cuplikan berita tersebut.
77
gambar 4.3 Halaman User
4.2.3 Halaman Admin
Halaman admin ini hanya diperuntukkan bagi admin saja. Halaman ini akan
ditampilkan saat admin berhasil login sebagai admin. Di halaman ini admin dapat
melakukan update terhadap data-data yang ada. Menu yang ada terdiri dari home
untuk menuju ke halaman utama admin. Menu Prasarana digunakan oleh admin
untuk melihat, menambah dan mengubah data jenis Prasarana. User untuk
menambah user baru dan melihat dan menghapus data user. Menu Ubah Profil untuk
mengubah password admin. Menu keluhan digunakan oleh admin untuk menyaring
keluhan yang akan ditampilkan pada halaman user (masyarakat umum) dan
menghapus data keluhan. Menu Berita digunakan oleh admin untuk menambah,
mengubah dan menghapus berita. Menu Geometri dan Kinerja Ruas jalan digunakan
oleh admin untuk melihat dan meng-update data Geometri dan Kinerja Ruas jalan.
Menu Prasarana Ruas Jalan digunakan oleh admin untuk melihat dan meng-update
data Prasarana Ruas jalan . Menu Kinerja Simpang digunakan oleh admin untuk
78
melihat dan meng-update data Kinerja Simpang. Menu Kinerja Ruas Jalan
digunakan oleh admin untuk melihat dan meng-update data Kinerja Ruas jalan.
Logout adalah digunakan untuk keluar dari halaman admin.
gambar 4.4 Halaman Admin
4.2.4 Halaman Utama User ( Bagian Lalu Lintas)
Halaman user ini hanya diperuntukkan bagi user dari bagian lalu lintas saja.
Halaman ini akan ditampilkan saat user berhasil login sebagai user. Menu yang ada
terdiri dari home untuk menuju ke halaman utama user. Menu Ubah Profil untuk
mengubah password user. Menu Geometri dan Kinerja Ruas jalan digunakan untuk
melihat data dan laporan Geometri dan Kinerja Ruas jalan. Menu Prasarana Ruas
Jalan digunakan untuk melihat dan data dan laporan Prasarana Ruas jalan . Menu
Kinerja Simpang digunakan untuk melihat data dan laporan Kinerja Simpang. Menu
Kinerja Ruas Jalan digunakan untuk melihat data dan laporan Kinerja Ruas jalan.
Logout adalah digunakan untuk keluar dari halaman admin.
79
gambar 4.5 Halaman User Bagian Lalu Lintas
4.3 Antar muka Admin
4.3.1 Halaman Cari dan Lihat Prasarana
Halaman ini digunakan oleh admin untuk melihat dan mencari data jenis
prasarana. Untuk menambah data prasarana maka admin dapat menekan tombol
tambah yang akan memberikan fasilitas tampilan untuk melakukan tambah data jenis
parasarana.
80
gambar 4.6 Halaman Cari dan Lihat Jenis Prasarana
Potongan program lihat data jenis prasarana $query = "SELECT * FROM jenis_prasarana "; $counter = 1; $result = mysql_query($query); while ($data = mysql_fetch_array($result)) { echo "<tr>"; echo "<td><span class=style15>$counter</span></td>"; echo "<td><span class=style15>$data[nama_jenis_prasarana]</span></td>";
echo "<td><span class=style15><a href=inputJenisPrasarana.php?proses=edit&id=$data[id_jenis_prasarana]>edit</a></td></span>";
echo "</tr>"; $counter = $counter + 1; }
Potongan program cari jenis prasarana
$query = "SELECT * FROM jenis_prasarana WHERE nama_jenis_prasarana LIKE '%$_REQUEST[cari_nama]%'"; $counter = 1; $result = mysql_query($query); while ($data = mysql_fetch_array($result)) { echo "<tr>"; echo "<td><span class=style15>$counter</span></td>";
echo "<td><span class=style15>$data[nama_jenis_prasarana]</span></td>"; echo "<td><span class=style15><a href=inputJenisPrasarana.php?proses=edit&id=$data[id_jenis_prasarana]>edit</a></td></span>";
echo "</tr>";
81
$counter = $counter + 1; }
4.3.2 Halaman Tambah Prasarana
Halaman ini digunakan oleh admin untuk menambah data jenis prasarana.
Halaman ini akan tampil saat admin menekan tombol tambah yang terlihat pada
halaman Cari dan Lihat Jenis Prasarana pada gambar 4.6. Tombol simpan digunakan
untuk menyimpan data yang akan ditambahkan, tombol reset digunakan untuk
mengosongkan kembali field.
gambar 4.7 Halaman Tambah Jenis Prasarana
Potongan Program tambah jenis prasarana $id = 1; $query = "SELECT * FROM jenis_prasarana ORDER BY id_jenis_prasarana"; $result = mysql_query($query); while ($data = mysql_fetch_array($result)) { $id = $data['id_jenis_prasarana'] + 1; } $query = "INSERT INTO jenis_prasarana VALUES($id, '$jenis_prasarana')"; mysql_query($query);
4.3.3 Halaman Edit Prasarana
82
Halaman ini digunakan oleh admin untuk mengubah data jenis prasarana.
Halaman ini akan tampil saat admin menekan tombol edit yang terlihat pada
halaman Cari dan Lihat Jenis Prasarana pada gambar 4.6. Tombol simpan digunakan
untuk menyimpan data yang akan ditambahkan.
gambar 4.8 Halaman Edit Jenis Prasarana
Potongan program edit jenis prasarana $query = "UPDATE jenis_prasarana SET nama_jenis_prasarana = '$jenis_prasarana' WHERE id_jenis_prasarana = '$_REQUEST[id]'"; mysql_query($query);
4.3.4 Halaman Geometri dan Kinerja Ruas Jalan
Halaman ini digunakan oleh admin untuk melihat data geometri dan Kinerja
Ruas Jalan. Admin juga dapat melakukan pencarian data geometri dan Kinerja Ruas
Jalan dengan memasukkan jenis pencarian yang akan dilakukan dan kata kunci
sesuai dengan jenis pencarian yang dilakukan dan kemudian menekan tombol cari.
Untuk menambah data Geometri dan Kinerja Ruas jalan admin dapat menekan
tombol tambah, dan untuk melihat laporan Geometri dan Kinerja Ruas jalan admin
83
dapat menekan tombol Lihat Laporan. Tombol detail digunakan untuk melihat secara
lengkap data Geometri dan Kinerja Ruas jalan.
gambar 4.9 Halaman Cari dan Lihat Geometri dan Kinerja Ruas jalan
Potongan Program Lihat Geometri dan Kinerja Ruas Jalan: $query = "SELECT * FROM ruas_jalan"; $result = mysql_query($query); $bantu = 10; $jmlhalaman = ceil(mysql_num_rows($result) / $bantu); if(!isset($halaman)) { $halaman = 0; } $bantu2 = $halaman * $bantu; $queryb = "SELECT * FROM ruas_jalan limit $bantu2, $bantu"; $result = mysql_query($queryb); while($data = mysql_fetch_array($result)) { $vc_ratio = $data['volume_ll'] / $data['kapasitas']; if (($vc_ratio > 0) and ($vc_ratio < 0.7)) { $tingkat = 'Sangat Baik'; } elseif(($vc_ratio >= 0.7) and ($vc_ratio < 0.8)) { $tingkat = 'Baik'; } elseif(($vc_ratio >= 0.8) and ($vc_ratio < 1)) { $tingkat = 'Dapat diterima'; }
84
else { $tingkat = 'Buruk'; } echo "<tr>"; echo "<td><span class=style15>$data[no_ruas_jalan]</span></td>"; echo "<td><span class=style15>$data[nama_ruas]</span></td>"; echo "<td><span class=style15>$data[wilayah_administrasi]</span></td>"; echo "<td><span class=style15>$vc_ratio</td></span>"; echo "<td><span class=style15>$tingkat</td></span>"; echo "<td><span class=style15><a href=konfRuas.php? proses=lihat&id=$data[no_ruas_jalan]>detail</a></td></span>"; echo "</tr>"; } for($i=0;$i<$jmlhalaman;$i++) { $x = $i+1; $linkHalaman = "[<a class='linktext' href='Ruas.php?halaman=$i'>$x</a>]"; }
Potongan program cari Geometri dan Kinerja Ruas Jalan
if ($_REQUEST['cari_vc_bawah'] <> "" and $_REQUEST['cari_vc_atas'] <> "") {
$bantu = 10; $query = "SELECT * FROM ruas_jalan WHERE no_ruas_jalan like '%$_REQUEST[cari_id]%' AND wilayah_administrasi like '%$_REQUEST[cari_wilayah]%' AND volume_ll / kapasitas >= $_REQUEST[cari_vc_bawah] AND volume_ll / kapasitas <= $_REQUEST[cari_vc_atas]"; $result = mysql_query($query); $jmlhalaman = ceil(mysql_num_rows($result) / $bantu); if(!isset($halaman)) { $halaman = 0; } $bantu2 = $halaman * $bantu; $queryb = "SELECT * FROM ruas_jalan WHERE no_ruas_jalan like '%$_REQUEST[cari_id]%' AND wilayah_administrasi like '%$_REQUEST[cari_wilayah]%' AND volume_ll / kapasitas >= $_REQUEST[cari_vc_bawah] AND volume_ll / kapasitas <= $_REQUEST[cari_vc_atas] limit $bantu2, $bantu"; $result = mysql_query($queryb); while($data = mysql_fetch_array($result)) { $vc_ratio = $data['volume_ll'] / $data['kapasitas']; if (($vc_ratio > 0) and ($vc_ratio < 0.7)) { $tingkat = 'Sangat Baik'; } elseif(($vc_ratio >= 0.7) and ($vc_ratio < 0.8)) { $tingkat = 'Baik'; }
85
elseif(($vc_ratio >= 0.8) and ($vc_ratio < 1)) { $tingkat = 'Dapat diterima'; } else { $tingkat = 'Buruk'; }
echo "<tr>"; echo "<td><span class=style15>$data[no_ruas_jalan]</span></td>"; echo "<td><span class=style15>$data[nama_ruas]</span></td>"; echo "<td><span class=style15>$data[wilayah_administrasi]</span></td>"; echo "<td><span class=style15>$vc_ratio</td></span>"; echo "<td><span class=style15>$tingkat</td></span>"; echo "<td><span class=style15><a href=konfRuas.php?proses=lihat&id=$data[no_ruas_jalan]>detail</a></td></span>"; echo "</tr>"; } for($i=0;$i<$jmlhalaman;$i++) {
$x = $i+1; $linkHalaman = "[<a class='linktext' href='Ruas.php?cari_id=$_REQUEST[cari_id]&cari_wilayah=$_REQUEST[cari_wilayah]&cari_vc_bawah=$_REQUEST[cari_vc_bawah]&cari_vc_atas=$_REQUEST[cari_vc_atas]&cari=Cari&halaman=$i'>$x</a>]";
} } elseif ($_REQUEST['cari_vc_bawah'] <> "" and $_REQUEST['cari_vc_atas'] = "") {
$bantu = 10; $query = "SELECT * FROM ruas_jalan WHERE no_ruas_jalan like '%$_REQUEST[cari_id]%' AND wilayah_administrasi like '%$_REQUEST[cari_wilayah]%' AND volume_ll / kapasitas >= $_REQUEST[cari_vc_bawah]"; $result = mysql_query($query); $jmlhalaman = ceil(mysql_num_rows($result) / $bantu); if(!isset($halaman)) { $halaman = 0; } $bantu2 = $halaman * $bantu; $queryb = "SELECT * FROM ruas_jalan WHERE no_ruas_jalan like $_REQUEST[cari_id]%' AND wilayah_administrasi like '%$_REQUEST[cari_wilayah]%' AND volume_ll / kapasitas >= $_REQUEST[cari_vc_bawah] limit $bantu2, $bantu"; $result = mysql_query($queryb); while($data = mysql_fetch_array($result)) { $vc_ratio = $data['volume_ll'] / $data['kapasitas']; if (($vc_ratio > 0) and ($vc_ratio < 0.7)) { $tingkat = 'Sangat Baik'; } elseif(($vc_ratio >= 0.7) and ($vc_ratio < 0.8)) {
86
$tingkat = 'Baik'; } elseif(($vc_ratio >= 0.8) and ($vc_ratio < 1)) { $tingkat = 'Dapat diterima'; } else { $tingkat = 'Buruk'; } echo "<tr>"; echo "<td><span class=style15>$data[no_ruas_jalan]</span></td>"; "<td><span class=style15>$data[nama_ruas]</span></td>"; echo "<td><span class=style15>$data[wilayah_administrasi]</span></td>"; echo "<td><span class=style15>$vc_ratio</td></span>"; echo "<td><span class=style15>$tingkat</td></span>"; echo "<td><span class=style15><a href=konfRuas.php?proses=lihat&id=$data[no_ruas_jalan]>detail</a></td></span>"; echo "</tr>"; }
for($i=0;$i<$jmlhalaman;$i++) {
$x = $i+1; $linkHalaman = "[<a class='linktext' href='Ruas.php?cari_id=$_REQUEST[cari_id]&cari_wilayah=$_REQUEST[cari_wilayah]&cari_vc_bawah=$_REQUEST[cari_vc_bawah]&cari_vc_atas=$_REQUEST[cari_vc_atas]&cari=Cari&halaman=$i'>$x</a>]";
} } elseif ($_REQUEST['cari_vc_atas'] <> "" and $_REQUEST['cari_vc_bawah'] = "") {
$bantu = 10; $query = "SELECT * FROM ruas_jalan WHERE no_ruas_jalan like '%$_REQUEST[cari_id]%' AND wilayah_administrasi like '%$_REQUEST[cari_wilayah]%' AND volume_ll / kapasitas <= $_REQUEST[cari_vc_atas]"; $result = mysql_query($query); $jmlhalaman = ceil(mysql_num_rows($result) / $bantu); if(!isset($halaman)) { $halaman = 0; } $bantu2 = $halaman * $bantu; $queryb = "SELECT * FROM ruas_jalan WHERE no_ruas_jalan like '%$_REQUEST[cari_id]%' AND wilayah_administrasi like '%$_REQUEST[cari_wilayah]%' AND volume_ll / kapasitas <= $_REQUEST[cari_vc_atas] limit $bantu2, $bantu"; $result = mysql_query($queryb); while($data = mysql_fetch_array($result)) { $vc_ratio = $data['volume_ll'] / $data['kapasitas']; if (($vc_ratio > 0) and ($vc_ratio < 0.7)) {
87
$tingkat = 'Sangat Baik'; } elseif(($vc_ratio >= 0.7) and ($vc_ratio < 0.8)) { $tingkat = 'Baik'; } elseif(($vc_ratio >= 0.8) and ($vc_ratio < 1)) { $tingkat = 'Dapat diterima'; } else { $tingkat = 'Buruk'; }
echo "<tr>"; echo "<td><span class=style15>$data[no_ruas_jalan]</span></td>"; echo "<td><span class=style15>$data[nama_ruas]</span></td>"; echo "<td><span class=style15>$data[wilayah_administrasi]</span></td>"; echo "<td><span class=style15>$vc_ratio</td></span>"; echo "<td><span class=style15>$tingkat</td></span>"; echo "<td><span class=style15><a href=konfRuas.php? proses=lihat&id=$data[no_ruas_jalan]>detail</a></td></span>"; echo "</tr>"; } for($i=0;$i<$jmlhalaman;$i++) {
$x = $i+1; $linkHalaman = "[<a class='linktext' href='Ruas.php?cari_id=$_REQUEST[cari_id]&cari_wilayah=$_REQUEST[cari_wilayah]&cari_vc_bawah=$_REQUEST[cari_vc_bawah]&cari_vc_atas=$_REQUEST[cari_vc_atas]&cari=Cari&halaman=$i'>$x</a>]";
} } else {
$bantu = 10; $query = "SELECT * FROM ruas_jalan WHERE no_ruas_jalan like '%$_REQUEST[cari_id]%' AND wilayah_administrasi like '%$_REQUEST[cari_wilayah]%'"; $result = mysql_query($query); $jmlhalaman = ceil(mysql_num_rows($result) / $bantu); if(!isset($halaman)) { $halaman = 0; } $bantu2 = $halaman * $bantu; $queryb = "SELECT * FROM ruas_jalan WHERE no_ruas_jalan like '%$_REQUEST[cari_id]%' AND wilayah_administrasi like '%$_REQUEST[cari_wilayah]%' limit $bantu2, $bantu"; $result = mysql_query($queryb); while($data = mysql_fetch_array($result)) { $vc_ratio = $data['volume_ll'] / $data['kapasitas']; if (($vc_ratio > 0) and ($vc_ratio < 0.7))
88
{ $tingkat = 'Sangat Baik'; } elseif(($vc_ratio >= 0.7) and ($vc_ratio < 0.8)) { $tingkat = 'Baik'; } elseif(($vc_ratio >= 0.8) and ($vc_ratio < 1)) { $tingkat = 'Dapat diterima'; } else { $tingkat = 'Buruk'; }
echo "<tr>"; echo "<td><span class=style15>$data[no_ruas_jalan]</span></td>"; echo "<td><span class=style15>$data[nama_ruas]</span></td>"; echo "<td><span class=style15>$data[wilayah_administrasi]</span></td>"; echo "<td><span class=style15>$vc_ratio</td></span>"; echo "<td><span class=style15>$tingkat</td></span>"; echo "<td><span class=style15><a href=konfRuas.php?proses=lihat&id=$data[no_ruas_jalan]>detail</a></td></span>"; echo "</tr>"; } for($i=0;$i<$jmlhalaman;$i++) {
$x = $i+1; $linkHalaman = "[<a class='linktext' href='Ruas.php?cari_id=$_REQUEST[cari_id]&cari_wilayah=$_REQUEST[cari_wilayah]&cari_vc_bawah=$_REQUEST[cari_vc_bawah]&cari_vc_atas=$_REQUEST[cari_vc_atas]&cari=Cari&halaman=$i'>$x</a>]";
} } }
4.3.5 Halaman Tambah Geometri dan Kinerja Ruas Jalan
Halaman ini digunakan oleh admin untuk menambah data jenis Geometri dan
Kinerja Ruas Jalan. Halaman ini akan tampil saat admin menekan tombol tambah
yang terlihat pada halaman Cari dan Lihat Geometri dan Kinerja Ruas Jalan pada
gambar 4.9. Tombol simpan digunakan untuk menyimpan data yang akan
ditambahkan, tombol reset digunakan untuk mengosongkan kembali field.
89
Gambar 4.10 tambah Geometri dan Kinerja Ruas Jalan
Potongan program tambah Geometri dan Kinerja Ruas Jalan
$queryTambah = "INSERT INTO ruas_jalan VALUES('$no_ruas', '$nama_ruas', '$tipe', '$kelas', '$wilayah_administrasi', '$fungsi', '$volume', '$lebar', '$panjang', '$status', '$fcw', '$fcsp', '$fcsf', '$kapasitas_dasar', '$kapasitas', '$frekuensi_kecelakaan')"; mysql_query($queryTambah);
4.3.6 Halaman Detail Geometri dan Kinerja Ruas Jalan
Halaman ini akan tampil saat tombol detail pada halaman Cari dan Lihat
Geometri dan Kinerja Ruas jalan seperti pada gambar 4.9 ditekan. Halaman ini akan
menampilkan data Geometri dan Kinerja Ruas jalan yang dipilih secara lengkap.
Pada halaman ini terdapat tombol edit yang jika ditekan maka akan menampilkan
halaman untuk mengubah data Geometri dan Kinerja Ruas jalan yang dipilih tadi,
tombol hapus digunakan untuk menghapus data Geometri dan Kinerja Ruas jalan
90
yang dipilih.Tombol tambah prasarana digunakan jika admin ingin menambahkan
prasarana ruas jalan pada nama ruas jalan yang dipilih tadi. Tombol Ok digunakan
untuk kembali ke form Cari dan Lihat Geometri dan Kinerja Ruas.
Gambar 4.11 detail Geometri dan Kinerja Ruas Jalan
Potongan program detail Geometri dan Kinerja Ruas Jalan
$query = "SELECT * FROM ruas_jalan WHERE no_ruas_jalan='$_REQUEST[id]'"; $result = mysql_query($query); while ($data = mysql_fetch_array($result)) { $no_ruas = $data['no_ruas_jalan']; $nama_ruas = $data['nama_ruas']; $panjang = $data['panjang']; $lebar = $data['lebar_total']; $volume = $data['volume_ll']; $kelas = $data['kelas_jalan']; $tipe = $data['tipe_jalan']; $status = $data['status_jalan']; $kapasitas = $data['kapasitas']; $kapasitas_dasar = $data['kapasitas_dasar']; $fcw = $data['fcw']; $fcsp = $data['fcsp']; $fcsf = $data['fcsf']; $frekuensi_kecelakaan = $data['frekuensi_kecelakaan']; $fungsi = $data['fungsi_jalan'];
91
$wilayah_administrasi = $data['wilayah_administrasi']; } $linkEdit = "<a href=inputRuas.php?proses=edit&id=$_REQUEST[id]>[EDIT]</a>"; $linkHapus = "<a href=hapusRuas.php?id=$_REQUEST[id]>[HAPUS]</a>"; $linkTambahPrasarana = "<a href=inputPrasaranaRuas.php?id=$_REQUEST[id]>[TAMBAH PRASARANA]</a>"; } if ((($volume / $kapasitas) > 0) and (($volume / $kapasitas) < 0.7)) { $tingkat = 'Sangat Baik'; } elseif((($volume / $kapasitas) >= 0.7) and (($volume / $kapasitas) < 0.8)) { $tingkat = 'Baik'; } elseif((($volume / $kapasitas) >= 0.8) and (($volume / $kapasitas) <= 1)) { $tingkat = 'Dapat diterima'; } else { $tingkat = 'Buruk';
}
4.3.7 Halaman Edit Geometri dan Kinerja Ruas Jalan
Halaman ini akan muncul saat tombol edit pada halaman detail
Geometri dan Kinerja Ruas Jalan seperti yang terlihat pada gambar 4.11
ditekan. Halaman ini digunakan untuk mengubah data Geometri dan
Kinerja Ruas Jalan. Tombol simpan digunakan untuk menyimpan data
Geometri dan Kinerja Ruas Jalan yang telah diubah.
92
Gambar 4.12 Edit data Geometri dan Kinerja Ruas Jalan
Potongan program edit Geometri dan Kinerja Ruas Jalan
$query = "UPDATE ruas_jalan SET no_ruas_jalan = '$no_ruas', nama_ruas = '$nama_ruas', tipe_jalan = '$tipe', kelas_jalan = '$kelas', wilayah_administrasi = '$wilayah_administrasi', fungsi_jalan = '$fungsi', volume_ll ='$volume', lebar_total = '$lebar', panjang ='$panjang', status_jalan = '$status', fcw = '$fcw', fcsp = '$fcsp', fcsf = '$fcsf', kapasitas_dasar = '$kapasitas_dasar',kapasitas = '$kapasitas', frekuensi_kecelakaan = '$frekuensi_kecelakaan' WHERE no_ruas_jalan = '$_REQUEST[id]'"; $result = mysql_query($query);
4.3.8 Halaman Hapus Geometri dan Kinerja Ruas Jalan
Halaman ini akan muncul saat tombol hapus pada halaman detail Geometri
dan Kinerja Ruas Jalan seperti yang terlihat pada gambar 4.11 ditekan. Halaman ini
merupakan konfirmasi untuk menghapus data. Jika data benar-benar akan dihapus
maka admin dapat menekan tombol Ya, tetapi jika admin batal menghapus data
maka admin dapat menekan tombol Tidak.
93
Gambar 4.13 Hapus data Geometri dan Kinerja Ruas Jalan
Potongan program Hapus Geometri dan Kinerja Ruas Jalan
$query = "DELETE FROM ruas_jalan WHERE no_ruas_jalan = '$_REQUEST[id]'"; mysql_query($query);
4.3.9 Halaman Prasarana Ruas Jalan
Halaman ini digunakan oleh admin untuk melihat data Prasarana Ruas Jalan.
Admin juga dapat melakukan pencarian data Prasarana Ruas Jalan dengan
memasukkan jenis pencarian yang akan dilakukan dan kata kunci sesuai dengan jenis
pencarian yang dilakukan dan kemudian menekan tombol cari. Untuk melihat
laporan Prasarana Ruas Jalan admin dapat menekan tombol Lihat Laporan. Tombol
detail digunakan untuk melihat secara lengkap data Prasarana Ruas Jalan.
94
gambar 4.14 Halaman Cari dan Lihat Prasarana Ruas jalan
Potongan Program Lihat Prasarana Ruas Jalan: $query = "SELECT * FROM prasarana_ruas ORDER BY no_ruas_jalan"; $counter = 1; $result = mysql_query($query); $bantu = 10; $jmlhalaman = ceil(mysql_num_rows($result) / $bantu); if(!isset($halaman)) { $halaman = 0; } $bantu2 = $halaman * $bantu; $queryb = "SELECT * FROM prasarana_ruas ORDER BY no_ruas_jalan LIMIT $bantu2, $bantu"; $result = mysql_query($queryb); while ($data = mysql_fetch_array($result)) { $strSql = "SELECT * FROM ruas_jalan WHERE no_ruas_jalan = '$data[no_ruas_jalan]'"; $result2 = mysql_query($strSql); while ($data2 = mysql_fetch_array($result2)) { $nama_ruas = $data2[nama_ruas]; } $strSql = "SELECT * FROM jenis_prasarana WHERE id_jenis_prasarana = $data[id_jenis_prasarana]"; $result2 = mysql_query($strSql); while ($data2 = mysql_fetch_array($result2)) { $jenis_prasarana = $data2[nama_jenis_prasarana]; }
95
echo "<tr>"; echo "<td align=center valign=middle><span class=style15>$counter</span></td>"; echo "<td><span class=style15>$nama_ruas</span></td>"; echo "<td align=center valign=middle><span class=style15>$data[sub_ruas]</span></td>"; echo "<td align=center valign=middle><span class=style15>$jenis_prasarana</td></span>"; echo "<td align=center valign=middle><span class=style15>$data[kondisi]</td></span>"; echo "<td align=center valign=middle><span class=style15>$data[usulan_penanganan]</td></span>"; echo "<td align=center valign=middle><span class=style15><a href=konfPrasaranaRuas.php?proses=lihat&id=$data[no_prasarana_ruas]>detail</a></td></span>"; echo "</tr>"; $counter = $counter + 1; } for($i=0;$i<$jmlhalaman;$i++) { $x = $i+1; $linkHalaman = "[<a class='linktext' href='prasaranaRuas.php?halaman=$i'>$x</a>]"; } }
Potongan program cari Prasarana Ruas Jalan
if ($_REQUEST[cari_nama] <> "" and $_REQUEST[cari_jenis] <> "") { $query = "SELECT * FROM ruas_jalan WHERE nama_ruas like '%$_REQUEST[cari_nama]%'"; $result = mysql_query($query); while ($data = mysql_fetch_array($result)) { $counter = 1; $query = "SELECT * FROM prasarana_ruas WHERE no_ruas_jalan = $data[no_ruas_jalan] AND id_jenis_prasarana = $_REQUEST[cari_jenis] AND kondisi like '%$_REQUEST[cari_kondisi]%' ORDER BY no_ruas_jalan"; $result2 = mysql_query($query); $bantu = 10; $jmlhalaman = ceil(mysql_num_rows($result2) / $bantu); if(!isset($halaman)) { $halaman = 0; } $bantu2 = $halaman * $bantu; $queryb = "SELECT * FROM prasarana_ruas WHERE no_ruas_jalan = $data[no_ruas_jalan] AND kondisi like '%$_REQUEST[cari_kondisi]%' ORDER BY no_ruas_jalan LIMIT $bantu2, $bantu"; $result2 = mysql_query($queryb); while ($data2 = mysql_fetch_array($result2)) { $strSql = "SELECT * FROM ruas_jalan WHERE no_ruas_jalan = '$data2[no_ruas_jalan]'"; $result3 = mysql_query($strSql); while ($data3 = mysql_fetch_array($result3)) {
96
$nama_ruas = $data3[nama_ruas]; } $strSql = "SELECT * FROM jenis_prasarana WHERE id_jenis_prasarana = $data2[id_jenis_prasarana]"; $result3 = mysql_query($strSql); while ($data3 = mysql_fetch_array($result3)) { $jenis_prasarana = $data3[nama_jenis_prasarana]; } echo "<tr>"; echo "<td align=center valign=middle><span class=style15>$counter</span></td>"; echo "<td><span class=style15>$nama_ruas</span></td>"; echo "<td align=center valign=middle><span class=style15>$data2[sub_ruas]</span></td>"; echo "<td align=center valign=middle><span class=style15>$jenis_prasarana</td></span>"; echo "<td align=center valign=middle><span class=style15>$data2[kondisi]</td></span>"; echo "<td align=center valign=middle><span class=style15>$data2[usulan_penanganan]</td></span>"; echo "<td><span class=style15><a href=konfPrasaranaRuas.php?proses=lihat&id=$data2[no_prasarana_ruas]>detail</a></td></span>"; echo "</tr>"; $counter = $counter + 1; } for($i=0;$i<$jmlhalaman;$i++) { $x = $i+1; $linkHalaman = "[<a class='linktext' href='prasaranaRuas.php?cari_nama=$_REQUEST[cari_nama]&cari_jenis=$_REQUEST[cari_jenis]&cari_kondisi=$_REQUEST[cari_kondisi]&halaman=$i'>$x</a>]"; } } } else if ($_REQUEST[cari_nama] == "" and $_REQUEST[cari_jenis] <> "") { $query = "SELECT * FROM prasarana_ruas WHERE id_jenis_prasarana = $_REQUEST[cari_jenis] AND kondisi like '%$_REQUEST[cari_kondisi]%' ORDER BY no_ruas_jalan"; $result = mysql_query($query); $counter = 1; $bantu = 10; $jmlhalaman = ceil(mysql_num_rows($result2) / $bantu); if(!isset($halaman)) { $halaman = 0; } $bantu2 = $halaman * $bantu; $queryb = "SELECT * FROM prasarana_ruas WHERE id_jenis_prasarana = $_REQUEST[cari_jenis] AND kondisi like '%$_REQUEST[cari_kondisi]%' ORDER BY no_ruas_jalan LIMIT $bantu2, $bantu"; $result2 = mysql_query($queryb); while ($data = mysql_fetch_array($result)) { $strSql = "SELECT * FROM ruas_jalan WHERE no_ruas_jalan = '$data[no_ruas_jalan]'"; $result3 = mysql_query($strSql);
97
while ($data3 = mysql_fetch_array($result3)) { $nama_ruas = $data3[nama_ruas]; } $strSql = "SELECT * FROM jenis_prasarana WHERE id_jenis_prasarana = $data[id_jenis_prasarana]"; $result3 = mysql_query($strSql); while ($data3 = mysql_fetch_array($result3)) { $jenis_prasarana = $data3[nama_jenis_prasarana]; } echo "<tr>"; echo "<td align=center valign=middle><span class=style15>$counter</span></td>"; echo "<td><span class=style15>$nama_ruas</span></td>"; echo "<td align=center valign=middle><span class=style15>$data[sub_ruas]</span></td>"; echo "<td align=center valign=middle><span class=style15>$jenis_prasarana</td></span>"; echo "<td align=center valign=middle><span class=style15>$data[kondisi]</td></span>"; echo "<td align=center valign=middle><span class=style15>$data[usulan_penanganan]</td></span>"; echo "<td><span class=style15><a href=konfPrasaranaRuas.php?proses=lihat&id=$data2[no_prasarana_ruas]>detail</a></td></span>"; echo "</tr>"; $counter = $counter + 1; } for($i=0;$i<$jmlhalaman;$i++) { $x = $i+1; $linkHalaman = "[<a class='linktext' href='prasaranaRuas.php?cari_nama=$_REQUEST[cari_nama]&cari_jenis=$_REQUEST[cari_jenis]&cari_kondisi=$_REQUEST[cari_kondisi]&halaman=$i'>$x</a>]"; } } else if ($_REQUEST[cari_nama] <> "" and $_REQUEST[cari_jenis] == "") { $query = "SELECT * FROM ruas_jalan WHERE nama_ruas like '%$_REQUEST[cari_nama]%'"; $result = mysql_query($query); while ($data = mysql_fetch_array($result)) { $counter = 1; $query = "SELECT * FROM prasarana_ruas WHERE no_ruas_jalan = $data[no_ruas_jalan] AND kondisi like '%$_REQUEST[cari_kondisi]%' ORDER BY no_ruas_jalan"; $result2 = mysql_query($query); $bantu = 10; $jmlhalaman = ceil(mysql_num_rows($result2) / $bantu); if(!isset($halaman)) { $halaman = 0; } $bantu2 = $halaman * $bantu; $queryb = "SELECT * FROM prasarana_ruas WHERE no_ruas_jalan = $data[no_ruas_jalan] AND kondisi like '%$_REQUEST[cari_kondisi]%' ORDER BY no_ruas_jalan LIMIT $bantu2, $bantu";
98
$result2 = mysql_query($queryb); while ($data2 = mysql_fetch_array($result2)) $strSql = "SELECT * FROM ruas_jalan WHERE no_ruas_jalan = '$data2[no_ruas_jalan]'"; $result3 = mysql_query($strSql); while ($data3 = mysql_fetch_array($result3)) { $nama_ruas = $data3[nama_ruas]; } $strSql = "SELECT * FROM jenis_prasarana WHERE id_jenis_prasarana = $data2[id_jenis_prasarana]"; $result3 = mysql_query($strSql); while ($data3 = mysql_fetch_array($result3)) { $jenis_prasarana = $data3[nama_jenis_prasarana]; } echo "<tr>"; echo "<td align=center valign=middle><span class=style15>$counter</span></td>"; echo "<td><span class=style15>$nama_ruas</span></td>"; echo "<td align=center valign=middle><span class=style15>$data2[sub_ruas]</span></td>"; echo "<td align=center valign=middle><span class=style15>$jenis_prasarana</td></span>"; echo "<td align=center valign=middle><span class=style15>$data2[kondisi]</td></span>"; echo "<td align=center valign=middle><span class=style15>$data2[usulan_penanganan]</td></span>"; echo "<td><span class=style15><a href=konfPrasaranaRuas.php?proses=lihat&id=$data2[no_prasarana_ruas]>detail</a></td></span>"; echo "</tr>"; $counter = $counter + 1; } for($i=0;$i<$jmlhalaman;$i++) { $x = $i+1; $linkHalaman = "[<a class='linktext' href='prasaranaRuas.php?cari_nama=$_REQUEST[cari_nama]&cari_jenis=$_REQUEST[cari_jenis]&cari_kondisi=$_REQUEST[cari_kondisi]&halaman=$i'>$x</a>]"; } } } else { $query = "SELECT * FROM prasarana_ruas WHERE kondisi like '%$_REQUEST[cari_kondisi]%' ORDER BY no_ruas_jalan"; $counter = 1; $result = mysql_query($query); $bantu = 10; $jmlhalaman = ceil(mysql_num_rows($result2) / $bantu); if(!isset($halaman)) { $halaman = 0; } $bantu2 = $halaman * $bantu; $queryb = "SELECT * FROM prasarana_ruas WHERE kondisi like '%$_REQUEST[cari_kondisi]%' ORDER BY no_ruas_jalan LIMIT $bantu2, $bantu"; $result2 = mysql_query($queryb);
99
while ($data = mysql_fetch_array($result)) { $strSql = "SELECT * FROM ruas_jalan WHERE no_ruas_jalan = '$data[no_ruas_jalan]'"; $result2 = mysql_query($strSql); while ($data2 = mysql_fetch_array($result2)) { $nama_ruas = $data2[nama_ruas]; } $strSql = "SELECT * FROM jenis_prasarana WHERE id_jenis_prasarana = $data[id_jenis_prasarana]"; $result2 = mysql_query($strSql); while ($data2 = mysql_fetch_array($result2)) { $jenis_prasarana = $data2[nama_jenis_prasarana]; } echo "<tr>"; echo "<td align=center valign=middle><span class=style15>$counter</span></td>"; echo "<td><span class=style15>$nama_ruas</span></td>"; echo "<td align=center valign=middle><span class=style15>$data[sub_ruas]</span></td>"; echo "<td align=center valign=middle><span class=style15>$jenis_prasarana</td></span>"; echo "<td align=center valign=middle><span class=style15>$data[kondisi]</td></span>"; echo "<td align=center valign=middle><span class=style15>$data[usulan_penanganan]</td></span>"; echo "<td align=center valign=middle><span class=style15><a href=konfPrasaranaRuas.php?proses=lihat&id=$data[no_prasarana_ruas]>detail</a></td></span>"; echo "</tr>"; $counter = $counter + 1; } for($i=0;$i<$jmlhalaman;$i++) { $x = $i+1; $linkHalaman = "[<a class='linktext' href='prasaranaRuas.php?cari_nama=$_REQUEST[cari_nama]&cari_jenis=$_REQUEST[cari_jenis]&cari_kondisi=$_REQUEST[cari_kondisi]&halaman=$i'>$x</a>]"; } } }
4.3.10 Halaman Tambah Prasarana Ruas Jalan
Halaman ini digunakan oleh admin untuk menambah data Prasarana Ruas
Jalan. Halaman ini akan tampil saat admin menekan tombol tambah yang terlihat
pada halaman Detail Geometri dan Kinerja Ruas Jalan pada gambar 4.11. Tombol
100
simpan digunakan untuk menyimpan data yang akan ditambahkan, tombol reset
digunakan untuk mengosongkan kembali field.
Gambar 4.15 tambah Prasarana Ruas Jalan
Potongan program tambah Prasarana Ruas Jalan
$queryTambah = "INSERT INTO prasarana_ruas VALUES($id,$no_ruas,'$sub_ruas',$jenis_prasarana,'$sta_awal',
'$sta_akhir','$pemasangan','$tahun','$kondisi','$usulan_penanganan','$alinemen_vertikal', '$alinemen_horizontal','$keterangan')";
mysql_query($queryTambah);
4.3.11 Halaman Detail Prasarana Ruas Jalan
101
Halaman ini akan tampil saat tombol detail pada halaman Prasarana Ruas
jalan seperti pada gambar 4.14 ditekan. Halaman ini akan menampilkan data
Prasarana Ruas jalan yang dipilih secara lengkap. Pada halaman ini terdapat tombol
edit yang jika ditekan maka akan menampilkan halaman untuk mengubah data
Prasarana Ruas jalan yang dipilih tadi, tombol hapus digunakan untuk menghapus
data prasarana Ruas jalan yang dipilih.
Gambar 4.16 Detail Prasarana Ruas Jalan
Potongan program detail Prasarana Ruas Jalan
$query = "SELECT * FROM prasarana_ruas WHERE no_prasarana_ruas = '$_REQUEST[id]'"; $result = mysql_query($query); while ($data = mysql_fetch_array($result)) { $no_prasarana_ruas = $data['no_prasarana_ruas']; $no_ruas = $data['no_ruas_jalan']; $sub_ruas = $data['sub_ruas']; $jenis_prasarana = $data['id_jenis_prasarana']; $sta_awal = $data['sta_awal']; $sta_akhir = $data['sta_akhir']; $pemasangan = $data['pemasangan'];
102
$tahun = $data['tahun']; $kondisi = $data['kondisi']; $usulan_penanganan = $data['usulan_penanganan']; $alinemen_vertikal = $data['alinemen_vertikal']; $alinemen_horizontal = $data['alinemen_horizontal']; $keterangan = $data['keterangan']; }
4.3.12 Halaman Edit Prasarana Ruas Jalan
Halaman ini akan muncul saat tombol edit pada halaman detail
prasarana Ruas Jalan seperti yang terlihat pada gambar 4.16 ditekan.
Halaman ini digunakan untuk mengubah data Prasarana Ruas Jalan.
Tombol simpan digunakan untuk menyimpan data Prasarana Ruas Jalan
yang telah diubah.
Gambar 4.17 Edit Prasarana Ruas Jalan
Potongan program edit Prasarana Ruas Jalan
$query = "UPDATE prasarana_ruas SET no_ruas_jalan = '$no_ruas',sub_ruas = '$sub_ruas', id_jenis_prasarana = $id_jenis_prasarana,sta_awal =
103
'$sta_awal',sta_akhir = '$sta_akhir',pemasangan = '$pemasangan',tahun = '$tahun',kondisi = '$kondisi',usulan_penanganan = '$usulan_penanganan', alinemen_vertikal = '$alinemen_vertikal',alinemen_horizontal = '$alinemen_horizontal',keterangan = '$keterangan' WHERE no_prasarana_ruas = $_REQUEST[id]"; $result = mysql_query($query);
4.3.13 Halaman Hapus Prasarana Ruas Jalan
Halaman ini akan muncul saat tombol hapus pada halaman detail
Prasarana Ruas Jalan seperti yang terlihat pada gambar 4.16 ditekan.
Halaman ini merupakan konfirmasi untuk menghapus data. Jika data benar-
benar akan dihapus maka admin dapat menekan tombol Ya, tetapi jika
admin batal menghapus data maka admin dapat menekan tombol Tidak
Gambar 4.18 Hapus data Prasarana Ruas Jalan
Potongan program Hapus Prasarana Ruas Jalan
$query = "DELETE FROM prasarana_ruas WHERE no_prasarana_ruas = '$_REQUEST[id]'"; mysql_query($query);
104
4.3.14 Halaman Kinerja Simpang
Halaman ini digunakan oleh admin untuk melihat data Kinerja Simpang.
Admin juga dapat melakukan pencarian data Kinerja Simpang dengan memasukkan
jenis pencarian yang akan dilakukan dan kata kunci sesuai dengan jenis pencarian
yang dilakukan dan kemudian menekan tombol cari. Untuk menambah data Kinerja
Simpang admin dapat menekan tombol tambah, dan untuk melihat laporan Kinerja
Simpang admin dapat menekan tombol Lihat Laporan. Tombol detail digunakan
untuk melihat secara lengkap data Kinerja Simpang.
gambar 4.19 Halaman Cari dan Lihat Kinerja Simpang
Potongan Program Lihat Kinerja Simpang: $counter = 1; $query = "SELECT * FROM SIMPANG"; $result = mysql_query($query); $bantu = 10; $jmlhalaman = ceil(mysql_num_rows($result) / $bantu); if(!isset($halaman)) { $halaman = 0; }
105
$bantu2 = $halaman * $bantu; $queryb = "SELECT * FROM SIMPANG LIMIT $bantu2, $bantu"; $result = mysql_query($queryb); while($data = mysql_fetch_array($result)) { $totalArus = $data['arus_masuk_pendekat_mayor1'] + $data['arus_masuk_pendekat_mayor2'] + $data['arus_masuk_pendekat_minor1'] + $data['arus_masuk_pendekat_minor2']; $ds = $totalArus / $data['kapasitas']; echo "<tr>"; echo "<td><span class=style15>$counter</span></td>"; echo "<td><span class=style15>$data[nama_simpang]</span></td>"; echo "<td><span class=style15>$data[wilayah_administrasi]</span></td>"; echo "<td><span class=style15>$data[apill]</td></span>"; echo "<td><span class=style15>$ds</td></span>"; echo "<td><span class=style15><a href=konfSimpang.php?proses=lihat&id=$data[no_simpang]>detail</a></td></span>"; echo "</tr>"; $counter = $counter + 1; } for($i=0;$i<$jmlhalaman;$i++) { $x = $i+1; $linkHalaman = "[<a class='linktext' href='simpang.php?halaman=$i'>$x</a>]"; } }
Potongan program cari Kinerja Simpang
$counter = 1; $query = "SELECT * FROM simpang WHERE nama_simpang like '%$_REQUEST[cari_nama]%' AND wilayah_administrasi LIKE '%$_REQUEST[cari_wilayah]%' AND apill LIKE '%$_REQUEST[cari_apill]%'"; $result = mysql_query($query); $bantu = 10; $jmlhalaman = ceil(mysql_num_rows($result) / $bantu); if(!isset($halaman)) { $halaman = 0; } $bantu2 = $halaman * $bantu; $queryb = "SELECT * FROM simpang WHERE nama_simpang like '%$_REQUEST[cari_nama]%' AND wilayah_administrasi LIKE '%$_REQUEST[cari_wilayah]%' AND apill LIKE '%$_REQUEST[cari_apill]%' LIMIT $bantu2, $bantu"; $result = mysql_query($queryb); while($data = mysql_fetch_array($result)) { $totalArus = $data['arus_masuk_pendekat_mayor1'] + $data['arus_masuk_pendekat_mayor2'] + $data['arus_masuk_pendekat_minor1'] + $data['arus_masuk_pendekat_minor2']; $ds = $totalArus / $data['kapasitas']; echo "<tr>"; echo "<td><span class=style15>$counter</span></td>"; echo "<td><span class=style15>$data[nama_simpang]</span></td>"; echo "<td><span class=style15>$data[wilayah_administrasi]</span></td>"; echo "<td><span class=style15>$data[apill]</td></span>"; echo "<td><span class=style15>$ds</td></span>"; echo "<td><span class=style15><a href=konfSimpang.php?proses=lihat&id=$data[no_simpang]>detail</a></td></span>"; echo "</tr>"; $counter = $counter + 1;
106
} for($i=0;$i<$jmlhalaman;$i++) { $x = $i+1; $linkHalaman = "[<a class='linktext' href='simpang.php?cari_nama=$_REQUEST[cari_nama]&cari_wilayah=$_REQUEST[cari_wilayah]&cari_apill=$_REQUEST[cari_apill]&halaman=$i'>$x</a>]"; } }
4.3.15 Halaman Tambah Kinerja Simpang
Halaman ini digunakan oleh admin untuk menambah data Kinerja
Simpang. Halaman ini akan tampil saat admin menekan tombol tambah
yang terlihat pada halaman Cari dan Lihat Kinerja Simpang pada gambar
4.19. Tombol simpan digunakan untuk menyimpan data yang akan
ditambahkan.
Gambar 4.20 Tambah Kinerja Simpang
Potongan program tambah Kinerja Simpang
$queryTambah = "INSERT INTO simpang VALUES( $no_simpang, '$nama_simpang', '$tipe', '$tundaan','$apill', '$kapasitas', '$wilayah_administrasi', '$pendekat_mayor1', '$pendekat_mayor2', '$pendekat_minor1', '$pendekat_minor2', '$jlMayor1', '$jlMayor2', '$jlMinor1', '$jlMinor2', '$ampMayor1', '$ampMayor2',
107
'$ampMinor1', '$ampMinor2')"; $result = mysql_query($queryTambah);
4.3.16 Halaman Detail Kinerja Simpang
Halaman ini akan tampil saat tombol detail pada halaman Kinerja Simpang
seperti pada gambar 4.19 ditekan. Halaman ini akan menampilkan data Kinerja
Simpang yang dipilih secara lengkap. Pada halaman ini terdapat tombol edit yang
jika ditekan maka akan menampilkan halaman untuk mengubah data Kinerja
Simpang yang dipilih tadi, tombol hapus digunakan untuk menghapus data Kinerja
Simpang yang dipilih.Tombol Tambah Prasarana Simpang digunakan untuk
menambah data prasarana simpang.tombol Ok digunakan untuk kembali ke halaman
Cari dan Lihat Kinerja Simpang.
Gambar 4.21 Detail Kinerja Simpang
Potongan program detail Kinerja Simpang
108
$query = "SELECT * FROM simpang WHERE no_simpang='$_REQUEST[id]'"; $result = mysql_query($query); while ($data = mysql_fetch_array($result)) { $no_simpang = $data['no_simpang']; $nama_simpang = $data['nama_simpang']; $tipe = $data['tipe_simpang']; $tundaan = $data['tundaan_rata2']; $apill = $data['apill']; $kapasitas = $data['kapasitas']; $wilayah_administrasi = $data['wilayah_administrasi']; $pendekat_mayor1 = $data['pendekat_mayor1']; $pendekat_mayor2 = $data['pendekat_mayor2']; $pendekat_minor1 = $data['pendekat_minor1']; $pendekat_minor2 = $data['pendekat_minor2']; $jlMayor1 = $data['jml_ljr_lengan_mayor1']; $jlMayor2 = $data['jml_ljr_lengan_mayor2']; $jlMinor1 = $data['jml_ljr_lengan_minor1']; $jlMinor2 = $data['jml_ljr_lengan_minor2']; $ampMayor1 = $data['arus_masuk_pendekat_mayor1']; $ampMayor2 = $data['arus_masuk_pendekat_mayor2']; $ampMinor1 = $data['arus_masuk_pendekat_minor1']; $ampMinor2 = $data['arus_masuk_pendekat_minor2']; } $linkEdit = "<div align=center><a href=inputSimpang.php?proses=edit&id=$_REQUEST[id]>EDIT</a></div>"; $linkHapus = "<div align=center><a href=hapusSimpang.php?id=$_REQUEST[id]>HAPUS</a></div>"; $linkTambahPrasarana = "<div align=center><a href=inputPrasaranaSimpang.php?id=$_REQUEST[id]>TAMBAH PRASARANA SIMPANG</a>"; } $totalArus = $ampMayor1 + $ampMayor2 + $ampMinor1 + $ampMinor2; $ds = $totalArus / $kapasitas;
4.3.17 Halaman Edit Kinerja Simpang
Halaman ini akan muncul saat tombol edit pada halaman detail Kinerja
Simpang seperti yang terlihat pada gambar 4.21 ditekan. Halaman ini digunakan
untuk mengubah data Kinerja Simpang. Tombol simpan digunakan untuk
menyimpan data Kinerja Simpang yang telah diubah.
109
Gambar 4.22 Edit Kinerja Simpang
Potongan program edit Kinerja Simpang
$query = "UPDATE simpang SET nama_simpang = '$nama_simpang',tipe_simpang = '$tipe',tundaan_rata2 = '$tundaan', apill = '$apill',kapasitas = '$kapasitas',wilayah_administrasi = '$wilayah_administrasi',pendekat_mayor1 = '$pendekat_mayor1', pendekat_mayor2 = '$pendekat_mayor2',pendekat_minor1 = '$pendekat_minor1',pendekat_minor2 = '$pendekat_minor2',jml_ljr_lengan_mayor1 = '$jlMayor1',jml_ljr_lengan_mayor2 = '$jlMayor2',jml_ljr_lengan_minor1 = '$jlMinor1', jml_ljr_lengan_minor2 = '$jlMinor2',arus_masuk_pendekat_mayor1 = '$ampMayor1',arus_masuk_pendekat_mayor2 = '$ampMayor2', arus_masuk_pendekat_minor1 = '$ampMinor1',arus_masuk_pendekat_minor2 = '$ampMinor2' WHERE no_simpang =$_REQUEST[id]"; $result = mysql_query($query);
4.3.18 Halaman Hapus Kinerja Simpang
Halaman ini akan muncul saat tombol hapus pada halaman detail Kinerja
Simpang seperti yang terlihat pada gambar 4.21 ditekan. Halaman ini merupakan
konfirmasi untuk menghapus data. Jika data benar-benar akan dihapus maka admin
dapat menekan tombol Ya, tetapi jika admin batal menghapus data maka admin
dapat menekan tombol Tidak.
110
Gambar 4.23 Hapus data Kinerja Simpang
Potongan program Hapus Kinerja Simpang
$query = "DELETE FROM simpang WHERE no_simpang = '$_REQUEST[id]'"; mysql_query($query);
4.3.19 Halaman Prasarana Simpang
Halaman ini digunakan oleh admin untuk melihat data Prasarana Simpang.
Admin juga dapat melakukan pencarian data Prasarana Simpang dengan
memasukkan jenis pencarian yang akan dilakukan dan kata kunci sesuai dengan jenis
pencarian yang dilakukan dan kemudian menekan tombol cari. Untuk melihat
laporan Prasarana Simpang admin dapat menekan tombol Lihat Laporan. Tombol
detail digunakan untuk melihat secara lengkap data Prasarana Simpang.
111
gambar 4.24 Halaman Cari dan Lihat Prasarana Simpang
Potongan Program Lihat Prasarana Simpang: $query = "SELECT * FROM prasarana_simpang ORDER BY no_simpang"; $counter = 1; $result = mysql_query($query); $bantu = 10; $jmlhalaman = ceil(mysql_num_rows($result) / $bantu); if(!isset($halaman)) { $halaman = 0; } $bantu2 = $halaman * $bantu; $queryb = "SELECT * FROM prasarana_simpang ORDER BY no_simpang LIMIT $bantu2, $bantu"; $result = mysql_query($queryb); while ($data = mysql_fetch_array($result)) { $strSql = "SELECT * FROM simpang WHERE no_simpang = '$data[no_simpang]'"; $result2 = mysql_query($strSql); while ($data2 = mysql_fetch_array($result2)) { $wilayah_administrasi = $data2[wilayah_administrasi]; $nama_simpang = $data2[nama_simpang]; if($data[pendekat] == "mayor1") { $nama_pendekat = $data2[7]; } else if($data[pendekat] == "mayor2") { $nama_pendekat = $data2[8]; } else if($data[pendekat] == "minor1")
112
{ $nama_pendekat = $data2[9]; } else if($data[pendekat] == "minor1") { $nama_pendekat = $data2[10]; } } $strSql = "SELECT * FROM jenis_prasarana WHERE id_jenis_prasarana = $data[id_jenis_prasarana]"; $result2 = mysql_query($strSql); while ($data2 = mysql_fetch_array($result2)) { $jenis_prasarana = $data2[nama_jenis_prasarana]; } echo "<tr>"; echo "<td align=center valign=middle><span class=style15>$counter</span></td>"; echo "<td><span class=style15>$nama_simpang</span></td>"; echo "<td><span class=style15>$nama_pendekat</span></td>"; echo "<td align=center valign=middle><span class=style15>$wilayah_administrasi</span></td>"; echo "<td align=center valign=middle><span class=style15>$jenis_prasarana</td></span>"; echo "<td align=center valign=middle><span class=style15>$data[kondisi]</td></span>"; echo "<td align=center valign=middle><span class=style15>$data[usulan_penanganan]</td></span>"; echo "<td align=center valign=middle><span class=style15><a href=konfPrasaranaSimpang.php?proses=lihat&id=$data[no_prasarana_simpang]>detail</a></td></span>"; echo "</tr>"; $counter = $counter + 1; } for($i=0;$i<$jmlhalaman;$i++) { $x = $i+1; $linkHalaman = "[<a class='linktext' href='prasaranaSimpang.php?halaman=$i'>$x</a>]"; } }
Potongan program cari Prasarana Simpang
if ($_REQUEST[cari_nama] <> "" and $_REQUEST[cari_wilayah] <> "") { $query = "SELECT * FROM simpang WHERE nama_simpang like '%$_REQUEST[cari_nama]%' AND wilayah_administrasi = '$_REQUEST[cari_wilayah]'"; $result = mysql_query($query); while ($data = mysql_fetch_array($result)) {
113
$counter = 1; $query = "SELECT * FROM prasarana_simpang WHERE no_simpang = $data[no_simpang] AND kondisi like '%$_REQUEST[cari_kondisi]%' ORDER BY no_simpang"; $result2 = mysql_query($query); $bantu = 10; $jmlhalaman = ceil(mysql_num_rows($result2) / $bantu); if(!isset($halaman)) { $halaman = 0; } $bantu2 = $halaman * $bantu; $queryb = "SELECT * FROM prasarana_simpang WHERE no_simpang = $data[no_simpang] AND kondisi like '%$_REQUEST[cari_kondisi]%' ORDER BY no_simpang LIMIT $bantu2, $bantu"; $result2 = mysql_query($queryb); while ($data2 = mysql_fetch_array($result2)) { $strSql = "SELECT * FROM simpang WHERE no_simpang = '$data2[no_simpang]'"; $result3 = mysql_query($strSql); while ($data3 = mysql_fetch_array($result3)) { $wilayah_administrasi = $data3[wilayah_administrasi]; $nama_simpang = $data3[nama_simpang]; if($data2[pendekat] == "mayor1") { $nama_pendekat = $data[7]; } else if($data2[pendekat] == "mayor2") { $nama_pendekat = $data[8]; } else if($data2[pendekat] == "minor1") { $nama_pendekat = $data[9]; } else if($data2[pendekat] == "minor1") { $nama_pendekat = $data[10]; } } for($i=0;$i<$jmlhalaman;$i++) { $x = $i+1; $linkHalaman = "[<a class='linktext' href='prasaranaSimpang.php?cari_nama=$_REQUEST[cari_nama]&cari_wilayah=$_REQUEST[cari_wilayah]&cari_kondisi=$_REQUEST[cari_kondisi]&halaman=$i'>$x</a>]"; } $strSql = "SELECT * FROM jenis_prasarana WHERE id_jenis_prasarana = $data2[id_jenis_prasarana]"; $result3 = mysql_query($strSql); while ($data3 = mysql_fetch_array($result3)) { $jenis_prasarana = $data3[nama_jenis_prasarana]; } echo "<tr>"; echo "<td align=center valign=middle><span class=style15>$counter</span></td>";
114
echo "<td><span class=style15>$nama_simpang</span></td>"; echo "<td><span class=style15>$nama_pendekat</span></td>"; echo "<td align=center valign=middle><span class=style15>$wilayah_administrasi</span></td>"; echo "<td align=center valign=middle><span class=style15>$jenis_prasarana</td></span>"; echo "<td align=center valign=middle><span class=style15>$data2[kondisi]</td></span>"; echo "<td align=center valign=middle><span class=style15>$data2[usulan_penanganan]</td></span>"; echo "<td><span class=style15><a href=konfPrasaranaSimpang.php?proses=lihat&id=$data2[no_prasarana_simpang]>detail</a></td></span>"; echo "</tr>"; $counter = $counter + 1; } } } else if ($_REQUEST[cari_nama] <> "" and $_REQUEST[cari_wilayah] == "") { $query = "SELECT * FROM simpang WHERE nama_simpang like '%$_REQUEST[cari_nama]%'"; $result = mysql_query($query); while ($data = mysql_fetch_array($result)) { $counter = 1; $query = "SELECT * FROM prasarana_simpang WHERE no_simpang = $data[no_simpang] AND kondisi like '%$_REQUEST[cari_kondisi]%' ORDER BY no_simpang"; $result2 = mysql_query($query); $bantu = 10; $jmlhalaman = ceil(mysql_num_rows($result2) / $bantu); if(!isset($halaman)) { $halaman = 0; } $bantu2 = $halaman * $bantu; $queryb = "SELECT * FROM prasarana_simpang WHERE no_simpang = $data[no_simpang] AND kondisi like '%$_REQUEST[cari_kondisi]%' ORDER BY no_simpang LIMIT $bantu2, $bantu"; $result2 = mysql_query($queryb); while ($data2 = mysql_fetch_array($result2)) { $strSql = "SELECT * FROM simpang WHERE no_simpang = '$data2[no_simpang]'"; $result3 = mysql_query($strSql); while ($data3 = mysql_fetch_array($result3)) { $wilayah_administrasi = $data3[wilayah_administrasi]; $nama_simpang = $data3[nama_simpang]; if($data2[pendekat] == "mayor1") { $nama_pendekat = $data[7]; } else if($data2[pendekat] == "mayor2") { $nama_pendekat = $data[8]; } else if($data2[pendekat] == "minor1")
115
{ $nama_pendekat = $data[9]; } else if($data2[pendekat] == "minor1") { $nama_pendekat = $data[10]; } } for($i=0;$i<$jmlhalaman;$i++) { $x = $i+1; $linkHalaman = "[<a class='linktext' href='prasaranaSimpang.php?cari_nama=$_REQUEST[cari_nama]&cari_wilayah=$_REQUEST[cari_wilayah]&cari_kondisi=$_REQUEST[cari_kondisi]&halaman=$i'>$x</a>]"; } $strSql = "SELECT * FROM jenis_prasarana WHERE id_jenis_prasarana = $data2[id_jenis_prasarana]"; $result3 = mysql_query($strSql); while ($data3 = mysql_fetch_array($result3)) { $jenis_prasarana = $data3[nama_jenis_prasarana]; } echo "<tr>"; echo "<td align=center valign=middle><span class=style15>$counter</span></td>"; echo "<td><span class=style15>$nama_simpang</span></td>"; echo "<td><span class=style15>$nama_pendekat</span></td>"; echo "<td align=center valign=middle><span class=style15>$wilayah_administrasi</span></td>"; echo "<td align=center valign=middle><span class=style15>$jenis_prasarana</td></span>"; echo "<td align=center valign=middle><span class=style15>$data2[kondisi]</td></span>"; echo "<td align=center valign=middle><span class=style15>$data2[usulan_penanganan]</td></span>"; echo "<td><span class=style15><a href=konfPrasaranaSimpang.php?proses=lihat&id=$data2[no_prasarana_simpang]>detail</a></td></span>"; echo "</tr>"; $counter = $counter + 1; } } } else if ($_REQUEST[cari_nama] == "" and $_REQUEST[cari_wilayah] <> "") { $query = "SELECT * FROM simpang WHERE wilayah_administrasi = '$_REQUEST[cari_wilayah]'"; $result = mysql_query($query); while ($data = mysql_fetch_array($result)) { $counter = 1; $query = "SELECT * FROM prasarana_simpang WHERE no_simpang = $data[no_simpang] AND kondisi like '%$_REQUEST[cari_kondisi]%' ORDER BY no_simpang"; $result2 = mysql_query($query); $bantu = 10; $jmlhalaman = ceil(mysql_num_rows($result2) / $bantu); if(!isset($halaman)) {
116
$halaman = 0; } $bantu2 = $halaman * $bantu; $queryb = "SELECT * FROM prasarana_simpang WHERE no_simpang = $data[no_simpang] AND kondisi like '%$_REQUEST[cari_kondisi]%' ORDER BY no_simpang LIMIT $bantu2, $bantu"; $result2 = mysql_query($queryb); while ($data2 = mysql_fetch_array($result2)) { $strSql = "SELECT * FROM simpang WHERE no_simpang = '$data2[no_simpang]'"; $result3 = mysql_query($strSql); while ($data3 = mysql_fetch_array($result3)) { $wilayah_administrasi = $data3[wilayah_administrasi]; $nama_simpang = $data3[nama_simpang]; if($data2[pendekat] == "mayor1") { $nama_pendekat = $data[7]; } else if($data2[pendekat] == "mayor2") { $nama_pendekat = $data[8]; } else if($data2[pendekat] == "minor1") { $nama_pendekat = $data[9]; } else if($data2[pendekat] == "minor1") { $nama_pendekat = $data[10]; } } for($i=0;$i<$jmlhalaman;$i++) { $x = $i+1; $linkHalaman = "[<a class='linktext' href='prasaranaSimpang.php?cari_nama=$_REQUEST[cari_nama]&cari_wilayah=$_REQUEST[cari_wilayah]&cari_kondisi=$_REQUEST[cari_kondisi]&halaman=$i'>$x</a>]"; } $strSql = "SELECT * FROM jenis_prasarana WHERE id_jenis_prasarana = $data2[id_jenis_prasarana]"; $result3 = mysql_query($strSql); while ($data3 = mysql_fetch_array($result3)) { $jenis_prasarana = $data3[nama_jenis_prasarana]; } echo "<tr>"; echo "<td align=center valign=middle><span class=style15>$counter</span></td>"; echo "<td><span class=style15>$nama_simpang</span></td>"; echo "<td><span class=style15>$nama_pendekat</span></td>"; echo "<td align=center valign=middle><span class=style15>$wilayah_administrasi</span></td>"; echo "<td align=center valign=middle><span class=style15>$jenis_prasarana</td></span>"; echo "<td align=center valign=middle><span class=style15>$data2[kondisi]</td></span>"; echo "<td align=center valign=middle><span
117
class=style15>$data2[usulan_penanganan]</td></span>"; echo "<td><span class=style15><a href=konfPrasaranaSimpang.php?proses=lihat&id=$data2[no_prasarana_simpang]>detail</a></td></span>"; echo "</tr>"; $counter = $counter + 1; } } } else { $query = "SELECT * FROM prasarana_simpang WHERE kondisi LIKE '%$_REQUEST[cari_kondisi]%' ORDER BY no_simpang"; $counter = 1; $result = mysql_query($query); $bantu = 10; $jmlhalaman = ceil(mysql_num_rows($result) / $bantu); if(!isset($halaman)) { $halaman = 0; } $bantu2 = $halaman * $bantu; $queryb = "SELECT * FROM prasarana_simpang WHERE kondisi LIKE '%$_REQUEST[cari_kondisi]%' ORDER BY no_simpang LIMIT $bantu2, $bantu"; $result = mysql_query($queryb); while ($data = mysql_fetch_array($result)) { $strSql = "SELECT * FROM simpang WHERE no_simpang = '$data[no_simpang]'"; $result2 = mysql_query($strSql); while ($data2 = mysql_fetch_array($result2)) { $wilayah_administrasi = $data2[wilayah_administrasi]; $nama_simpang = $data2[nama_simpang]; if($data2[pendekat] == "mayor1") { $nama_pendekat = $data2[7]; } else if($data2[pendekat] == "mayor2") { $nama_pendekat = $data2[8]; } else if($data2[pendekat] == "minor1") { $nama_pendekat = $data2[9]; } else if($data2[pendekat] == "minor1") { $nama_pendekat = $data2[10]; } } $strSql = "SELECT * FROM jenis_prasarana WHERE id_jenis_prasarana = $data[id_jenis_prasarana]"; $result2 = mysql_query($strSql); while ($data2 = mysql_fetch_array($result2)) { $jenis_prasarana = $data2[nama_jenis_prasarana]; }
118
echo "<tr>"; echo "<td align=center valign=middle><span class=style15>$counter</span></td>"; echo "<td><span class=style15>$nama_simpang</span></td>"; echo "<td><span class=style15>$nama_pendekat</span></td>"; echo "<td align=center valign=middle><span class=style15>$wilayah_administrasi</span></td>"; echo "<td align=center valign=middle><span class=style15>$jenis_prasarana</td></span>"; echo "<td align=center valign=middle><span class=style15>$data[kondisi]</td></span>"; echo "<td align=center valign=middle><span class=style15>$data[usulan_penanganan]</td></span>"; echo "<td align=center valign=middle><span class=style15><a href=konfPrasaranaSimpang.php?proses=lihat&id=$data[no_prasarana_simpang]>detail</a></td></span>"; echo "</tr>"; $counter = $counter + 1; } for($i=0;$i<$jmlhalaman;$i++) { $x = $i+1; $linkHalaman = "[<a class='linktext' href='prasaranaSimpang.php?cari_nama=$_REQUEST[cari_nama]&cari_wilayah=$_REQUEST[cari_wilayah]&cari_kondisi=$_REQUEST[cari_kondisi]&halaman=$i'>$x</a>]"; } } }
4.3.20 Halaman Tambah Prasarana Simpang
Halaman ini digunakan oleh admin untuk menambah data Prasarana
Simpang. Halaman ini akan tampil saat admin menekan tombol tambah yang terlihat
pada halaman Detail Kinerja Simpang pada gambar 4.21. Tombol simpan digunakan
untuk menyimpan data yang akan ditambahkan, tombol reset digunakan untuk
mengosongkan kembali field.
119
Gambar 4.25 tambah Prasarana Simpang
Potongan program tambah Prasarana Simpang
queryTambah = "INSERT INTO simpang VALUES( $no_simpang, '$nama_simpang', '$tipe', '$tundaan','$apill', '$kapasitas', '$wilayah_administrasi', '$pendekat_mayor1', '$pendekat_mayor2', '$pendekat_minor1', '$pendekat_minor2', '$jlMayor1', '$jlMayor2', '$jlMinor1', '$jlMinor2','$ampMayor1', '$ampMayor2', '$ampMinor1', '$ampMinor2')"; $result = mysql_query($queryTambah);
4.3.21 Halaman Detail Prasarana Simpang
Halaman ini akan tampil saat tombol detail pada halaman Prasarana Simpang
seperti pada gambar 4.24 ditekan. Halaman ini akan menampilkan data Prasarana
Simpang yang dipilih secara lengkap. Pada halaman ini terdapat tombol edit yang
jika ditekan maka akan menampilkan halaman untuk mengubah data Prasarana
Simpang yang dipilih tadi, tombol hapus digunakan untuk menghapus data Prasarana
Simpang yang dipilih. Tombol Ok digunakan untuk kembali kehalaman Cari dan
Lihat Prasarana Simpang.
120
Gambar 4.26 Detail Prasarana Simpang
Potongan program detail Prasarana Simpang
$query = "SELECT * FROM simpang WHERE no_simpang='$_REQUEST[id]'"; $result = mysql_query($query); while ($data = mysql_fetch_array($result)) { $no_simpang = $data['no_simpang']; $nama_simpang = $data['nama_simpang']; $tipe = $data['tipe_simpang']; $tundaan = $data['tundaan_rata2']; $apill = $data['apill']; $kapasitas = $data['kapasitas']; $wilayah_administrasi = $data['wilayah_administrasi']; $pendekat_mayor1 = $data['pendekat_mayor1']; $pendekat_mayor2 = $data['pendekat_mayor2']; $pendekat_minor1 = $data['pendekat_minor1']; $pendekat_minor2 = $data['pendekat_minor2']; $jlMayor1 = $data['jml_ljr_lengan_mayor1']; $jlMayor2 = $data['jml_ljr_lengan_mayor2']; $jlMinor1 = $data['jml_ljr_lengan_minor1']; $jlMinor2 = $data['jml_ljr_lengan_minor2']; $ampMayor1 = $data['arus_masuk_pendekat_mayor1']; $ampMayor2 = $data['arus_masuk_pendekat_mayor2']; $ampMinor1 = $data['arus_masuk_pendekat_minor1']; $ampMinor2 = $data['arus_masuk_pendekat_minor2']; } $linkEdit = "<div align=center><a href=inputSimpang.php?proses=edit&id=$_REQUEST[id]>EDIT</a></div>"; $linkHapus = "<div align=center><a
121
href=hapusSimpang.php?id=$_REQUEST[id]>HAPUS</a></div>"; $linkTambahPrasarana = "<div align=center><a href=inputPrasaranaSimpang.php?id=$_REQUEST[id]>TAMBAH PRASARANA SIMPANG</a>"; } $totalArus = $ampMayor1 + $ampMayor2 + $ampMinor1 + $ampMinor2; $ds = $totalArus / $kapasitas;
4.3.22 Halaman Edit Prasarana Simpang
Halaman ini akan muncul saat tombol edit pada halaman detail Prasarana
Simpang seperti yang terlihat pada gambar 4.26 ditekan. Halaman ini digunakan
untuk mengubah data Prasarana Simpang. Tombol simpan digunakan untuk
menyimpan data Prasarana Simpang yang telah diubah.
Gambar 4.27 Edit Prasarana Simpang
Potongan program edit Prasarana Simpang
$query = "UPDATE prasarana_simpang SET no_simpang = '$no_simpang',pendekat = '$pendekat', id_jenis_prasarana = $id_jenis_prasarana,sta_lokasi = '$sta_lokasi',panjang = '$panjang',jumlah = '$jumlah',tahun = '$tahun', kondisi = '$kondisi',usulan_penanganan = '$usulan_penanganan',keterangan = '$keterangan' WHERE no_prasarana_simpang = $_REQUEST[id]"; $result = mysql_query($query);
122
4.3.23 Halaman Hapus Prasarana Simpang
Halaman ini akan muncul saat tombol hapus pada halaman detail Prasarana
Simpang seperti yang terlihat pada gambar 4.26 ditekan. Halaman ini merupakan
konfirmasi untuk menghapus data. Jika data benar-benar akan dihapus maka admin
dapat menekan tombol Ya, tetapi jika admin batal menghapus data maka admin
dapat menekan tombol Tidak.
Gambar 4.28 Hapus data Prasarana Simpang
Potongan program Hapus Prasarana Simpang
$query = "DELETE FROM prasarana_simpang WHERE no_prasarana_simpang = '$_REQUEST[id]'"; mysql_query($query);
4.3.24 Halaman Filter Keluhan
123
Halaman ini merupakan halaman bagi admin untuk menyaring keluhan yang
akan ditampilkan atau tidak ditampilkan ke halaman keluhan seperti pada gambar
4.24. Tombol ditampilkan digunakan untuk menampilkan data keluhan yang dipilih,
tombol tidak ditampilkan digunakan untuk tidak menampilkan data keluhan yang
dipilih dan tombol hapus digunakan untuk menghapus data keluhan.Disini admin
juga dapat melakukan pencarian data keluhan dengan kata kunci isi keluhan atau
status keluhan.
Gambar 4.29 Filter / Saring Keluhan
Potongan program Filter Keluhan
if ($_REQUEST['edit'] == 0) {
$query = "UPDATE keluhan SET status = 0 WHERE id_keluhan = $_REQUEST[id]"; mysql_query($query);
} else if ($_REQUEST['edit'] == 1) {
$query = "UPDATE keluhan SET status = 1 WHERE id_keluhan = $_REQUEST[id]"; mysql_query($query);
124
}
Potongan program Cari Keluhan
if ($_REQUEST['cari_status'] <> "") {
$counter = 1; $query = "SELECT * FROM keluhan WHERE isi LIKE '%$_REQUEST[isi]%' AND status = $_REQUEST[cari_status] ORDER BY id_keluhan"; $bantu = 10; $result = mysql_query($query); $jmlhalaman = ceil(mysql_num_rows($result) / $bantu); if(!isset($_REQUEST['halaman'])) { $halaman = 0; } $bantu2 = $halaman * $bantu; $queryb = "SELECT * FROM keluhan WHERE isi LIKE '%$_REQUEST[isi]%' AND status = $_REQUEST[cari_status] ORDER BY id_keluhan LIMIT $bantu2, $bantu"; $result = mysql_query($queryb); while($data = mysql_fetch_array($result)) { echo "<tr>"; echo "<td><div align=center><span class=style15>$counter</span></div></td>"; echo "<td><span class=style15>$data[pengirim]</span></td>"; echo "<td><span class=style15>$data[isi]</span></td>"; echo "<td><span class=style15><a href=keluhan.php?id=$data[id_keluhan]&edit=1>tampilkan</a> / <a href=keluhan.php?id=$data[id_keluhan]&edit=0>tidak ditampilkan</a> / <a href=keluhan.php?id=$data[id_keluhan]&proses=hapus>hapus</a></td></span>"; echo "</tr>"; $counter = $counter + 1; } for($i=0;$i<$jmlhalaman;$i++) { $x = $i+1; echo "<font size=-1>[<a class='linktext' href='keluhan.php?halaman=$i'>$x</a>]</font>"; }
}
4.3.25 Halaman Ubah Profil
Halaman Ubah Profil digunakan oleh admin dan user (bagian lalu lintas)
yang sudah terdaftar untuk mengubah password-nya. Admin dan User harus
memasukkan password lama, password baru,dan konfirmasi password baru pada
125
field yang tersedia. Tombol simpan digunakan untuk menyimpan data admin atau
user yang diubah. Tombol reset digunakan untuk mengosongkan kembali field.
Gambar 4.30 Ubah Profil
Potongan program Ubah Profil
if ($pswd_lama == $pswd_asli) {
if ($pswd_baru == $konf_pswd) { $query = "UPDATE admin SET password = '$pswd_baru' WHERE id_admin = $id_admin"; mysql_query($query); $teks = "Password berhasil diubah"; $link = "<a href=index.php>KEMBALI</a>"; }
else {
$teks = "Password konfirmasi tidak sesuai dengan password baru"; $link = "<a href=ubahProfil.php>KEMBALI</;a>";
} } else {
$teks = "Password salah"; $link = "<a href=ubahProfil.php>KEMBALI</a>";
}
126
4.3.26 Halaman Cari dan Lihat User
Halaman ini digunakan bagi admin untuk melakukan pencarian data
user.Pencarian dapat dilakukan dengan memasukkan username dari user yang akan
dicari kemudian setelah memasukkan kata kunci admin dapat menekan tombol cari.
Tombol hapus digunakan untuk menghapus data user yang dipilih. Tombol tambah
digunakan untuk menambah data user.
Gambar 4.31 Halaman Cari dan Lihat User
Potongan program Lihat User
$query = "SELECT * FROM admin WHERE status = 'user' ORDER BY username";
Potongan program Cari User
$query = "SELECT * FROM admin WHERE username LIKE '%$_REQUEST[cari_nama]%' AND status = 'user' ORDER BY username";
127
4.3.27 Halaman Tambah User
Halaman ini digunakan oleh admin untuk menambah user baru. Halaman ini
akan tampil saat admin menekan tombol tambah pada halaman cari user seperti yang
terlihat pada gambar 4.31. Tombol Simpan digunakan untuk menyimpan data user
baru yang ditambahkan. Tombol reset digunakan untuk mengosongkan kembali
field.
Gambar 4.32 Tambah User
Potongan program Tambah User
$query = "INSERT INTO admin VALUES($id, '$username', '$username', 'user')"; mysql_query($query);
128
4.3.28 Halaman Hapus User
Halaman ini akan muncul saat tombol hapus pada halaman cari user seperti
yang terlihat pada gambar 4.31 ditekan. Halaman ini merupakan konfirmasi untuk
menghapus data. Jika data benar-benar akan dihapus maka admin dapat menekan
tombol Ya, tetapi jika admin batal menghapus data maka admin dapat menekan
tombol Tidak.
Gambar 4.33 Hapus User
Potongan program Hapus User
$query = "DELETE FROM admin WHERE id_admin = '$_REQUEST[id]'"; mysql_query($query);
129
4.3.29 Halaman Cari dan lihat berita
Halaman ini digunakan oleh admin untuk melihat data berita yang sudah ada.
Admin juga dapat melakukan pencarian data berita dengan memasukkan jenis
pencarian yang akan dilakukan dan kata kunci sesuai dengan jenis pencarian yang
dilakukan dan kemudian menekan tombol cari. Untuk menambah data berita admin
dapat menekan tombol tambah. Tombol edit digunakan untuk mengubah isi berita
sesuai dengan judul yang dipilih. Tombol hapus untuk menghapus berita yang
dipilih.
Gambar 4.34 Halaman Cari dan Lihat Berita
Potongan program Lihat Berita
$counter = 1; $query = "SELECT * FROM berita ORDER by id_berita DESC"; $bantu = 10; $result = mysql_query($query); $jmlhalaman = ceil(mysql_num_rows($result) / $bantu); if(!isset($_REQUEST['halaman'])) {
$halaman = 0; }
130
$bantu2 = $halaman * $bantu; $queryb = "SELECT * FROM berita ORDER by id_berita DESC LIMIT $bantu2, $bantu"; $result = mysql_query($queryb); while($data = mysql_fetch_array($result)) { echo "<tr>"; echo "<td><div align=center><span class=style15>$counter</span></div></td>"; echo "<td><span class=style15>$data[judul]</span></td>"; echo "<td><span class=style15><a href=inputBerita.php?proses=lihat&id=$data[id_berita]>detail</a></td></span>"; echo "</tr>"; $counter = $counter + 1; } for($i=0;$i<$jmlhalaman;$i++) {
$x = $i+1; echo "<font size=-1>[<a class='linktext' href='berita.php?halaman=$i'>$x</a>]</font>";
} }
4.3.30 Halaman Tambah Berita
Halaman ini digunakan oleh admin untuk menambahkan berita baru yang
akan ditampilkan di halaman lihat berita seperti pada gambar 4.34. Halaman ini akan
keluar saat tombol tambah pada halaman cari dan lihat berita seperti pada gambar
4.32 ditekan. Field judul digunakan untuk judul berita dan field isi digunakan untuk
memasukkan isi berita. Tombol simpan digunakan untuk menyimpan data berita
yang ditambahkan.
131
Gambar 4.35 Tambah Berita
Potongan program Tambah Berita
$query = "INSERT INTO berita VALUES($id,'$judul','$isi')"; mysql_query($query);
4.3.31 Halaman Edit Berita
Halaman ini digunakan oleh admin untuk mengubah data berita yang sudah
ada.Halaman ini akan keluar saat tombol edit pada halaman Cari dan Lihat Berita
seperti pada gambar 4.34 ditekan. Tombol simpan digunakan untuk menyimpan data
berita yang sudah diubah.
132
Gambar 4.36 Edit Berita
Potongan program Edit Berita
$query = "UPDATE berita SET judul = '$judul',isi_berita = '$isi' WHERE id_berita = $_REQUEST[id]"; mysql_query($query);
4.3.32 Halaman Hapus Berita
Halaman ini akan muncul saat tombol hapus pada halaman cari dan lihat
berita seperti yang terlihat pada gambar 4.34 ditekan.
133
Gambar 4.37 Hapus Berita
Potongan program Hapus Berita
$query = "DELETE FROM berita WHERE id_berita = '$_REQUEST[id]'"; mysql_query($query);
4.4 Antar muka User (Masyarakat Umum)
4.4.1 Halaman Keluhan / Pengaduan
Halaman Keluhan ini digunakan untuk melihat data-data pengaduan/keluhan
dalam hal transportasi dan fasilitas jalan yang sudah dimasukkan oleh user yang
pada umumnya adalah masyarakat umum. Untuk memasukkan keluhan maka user
dapat menekan tombol masukkan keluhan.
134
Gambar 4.38 Halaman Keluhan / Pengaduan
Potongan program Keluhan
$bantu = 3; $query = "SELECT * FROM keluhan WHERE status = 1 ORDER by id_keluhan desc"; $result = mysql_query($query);
$jmlhalaman = ceil(mysql_num_rows($result)/$bantu); if (!isset($_REQUEST['halaman'])) {
$halaman = 0; } $bantu2 = $_REQUEST['halaman'] * $bantu; $queryb = "SELECT * FROM keluhan WHERE status = 1 ORDER BY id_keluhan desc LIMIT $bantu2, $bantu"; $result = mysql_query($queryb);
while ($data = mysql_fetch_array($result)) { echo "<table width=398 border=0 cellspacing=3>"; echo "<tr>"; echo "<td width=83><font size=-1>Nama</font></td>"; echo "<td width=281><font size=-1>: $data[pengirim]</font></td>"; echo "</tr>"; echo "<tr>"; echo "<td><font size=-1>Email</font></td>"; echo "<td><font size=-1>: $data[email]</font></td>"; echo "</tr>"; echo "<tr>"; echo "<td><font size=-1>Keluhan</font></td>"; echo "<td><font size=-1>: $data[isi]</font></td>"; echo "</tr>"; echo "<tr>"; echo "</tr>"; echo "</table>"; } for($i=0;$i<$jmlhalaman;$i++) {
135
$x = $i+1; echo "<font size=-1>[<a class='linktext' href='keluhan.php?proses=lihat&halaman=$i'>$x</a>]</font>";
}
4.4.2 Halaman Isi Keluhan
Halaman ini digunakan untuk memasukkan pengaduan-pengaduan seputar
sarana transportasi dan fasilitas jalan raya. Halaman ini akan tampil pada saat user
menekan tombol masukkan keluhan yang ada pada halaman keluhan seperti pada
gambar 4.38.
Gambar 4.39 Isi Keluhan
Potongan program isi keluhan
$query = "INSERT INTO keluhan VALUES($id, '$tgl', '$pengirim', '$email', '$isi', 0)"; mysql_query($query);
136
4.5 Antar Muka User (Bagian Lalu Lintas)
4.5.1 Geometri dan Kinerja Ruas Jalan Halaman ini digunakan oleh user (bagian lalu lintas) untuk melihat data
geometri dan Kinerja Ruas Jalan. Admin juga dapat melakukan pencarian data
geometri dan Kinerja Ruas Jalan dengan memasukkan jenis pencarian yang akan
dilakukan dan kata kunci sesuai dengan jenis pencarian yang dilakukan dan
kemudian menekan tombol cari. Untuk melihat laporan Geometri dan Kinerja Ruas
jalan admin dapat menekan tombol Lihat Laporan. Tombol detail digunakan untuk
melihat secara lengkap data Geometri dan Kinerja Ruas jalan.
Gambar 4. 40 Geometri dan kinerja Ruas Jalan
4.5.2 Prasarana Ruas Jalan
Halaman ini digunakan oleh user (bagian lalu lintas) untuk melihat data
Prasarana Ruas Jalan. User (bagian lalu lintas)juga dapat melakukan pencarian data
Prasarana Ruas Jalan dengan memasukkan jenis pencarian yang akan dilakukan dan
kata kunci sesuai dengan jenis pencarian yang dilakukan dan kemudian menekan
137
tombol cari. Untuk melihat laporan Prasarana Ruas Jalan admin dapat menekan
tombol Lihat Laporan. Tombol detail digunakan untuk melihat secara lengkap data
Prasarana Ruas Jalan
Gambar 4.41. Prasarana Ruas Jalan
4.5.3 Kinerja Simpang Halaman ini digunakan oleh user (bagian lalu lintas) untuk melihat data
Kinerja Simpang. User (bagian lalu lintas)juga dapat melakukan pencarian data
Kinerja Simpang dengan memasukkan jenis pencarian yang akan dilakukan dan kata
kunci sesuai dengan jenis pencarian yang dilakukan dan kemudian menekan tombol
cari. Untuk melihat laporan Kinerja Simpang admin dapat menekan tombol Lihat
Laporan. Tombol detail digunakan untuk melihat secara lengkap data Kinerja
Simpang.
138
Gambar 4.42. Kinerja Simpang
4.5.4 Prasarana Simpang
Halaman ini digunakan oleh user (bagian lalu lintas) untuk melihat data
Prasarana Simpang. User (bagian lalu lintas) juga dapat melakukan pencarian data
Prasarana Simpang dengan memasukkan jenis pencarian yang akan dilakukan dan
kata kunci sesuai dengan jenis pencarian yang dilakukan dan kemudian menekan
tombol cari. Untuk melihat laporan Prasarana Simpang admin dapat menekan
tombol Lihat Laporan. Tombol detail digunakan untuk melihat secara lengkap data
Prasarana Simpang.
139
Gambar 4.43. Prasarana Simpang
4.6 Desain Output
4.6.1 Laporan Geometri dan Kinerja Ruas Jalan
Gambar 4.45 merupakan contoh lembar halaman laporan Geometri dan
Kinerja Ruas Jalan .Laporan data Geometri dan kinerja ruas jalan ini juga dapat
menampilkan laporan pilihan berdasarkan Nomor Ruas, Wilayah Administrasi, Nilai
bawah v/c ratio, dan Nilai atas v/c ratio.
140
Gambar 4.44. Laporan Geometri dan kinerja Ruas Jalan
Potongan Program Laporan Geometri dan Kinerja Ruas Jalan: if ($_REQUEST['cari_vc_bawah'] <> "" and $_REQUEST['cari_vc_atas'] <> "") { $query = "SELECT * FROM ruas_jalan WHERE no_ruas_jalan like '%$_REQUEST[cari_id]%' AND wilayah_administrasi like '%$_REQUEST[cari_wilayah]%' AND volume_ll / kapasitas >= $_REQUEST[cari_vc_bawah] AND volume_ll / kapasitas <= $_REQUEST[cari_vc_atas]"; } elseif ($_REQUEST['cari_vc_bawah'] <> "" and $_REQUEST['cari_vc_atas'] = "") { $query = "SELECT * FROM ruas_jalan WHERE no_ruas_jalan like '%$_REQUEST[cari_id]%' AND wilayah_administrasi like '%$_REQUEST[cari_wilayah]%' AND volume_ll / kapasitas >= $_REQUEST[cari_vc_bawah]"; } elseif ($_REQUEST['cari_vc_atas'] <> "" and $_REQUEST['cari_vc_bawah'] = "") { $query = "SELECT * FROM ruas_jalan WHERE no_ruas_jalan like '%$_REQUEST[cari_id]%' AND wilayah_administrasi like '%$_REQUEST[cari_wilayah]%' AND volume_ll / kapasitas <= $_REQUEST[cari_vc_atas]"; } else { $query = "SELECT * FROM ruas_jalan WHERE no_ruas_jalan like '%$_REQUEST[cari_id]%' AND wilayah_administrasi like '%$_REQUEST[cari_wilayah]%' ORDER by no_ruas_jalan"; } $result = mysql_query($query); $i = 0; while ($row = mysql_fetch_row($result)) { $vc_ratio = round($row[6] / $row[14],4); if (($vc_ratio > 0) and ($vc_ratio < 0.7))
141
{ $tingkat = 'Sangat Baik'; } elseif(($vc_ratio >= 0.7) and ($vc_ratio < 0.8)) { $tingkat = 'Baik'; } elseif(($vc_ratio >= 0.8) and ($vc_ratio < 1)) { $tingkat = 'Dapat diterima'; } else { $tingkat = 'Buruk'; } $cell[$i][0] = $row[0]; $cell[$i][1] = $row[1]; $cell[$i][2] = $row[2]; $cell[$i][3] = $row[3]; $cell[$i][4] = $row[4]; $cell[$i][5] = $row[5]; $cell[$i][6] = $row[6]; $cell[$i][7] = $row[7]; $cell[$i][8] = $row[8]; $cell[$i][9] = $row[9]; $cell[$i][10] = $row[10]; $cell[$i][11] = $row[11]; $cell[$i][12] = $row[12]; $cell[$i][13] = $row[13]; $cell[$i][14] = $row[14]; $cell[$i][15] = $row[15]; $cell[$i][16] = $vc_ratio; $cell[$i][17] = $tingkat; $i++; } $pdf = new FPDF('L','in','A4' ); $pdf->Open(); $pdf->AddPage(); $pdf->SetFont('Arial','BI',20); $pdf->SetTextColor(57,65,140); $pdf->Cell(0,1,'Data Geometri Dan Kinerja Ruas Jalan',0,0,'C'); $pdf->Ln(); $pdf->SetFont('Arial','',8); $pdf->SetTextColor(57,65,140); $pdf->Cell(0.45,0.21875,'No','TLR',0,'C'); $pdf->Cell(2.35,0.21875,'Nama Ruas','TLR',0,'C'); $pdf->Cell(0.55,0.21875,'Panjang','TLR',0,'C'); $pdf->Cell(0.45,0.21875,'Lebar','TLR',0,'C'); $pdf->Cell(0.65,0.21875,'Volume','TLR',0,'C'); $pdf->Cell(0.45,0.21875,'Kelas','TLR',0,'C'); $pdf->Cell(0.45,0.21875,'Tipe','TLR',0,'C'); $pdf->Cell(0.65,0.21875,'Kapasitas','TLR',0,'C'); $pdf->Cell(0.35,0.21875,'FCw','TLR',0,'C');
142
$pdf->Cell(0.55,0.21875,'FCsp','TLR',0,'C'); $pdf->Cell(0.45,0.21875,'FCsf','TLR',0,'C'); $pdf->Cell(0.65,0.21875,'Kapasitas','TLR',0,'C'); $pdf->Cell(0.55,0.21875,'V/C','TLR',0,'C'); $pdf->Cell(0.85,0.21875,'Tingkat','TLR',0,'C'); $pdf->Cell(0.75,0.21875,'Fungsi','TLR',0,'C'); $pdf->Cell(0.85,0.21875,'Wilayah','TLR',0,'C'); $pdf->Ln(); $pdf->SetFont('Arial','',8); $pdf->Cell(0.45,0.1,'Ruas','LR',0,'C'); $pdf->Cell(2.35,0.1,'','LR',0,'C'); $pdf->Cell(0.55,0.1,'(km)','LR',0,'C'); $pdf->Cell(0.45,0.1,'Total','LR',0,'C'); $pdf->Cell(0.65,0.1,'LL','LR',0,'C'); $pdf->Cell(0.45,0.1,'Jalan','LR',0,'C'); $pdf->Cell(0.45,0.1,'Jalan','LR',0,'C'); $pdf->Cell(0.65,0.1,'Dasar','LR',0,'C'); $pdf->Cell(0.35,0.1,'','LR',0,'C'); $pdf->Cell(0.55,0.1,'(50-50)','LR',0,'C'); $pdf->Cell(0.45,0.1,'','LR',0,'C'); $pdf->Cell(0.65,0.1,'(smp/jam)','LR',0,'C'); $pdf->Cell(0.55,0.1,'Ratio','LR',0,'C'); $pdf->Cell(0.85,0.1,'Pelayanan','LR',0,'C'); $pdf->Cell(0.75,0.1,'Jalan','LR',0,'C'); $pdf->Cell(0.85,0.1,'Administrasi','LR',0,'C'); $pdf->Ln(); $pdf->SetFont('Arial','',8); $pdf->Cell(0.45,0.1,'','BLR',0,'C'); $pdf->Cell(2.35,0.1,'','BLR',0,'C'); $pdf->Cell(0.55,0.1,'','BLR',0,'C'); $pdf->Cell(0.45,0.1,'(m)','BLR',0,'C'); $pdf->Cell(0.65,0.1,'(smp/jam)','BLR',0,'C'); $pdf->Cell(0.45,0.1,'','BLR',0,'C'); $pdf->Cell(0.45,0.1,'','BLR',0,'C'); $pdf->Cell(0.65,0.1,'(smp/jam)','BLR',0,'C'); $pdf->Cell(0.35,0.1,'','BLR',0,'C'); $pdf->Cell(0.55,0.1,'','BLR',0,'C'); $pdf->Cell(0.45,0.1,'','BLR',0,'C'); $pdf->Cell(0.65,0.1,'','BLR',0,'C'); $pdf->Cell(0.55,0.1,'','BLR',0,'C'); $pdf->Cell(0.85,0.1,'','BLR',0,'C'); $pdf->Cell(0.75,0.1,'','BLR',0,'C'); $pdf->Cell(0.85,0.1,'','BLR',0,'C'); $pdf->Ln(); $pdf->SetTextColor(0,0,0); for ($j=0;$j<$i;$j++) { $pdf->Cell(0.45,0.2,$cell[$j][0],'1',0,'C'); $pdf->Cell(2.35,0.2,$cell[$j][1],'1',0,'C'); $pdf->Cell(0.55,0.2,$cell[$j][8],'1',0,'C'); $pdf->Cell(0.45,0.2,$cell[$j][7],'1',0,'C'); $pdf->Cell(0.65,0.2,$cell[$j][6],'1',0,'C'); $pdf->Cell(0.45,0.2,$cell[$j][3],'1',0,'C');
143
$pdf->Cell(0.45,0.2,$cell[$j][2],'1',0,'C'); $pdf->Cell(0.65,0.2,$cell[$j][13],'1',0,'C'); $pdf->Cell(0.35,0.2,$cell[$j][10],'1',0,'C'); $pdf->Cell(0.55,0.2,$cell[$j][11],'1',0,'C'); $pdf->Cell(0.45,0.2,$cell[$j][12],'1',0,'C'); $pdf->Cell(0.65,0.2,$cell[$j][14],'1',0,'C'); $pdf->Cell(0.55,0.2,$cell[$j][16],'1',0,'C'); $pdf->Cell(0.85,0.2,$cell[$j][17],'1',0,'C'); $pdf->Cell(0.75,0.2,$cell[$j][5],'1',0,'C'); $pdf->Cell(0.85,0.2,$cell[$j][4],'1',0,'C'); $pdf->Ln(); } $pdf->Cell(19,0,'',1,0); $pdf->Ln(); $tanggal = date("d-m-y",time()); $pdf->SetFont('Arial','',10); $pdf->Cell(0,1,'per tanggal '.$tanggal.'',0,0,'R'); $pdf->Output();
4.6.2 Laporan Prasarana Ruas
Gambar 4.46 merupakan contoh lembar halaman laporan Prasarana Ruas
Jalan. Laporan Prasarana ruas jalan ini juga dapat menampilkan laporan pilihan
berdasarkan Nama Ruas, Jenis Prasarana, dan kondisi .
Gambar 4.45. Laporan Prasarana Ruas
Potongan Program Laporan Prasarana Ruas: if ($_REQUEST[cari_nama] <> "" and $_REQUEST[cari_jenis] <> "") {
144
$query = "SELECT * FROM ruas_jalan WHERE nama_ruas like '%$_REQUEST[cari_nama]%'"; $result = mysql_query($query); while ($row2= mysql_fetch_array($result)) { $counter = 1; $query = "SELECT * FROM prasarana_ruas WHERE no_ruas_jalan = $row2[1] AND id_jenis_prasarana = $_REQUEST[cari_jenis] AND kondisi like '%$_REQUEST[cari_kondisi]%' ORDER BY no_ruas_jalan"; $result2 = mysql_query($query); while ($row = mysql_fetch_row($result2)) { $strSql = "SELECT * FROM ruas_jalan WHERE no_ruas_jalan = '$row[1]'"; $result3 = mysql_query($strSql); while ($data3 = mysql_fetch_array($result3)) { $nama_ruas = $data3[nama_ruas]; } $strSql = "SELECT * FROM jenis_prasarana WHERE id_jenis_prasarana = $row[3]"; $result3 = mysql_query($strSql); while ($data3 = mysql_fetch_array($result3)) { $jenis_prasarana = $data3[nama_jenis_prasarana]; } $cell[$i][0] = $row[1]; $cell[$i][1] = $nama_ruas; $cell[$i][2] = $row[2]; $cell[$i][3] = $jenis_prasarana; $cell[$i][4] = $row[4]; $cell[$i][5] = $row[5]; $cell[$i][6] = $row[6]; $cell[$i][7] = $row[7]; $cell[$i][8] = $row[8]; $cell[$i][9] = $row[9]; $cell[$i][10] = $row[10]; $cell[$i][11] = $row[11]; $cell[$i][12] = $row[12]; if ($i<>0) { if ($cell[$i][1] == $cell[$i-1][1]) { $cell[$i][0] = ""; $cell[$i][1] = ""; $cell[$i][2] = ""; }
145
} $i++; } } } else if ($_REQUEST[cari_nama] == "" and $_REQUEST[cari_jenis] <> "") { $query = "SELECT * FROM prasarana_ruas WHERE id_jenis_prasarana = $_REQUEST[cari_jenis] AND kondisi like '%$_REQUEST[cari_kondisi]%' ORDER BY no_ruas_jalan"; $result = mysql_query($query); while ($row = mysql_fetch_row($result)) { $strSql = "SELECT * FROM ruas_jalan WHERE no_ruas_jalan = '$row[1]'"; $result3 = mysql_query($strSql); while ($data3 = mysql_fetch_array($result3)) { $nama_ruas = $data3[nama_ruas]; } $strSql = "SELECT * FROM jenis_prasarana WHERE id_jenis_prasarana = $row[3]"; $result3 = mysql_query($strSql); while ($data3 = mysql_fetch_array($result3)) { $jenis_prasarana = $data3[nama_jenis_prasarana]; } $cell[$i][0] = $row[1]; $cell[$i][1] = $nama_ruas; $cell[$i][2] = $row[2]; $cell[$i][3] = $jenis_prasarana; $cell[$i][4] = $row[4]; $cell[$i][5] = $row[5]; $cell[$i][6] = $row[6]; $cell[$i][7] = $row[7]; $cell[$i][8] = $row[8]; $cell[$i][9] = $row[9]; $cell[$i][10] = $row[10]; $cell[$i][11] = $row[11]; $cell[$i][12] = $row[12]; if ($i<>0) { if ($cell[$i][1] == $cell[$i-1][1]) { $cell[$i][0] = ""; $cell[$i][1] = ""; $cell[$i][2] = "";
146
} } $i++; } } else if ($_REQUEST[cari_nama] <> "" and $_REQUEST[cari_jenis] == "") { $query = "SELECT * FROM ruas_jalan WHERE nama_ruas like '%$_REQUEST[cari_nama]%'"; $result = mysql_query($query); while ($row2 = mysql_fetch_row($result)) { $counter = 1; $query = "SELECT * FROM prasarana_ruas WHERE no_ruas_jalan = $row2[1] AND kondisi like '%$_REQUEST[cari_kondisi]%' ORDER BY no_ruas_jalan"; $result2 = mysql_query($query); while ($row = mysql_fetch_row($result2)) { $strSql = "SELECT * FROM ruas_jalan WHERE no_ruas_jalan = '$row[1]]'"; $result3 = mysql_query($strSql); while ($data3 = mysql_fetch_array($result3)) { $nama_ruas = $data3[nama_ruas]; } $strSql = "SELECT * FROM jenis_prasarana WHERE id_jenis_prasarana = $row[3]"; $result3 = mysql_query($strSql); while ($data3 = mysql_fetch_array($result3)) { $jenis_prasarana = $data3[nama_jenis_prasarana]; } $cell[$i][0] = $row[1]; $cell[$i][1] = $nama_ruas; $cell[$i][2] = $row[2]; $cell[$i][3] = $jenis_prasarana; $cell[$i][4] = $row[4]; $cell[$i][5] = $row[5]; $cell[$i][6] = $row[6]; $cell[$i][7] = $row[7]; $cell[$i][8] = $row[8]; $cell[$i][9] = $row[9]; $cell[$i][10] = $row[10]; $cell[$i][11] = $row[11]; $cell[$i][12] = $row[12]; if ($i<>0)
147
{ if ($cell[$i][1] == $cell[$i-1][1]) { $cell[$i][0] = ""; $cell[$i][1] = ""; $cell[$i][2] = ""; } } $i++; } } } else { $query = "SELECT * FROM prasarana_ruas WHERE kondisi like '%$_REQUEST[cari_kondisi]%' ORDER BY no_ruas_jalan"; $result = mysql_query($query); while ($row = mysql_fetch_row($result)) { $strSql = "SELECT * FROM ruas_jalan WHERE no_ruas_jalan = '$row[1]'"; $result2 = mysql_query($strSql); while ($data2 = mysql_fetch_array($result2)) { $nama_ruas = $data2[nama_ruas]; } $strSql = "SELECT * FROM jenis_prasarana WHERE id_jenis_prasarana = $row[3]"; $result2 = mysql_query($strSql); while ($data2 = mysql_fetch_array($result2)) { $jenis_prasarana = $data2[nama_jenis_prasarana]; } $cell[$i][0] = $row[1]; $cell[$i][1] = $nama_ruas; $cell[$i][2] = $row[2]; $cell[$i][3] = $jenis_prasarana; $cell[$i][4] = $row[4]; $cell[$i][5] = $row[5]; $cell[$i][6] = $row[6]; $cell[$i][7] = $row[7]; $cell[$i][8] = $row[8]; $cell[$i][9] = $row[9]; $cell[$i][10] = $row[10]; $cell[$i][11] = $row[11]; $cell[$i][12] = $row[12]; if ($i<>0) {
148
if ($cell[$i][1] == $cell[$i-1][1]) { $cell[$i][0] = ""; $cell[$i][1] = ""; $cell[$i][2] = ""; } } $i++; } } $pdf = new FPDF('L','in','A4' ); $pdf->Open(); $pdf->AddPage(); $pdf->SetFont('Arial','BI',20); $pdf->SetTextColor(57,65,140); $pdf->Cell(0,1,'Prasarana Ruas',0,0,'C'); $pdf->Ln(); $pdf->SetFont('Arial','',8); $pdf->SetTextColor(57,65,140); $pdf->Cell(0.5,0.2,'No','TLR',0,'C'); $pdf->Cell(1.7,0.2,'Nama Ruas','TLR',0,'C'); $pdf->Cell(0.45,0.2,'Sub','TLR',0,'C'); $pdf->Cell(1.2,0.2,'Jenis Prasarana','TLR',0,'C'); $pdf->Cell(0.45,0.2,'Sta','TLR',0,'C'); $pdf->Cell(0.45,0.2,'Sta','TLR',0,'C'); $pdf->Cell(0.7,0.2,'Pemasangan','TLR',0,'C'); $pdf->Cell(0.45,0.2,'Tahun','TLR',0,'C'); $pdf->Cell(0.5,0.2,'Kondisi','TLR',0,'C'); $pdf->Cell(1,0.2,'Usulan','TLR',0,'C'); $pdf->Cell(0.7,0.2,'Alinemen','TLR',0,'C'); $pdf->Cell(0.7,0.2,'Alinemen','TLR',0,'C'); $pdf->Cell(1.1,0.2,'Keterangan','TLR',0,'C'); $pdf->Ln(); $pdf->SetFont('Arial','',8); $pdf->Cell(0.5,0.2,'Ruas','BLR',0,'C'); $pdf->Cell(1.7,0.2,'','BLR',0,'C'); $pdf->Cell(0.45,0.2,'Ruas','BLR',0,'C'); $pdf->Cell(1.2,0.2,'Lalu Lintas','BLR',0,'C'); $pdf->Cell(0.45,0.2,'Awal','BLR',0,'C'); $pdf->Cell(0.45,0.2,'Akhir','BLR',0,'C'); $pdf->Cell(0.7,0.2,'','BLR',0,'C'); $pdf->Cell(0.45,0.2,'','BLR',0,'C'); $pdf->Cell(0.5,0.2,'','BLR',0,'C'); $pdf->Cell(1,0.2,'Penanganan','BLR',0,'C'); $pdf->Cell(0.7,0.2,'Horizontal','BLR',0,'C'); $pdf->Cell(0.7,0.2,'Vertikal','BLR',0,'C'); $pdf->Cell(1.1,0.2,'','BLR',0,'C'); $pdf->Ln(); $pdf->SetTextColor(0,0,0); for ($j=0;$j<$i;$j++) {
149
if ($cell[$j][1] <> "") { $pdf->Cell(0.5,0.2,$cell[$j][0],'TLR',0,'C'); $pdf->Cell(1.7,0.2,$cell[$j][1],'TLR',0,'C'); $pdf->Cell(0.45,0.2,$cell[$j][2],'TLR',0,'C'); } elseif ($j == $i-1) { $pdf->Cell(0.5,0.2,$cell[$j][0],'BLR',0,'C'); $pdf->Cell(1.7,0.2,$cell[$j][1],'BLR',0,'C'); $pdf->Cell(0.45,0.2,$cell[$j][2],'BLR',0,'C'); } else { $pdf->Cell(0.5,0.2,$cell[$j][0],'LR',0,'C'); $pdf->Cell(1.7,0.2,$cell[$j][1],'LR',0,'C'); $pdf->Cell(0.45,0.2,$cell[$j][2],'LR',0,'C'); } $pdf->Cell(1.2,0.2,$cell[$j][3],1,0,'C'); $pdf->Cell(0.45,0.2,$cell[$j][4],1,0,'C'); $pdf->Cell(0.45,0.2,$cell[$j][5],1,0,'C'); $pdf->Cell(0.7,0.2,$cell[$j][6],1,0,'C'); $pdf->Cell(0.45,0.2,$cell[$j][7],1,0,'C'); $pdf->Cell(0.5,0.2,$cell[$j][8],1,0,'C'); $pdf->Cell(1,0.2,$cell[$j][9],1,0,'C'); $pdf->Cell(0.7,0.2,$cell[$j][10],1,0,'C'); $pdf->Cell(0.7,0.2,$cell[$j][11],1,0,'C'); $pdf->Cell(1.1,0.2,$cell[$j][12],1,0,'C'); $pdf->Ln(); } $pdf->Cell(19,0,'',1,0); $pdf->Ln(); $tanggal = date("d-m-y",time()); $pdf->SetFont('Arial','',10); $pdf->Cell(0,1,'per tanggal '.$tanggal.'',0,0,'R'); $pdf->Output();
4.6.3 Laporan Kinerja Simpang
Gambar 4.47 merupakan contoh lembar halaman laporan Kinerja Simpang.
Laporan Kinerja Simpang ini juga dapat menampilkan laporan pilihan berdasarkan
Nama Simpang, Wilayah Administrasi, dan APILL
150
Gambar 4.46. Laporan Kinerja Simpang:
Potongan Program Laporan Kinerja Simpang: $query = "SELECT * FROM simpang WHERE nama_simpang like '%$_REQUEST[cari_nama]%' AND wilayah_administrasi LIKE '%$_REQUEST[cari_wilayah]%' AND apill LIKE '%$_REQUEST[cari_apill]%'"; $result = mysql_query($query); $i = 0; $counter = 1; while ($row = mysql_fetch_row($result)) { $totalArus = $row[15] + $row[16] + $row[17] + $row[18]; $ds = round($totalArus / $row[5],4); $cell[$i][0] = $counter; $cell[$i][1] = $row[1]; $cell[$i][2] = $row[2]; $cell[$i][3] = $row[3]; $cell[$i][4] = $row[4]; $cell[$i][5] = $row[5]; $cell[$i][6] = $row[6]; $cell[$i][7] = $totalArus; $cell[$i][8] = $ds; $cell[$i][9] = $row[7]; $cell[$i][10] = $row[11]; $cell[$i][11] = $row[15]; for ($j=8;$j<11;$j++) { $i++; $cell[$i][0] = ""; $cell[$i][1] = ""; $cell[$i][2] = "";
151
$cell[$i][3] = ""; $cell[$i][4] = ""; $cell[$i][5] = ""; $cell[$i][6] = ""; $cell[$i][7] = ""; $cell[$i][8] = ""; $cell[$i][9] = $row[$j]; $cell[$i][10] = $row[$j+4]; $cell[$i][11] = $row[$j+8]; } //$cell[$i][10] = $row[10]; //$cell[$i][11] = $row[11]; //$cell[$i][12] = $row[12]; //$cell[$i][13] = $row[13]; //$cell[$i][14] = $row[14]; //$cell[$i][15] = $row[15]; $counter++; $i++; } $pdf = new FPDF('L','in','A4' ); $pdf->Open(); $pdf->AddPage(); $pdf->SetFont('Arial','BI',20); $pdf->SetTextColor(57,65,140); $pdf->Cell(0,1,'Kinerja Simpang',0,0,'C'); $pdf->Ln(); $pdf->SetFont('Arial','',8); $pdf->SetTextColor(57,65,140); $pdf->Cell(0.5,0.3,'No','TLR',0,'C'); $pdf->Cell(2.35,0.3,'Nama Simpang','TLR',0,'C'); $pdf->Cell(0.65,0.3,'Tipe','TLR',0,'C'); $pdf->Cell(0.6,0.3,'APILL','TLR',0,'C'); $pdf->Cell(0.95,0.3,'Wilayah','TLR',0,'C'); $pdf->Cell(2,0.3,'Pendekat','TLR',0,'C'); $pdf->Cell(0.55,0.3,'Jumlah','TLR',0,'C'); $pdf->Cell(0.6,0.3,'Arus','TLR',0,'C'); $pdf->Cell(0.7,0.3,'Total Arus','TLR',0,'C'); $pdf->Cell(0.65,0.3,'Kapasitas','TLR',0,'C'); $pdf->Cell(0.65,0.3,'Degree of','TLR',0,'C'); $pdf->Cell(0.65,0.3,'Tundaan','TLR',0,'C'); $pdf->Ln(); $pdf->SetFont('Arial','',8); $pdf->Cell(0.5,0.1,'','LR',0,'C'); $pdf->Cell(2.35,0.1,'','LR',0,'C'); $pdf->Cell(0.65,0.1,'Simpang','LR',0,'C'); $pdf->Cell(0.6,0.1,'','LR',0,'C'); $pdf->Cell(0.95,0.1,'Administrasi','LR',0,'C'); $pdf->Cell(2,0.1,'','LR',0,'C'); $pdf->Cell(0.55,0.1,'Lajur','LR',0,'C'); $pdf->Cell(0.6,0.1,'Masuk','LR',0,'C'); $pdf->Cell(0.7,0.1,'Masuk','LR',0,'C');
152
$pdf->Cell(0.65,0.1,'(smp/jam)','LR',0,'C'); $pdf->Cell(0.65,0.1,'Saturation','LR',0,'C'); $pdf->Cell(0.65,0.1,'rata-rata','LR',0,'C'); $pdf->Ln(); $pdf->SetFont('Arial','',8); $pdf->Cell(0.5,0.2,'','BLR',0,'C'); $pdf->Cell(2.35,0.2,'','BLR',0,'C'); $pdf->Cell(0.65,0.2,'','BLR',0,'C'); $pdf->Cell(0.6,0.2,'','BLR',0,'C'); $pdf->Cell(0.95,0.2,'','BLR',0,'C'); $pdf->Cell(2,0.2,'','BLR',0,'C'); $pdf->Cell(0.55,0.2,'','BLR',0,'C'); $pdf->Cell(0.6,0.2,'(smp/jam)','BLR',0,'C'); $pdf->Cell(0.7,0.2,'(smp/jam)','BLR',0,'C'); $pdf->Cell(0.65,0.2,'','BLR',0,'C'); $pdf->Cell(0.65,0.2,'(DS)','BLR',0,'C'); $pdf->Cell(0.65,0.2,'(det/smp)','BLR',0,'C'); $pdf->Ln(); $pdf->SetTextColor(0,0,0); for ($j=0;$j<$i;$j++) { if ($j == 0 or $j%4 == 0) { $pdf->Cell(0.5,0.3,$cell[$j][0],'TLR',0,'C'); $pdf->Cell(2.35,0.3,$cell[$j][1],'TLR',0,'C'); $pdf->Cell(0.65,0.3,$cell[$j][2],'TLR',0,'C'); $pdf->Cell(0.6,0.3,$cell[$j][4],'TLR',0,'C'); $pdf->Cell(0.95,0.3,$cell[$j][6],'TLR',0,'C'); } elseif ($j == $i-1) { $pdf->Cell(0.5,0.3,$cell[$j][0],'BLR',0,'C'); $pdf->Cell(2.35,0.3,$cell[$j][1],'BLR',0,'C'); $pdf->Cell(0.65,0.3,$cell[$j][2],'BLR',0,'C'); $pdf->Cell(0.6,0.3,$cell[$j][4],'BLR',0,'C'); $pdf->Cell(0.95,0.3,$cell[$j][6],'BLR',0,'C'); } else { $pdf->Cell(0.5,0.3,$cell[$j][0],'LR',0,'C'); $pdf->Cell(2.35,0.3,$cell[$j][1],'LR',0,'C'); $pdf->Cell(0.65,0.3,$cell[$j][2],'LR',0,'C'); $pdf->Cell(0.6,0.3,$cell[$j][4],'LR',0,'C'); $pdf->Cell(0.95,0.3,$cell[$j][6],'LR',0,'C'); } $pdf->Cell(2,0.3,$cell[$j][9],1,0,'C'); $pdf->Cell(0.55,0.3,$cell[$j][10],1,0,'C'); $pdf->Cell(0.6,0.3,$cell[$j][11],1,0,'C'); if ($j == 0 or $j%4 == 0) { $pdf->Cell(0.7,0.3,$cell[$j][7],'TLR',0,'C'); $pdf->Cell(0.65,0.3,$cell[$j][5],'TLR',0,'C'); $pdf->Cell(0.65,0.3,$cell[$j][8],'TLR',0,'C');
153
$pdf->Cell(0.65,0.3,$cell[$j][3],'TLR',0,'C'); } elseif ($j == $i-1) { $pdf->Cell(0.7,0.3,$cell[$j][7],'BLR',0,'C'); $pdf->Cell(0.65,0.3,$cell[$j][5],'BLR',0,'C'); $pdf->Cell(0.65,0.3,$cell[$j][8],'BLR',0,'C'); $pdf->Cell(0.65,0.3,$cell[$j][3],'BLR',0,'C'); } else { $pdf->Cell(0.7,0.3,$cell[$j][7],'LR',0,'C'); $pdf->Cell(0.65,0.3,$cell[$j][5],'LR',0,'C'); $pdf->Cell(0.65,0.3,$cell[$j][8],'LR',0,'C'); $pdf->Cell(0.65,0.3,$cell[$j][3],'LR',0,'C'); } $pdf->Ln(); } $pdf->Cell(19,0,'',1,0); $pdf->Ln(); $tanggal = date("d-m-y",time()); $pdf->SetFont('Arial','',10); $pdf->Cell(0,1,'per tanggal '.$tanggal.'',0,0,'R'); $pdf->Output();
4.6.4 Laporan Prasarana Simpang
Gambar 4.47 merupakan contoh lembar halaman laporan Prasarana Simpang
.Laporan Kinerja Simpang ini juga dapat menampilkan laporan pilihan berdasarkan
Nama Simpang, Wilayah Administrasi, dan kondisi.
154
Gambar 4.47. Laporan Prasarana Simpang:
Potongan Program Laporan Prasarana Simpang: $query = "SELECT * FROM prasarana_simpang ORDER BY no_simpang,pendekat"; $result = mysql_query($query); $i = 0; $counter = 1; while ($row = mysql_fetch_row($result)) { $query = "SELECT * FROM SIMPANG WHERE no_simpang = $row[1]"; $res = mysql_query($query); while ($data = mysql_fetch_array($res)) { $nama_simpang = $data[1]; $wilayah = $data[6]; if($row[2] == "mayor1") { $nama_pendekat = $data[7]; } else if($row[2] == "mayor2") { $nama_pendekat = $data[8]; } else if($row[2] == "minor1") { $nama_pendekat = $data[9]; } else if($row[2] == "minor1") { $nama_pendekat = $data[10]; } } $query = "SELECT * FROM jenis_prasarana WHERE id_jenis_prasarana = $row[3]"; $res = mysql_query($query); while ($data = mysql_fetch_array($res)) { $jenis_prasarana = $data[1]; } $cell[$i][0] = $counter; $cell[$i][1] = $nama_simpang; $cell[$i][2] = $nama_pendekat; $cell[$i][3] = $jenis_prasarana; $cell[$i][4] = $row[4]; $cell[$i][5] = $row[5]; $cell[$i][6] = $row[6]; $cell[$i][7] = $row[7]; $cell[$i][8] = $row[8];
155
$cell[$i][9] = $row[9]; $cell[$i][10] = $row[10]; $cell[$i][11] = $wilayah; if ($i<> 0) { if ($cell[$i][1] == $cell[$i-1][1]) { $cell[$i][1] = ""; $cell[$i][0] = ""; } else { $counter++; } if ($cell[$i][2] == $cell[$i-1][2]) { $cell[$i][2] = ""; } } else { $counter++; } $i++; } $pdf = new FPDF('L','in','A4' ); $pdf->Open(); $pdf->AddPage(); $pdf->SetFont('Arial','BI',20); $pdf->SetTextColor(57,65,140); $pdf->Cell(0,1,'Prasarana Simpang',0,0,'C'); $pdf->Ln(); $pdf->SetFont('Arial','',8); $pdf->SetTextColor(57,65,140); $pdf->Cell(0.5,0.3,'No','TLR',0,'C'); $pdf->Cell(1.6,0.3,'Nama Simpang','TLR',0,'C'); $pdf->Cell(2,0.3,'Pendekat','TLR',0,'C'); $pdf->Cell(1,0.3,'Jenis Prasarana','TLR',0,'C'); $pdf->Cell(0.5,0.3,'Sta','TLR',0,'C'); $pdf->Cell(0.5,0.3,'Panjang','TLR',0,'C'); $pdf->Cell(0.5,0.3,'Jumlah','TLR',0,'C'); $pdf->Cell(0.5,0.3,'Tahun','TLR',0,'C'); $pdf->Cell(0.5,0.3,'Kondisi','TLR',0,'C'); $pdf->Cell(0.7,0.3,'Usulan','TLR',0,'C'); $pdf->Cell(0.8,0.3,'Wilayah','TLR',0,'C'); $pdf->Cell(1.7,0.3,'Keterangan','TLR',0,'C'); $pdf->Ln(); $pdf->SetFont('Arial','',8); $pdf->Cell(0.5,0.3,'','BLR',0,'C');
156
$pdf->Cell(1.6,0.3,'','BLR',0,'C'); $pdf->Cell(2,0.3,'','BLR',0,'C'); $pdf->Cell(1,0.3,'Lalu Lintas','BLR',0,'C'); $pdf->Cell(0.5,0.3,'Lokasi','BLR',0,'C'); $pdf->Cell(0.5,0.3,'(m)','BLR',0,'C'); $pdf->Cell(0.5,0.3,'','BLR',0,'C'); $pdf->Cell(0.5,0.3,'','BLR',0,'C'); $pdf->Cell(0.5,0.3,'','BLR',0,'C'); $pdf->Cell(0.7,0.3,'Penanganan','BLR',0,'C'); $pdf->Cell(0.8,0.3,'Administarsi','BLR',0,'C'); $pdf->Cell(1.7,0.3,'','BLR',0,'C'); $pdf->Ln(); $pdf->SetTextColor(0,0,0); for ($j=0;$j<$i;$j++) { if ($j == $i-1) { $pdf->Cell(0.5,0.3,$cell[$j][0],'BLR',0,'C'); $pdf->Cell(1.6,0.3,$cell[$j][1],'BLR',0,'C'); $pdf->Cell(2,0.3,$cell[$j][2],'BLR',0,'C'); } else { if ($cell[$i][1] <> "") { $pdf->Cell(0.5,0.3,$cell[$j][0],'TLR',0,'C'); $pdf->Cell(1.6,0.3,$cell[$j][1],'TLR',0,'C'); } else { $pdf->Cell(0.5,0.3,$cell[$j][0],'LLR',0,'C'); $pdf->Cell(1.6,0.3,$cell[$j][1],'LR',0,'C'); } if ($cell[$i][2] <> "") { $pdf->Cell(2,0.3,$cell[$j][2],'TLR',0,'C'); } else { $pdf->Cell(2,0.3,$cell[$j][2],'LR',0,'C'); } } $pdf->Cell(1,0.3,$cell[$j][3],'TLR',0,'C'); $pdf->Cell(0.5,0.3,$cell[$j][4],'TLR',0,'C'); $pdf->Cell(0.5,0.3,$cell[$j][5],'TLR',0,'C'); $pdf->Cell(0.5,0.3,$cell[$j][6],'TLR',0,'C'); $pdf->Cell(0.5,0.3,$cell[$j][7],'TLR',0,'C'); $pdf->Cell(0.5,0.3,$cell[$j][8],'TLR',0,'C'); $pdf->Cell(0.7,0.3,$cell[$j][9],'TLR',0,'C'); $pdf->Cell(0.8,0.3,$cell[$j][11],'TLR',0,'C');
157
$pdf->Cell(1.7,0.3,$cell[$j][10],'TLR',0,'C'); $pdf->Ln(); } $pdf->Cell(19,0,'',1,0); $pdf->Ln(); $tanggal = date("d-m-y",time()); $pdf->SetFont('Arial','',10); $pdf->Cell(0,1,'per tanggal '.$tanggal.'',0,0,'R'); $pdf->Output();
158
BAB V ANALISA HASIL IMPLEMENTASI
5.1 Kemampuan Sistem
Kemampuan - kemampuan yang terdapat pada sistem ini, antara lain :
1. Sistem ini mempermudah bagian Lalu Lintas dalam melakukan penyimpanan
dan pencarian data prasarana lalu lintas.
2. Sistem dapat memberikan fasilitas kepada masyarakat umum untuk
menyampaikan pengaduan kerusakan atau ketidaknyamanan dalam penggunaan
prasarana lalu lintas.
3. Sistem dapat memudahkan administrator dalam melakukan update data prasarana
lalu lintas
4. Sistem dapat memberikan laporan-laporan yang berkaitan dengan data prasarana
lalu lintas.
5.2 Kekurangan Sistem
Kekurangan-kekurangan yang terdapat pada sistem ini, antara lain :
1 Keamanan database masih belum terjamin.
2 Tampilan masih sederhana.
3 Fasilitas Error Handling masih kurang.
4 Pendataan simpang masih kurang jelas lokasi ruas jalannya karena belum adanya
relasi antara data simpang dan data ruas jalan.
159
BAB VI PENUTUP
Secara umum Sistem Informasi Prasarana Lalu Lintas Berbasis Web ini dapat
berjalan dengan baik sehingga dapat digunakan dalam kondisi sesungguhnya.
Kemampuan dari sistem ini antara lain sistem dapat mempermudah bagian Lalu
Lintas dalam melakukan penyimpanan dan pencarian data prasarana lalu lintas,
sistem dapat memberikan fasilitas kepada masyarakat umum untuk menyampaikan
pengaduan kerusakan atau ketidaknyamanan dalam penggunaan prasarana lalu lintas,
sistem dapat memudahkan administrator dalam melakukan update data prasarana
lalu lintas dan sistem dapat memberikan laporan-laporan yang berkaitan dengan data
prasarana lalu lintas. Sedangkan kekurangan – kekurangan dari sistem ini antara lain
keamanan database masih belum terjamin, tampilan masih sederhana, fasilitas Error
Handling masih kurang dan pendataan simpang masih kurang jelas lokasi ruas
jalannya karena belum adanya relasi antara data simpang dan data ruas jalan.
Saran
1. Sistem dapat dikembangkan dengan memperkuat keamanan database.
2. Sistem dapat dikembangkan dengan fasilitas error handling yang lebih baik.
3. Pendataan simpang dapat dibuat lebih jelas dengan menambahkan relasi antara
data simpang dan data ruas jalan.
4. Pengaduan dapat dikembangkan tidak hanya melalui internet tetapi juga melalui
fasilitas SMS (Short Message Service)
160
DAFTAR PUSTAKA
Nugroho, Bunafit. (2004). Aplikasi Pemrograman Web Dinamis denganPHP dan
MySQL. Yogyakarta : Gava Media
Nugroho, Bunafit. (2004). Aplikasi PHP & MySQL dengan Editor Dreamweaver
MX. Yogyakarta : Andi
Prasetyo, Didik Dwi. (2003). Tip dan Trik Kolaborasi PHP dan MySQL Untuk
Membuat Web Database yang Interaktif. Jakarta : PT Elex Media Komputindo
Pramono, Andi dan Syafii, M. (2005). Kolaborasi Flash, Dreamweaver, dan PHP
untuk Aplikasi Web Site. Yogyakarta : Andi
Kadir, Abdul. (2002). Pemrograman Web Mencakup HTML, CSS, JavaScript &
PHP. Yogyakarta : Andi
Sidik, Ir. Sidik. (2001). Pemrograman Web dengan PHP. Bandung : Informatika
Nugroho, Bunafit (2005). Pengembangan program WAP degan WML & PHP.
Yogyakarta : Gava Media
Jogiyanto HM., MBA., Akt., Ph.D. (2003) Analisis & Desain Sistem Informasi :
Pendekatan terstruktur teori dan praktek aplikasi bisnis. Yogyakasrta : Andi
Sanjaya, Ridwan, Membuat Laporan PDF berbasis Web dengan PHP 5.0, Elex
Media Komputindo, Jakarta, 2005