Praktikum DAPL 2010
0
KATA PENGANTAR
Mata kuliah Analisa dan Perancangan Sistem Informasi merupakan mata kuliah yang membahas mengenai bagaimana mengembangkan suatu sistem informasi yang baik / berkualitas. Ruang lingkup mata kuliah ini meliputi : konsep sistem informasi manajemen, metodologi pengembangan sistem informasi (SI), tahapan pengembangan SI, analisis kebutuhan informasi, analisis sistem yang digambarkan dengan diagram aliran data dan kamus data,
desain basis data,
desain input dan output, dan implementasi SI. Tujuan dari mata kuliah Analisa dan Perancangan Sistem Informasi ini adalah supaya mahasiswa mampu menjelaskan mengenai konsep SIM, siklus hidup analisis dan perancangan sistem informasi serta mampu menganalisis, merancang dan membuat sistem informasi. Untuk mencapai tujuan tersebut di atas diperlukan strategi
pembelajaran
yang
tepat.
Agar
mahasiswa
mampu
menganalisis,
merancang dan membuat sistem informasi, diperlukan strategi pembelajaran yang bersifat psikomotorik. Materi mata kuliah Analisa dan Perancangan Sistem Informasi yang akan dimasukkan
ke
dalam
modul
praktikum
dipilih
dari
materi
yang
bersifat
meningkatkan keahlian atau aspek psikomotorik mahasiswa. Setelah melakukan identifikasi dengan mengacu pada SAP (satuan acara pengajaran) dari mata kuliah Analisa dan Perancangan Sistem Informasi, maka didapat 4 pokok bahasan yang perlu untuk dipraktikumkan. Empat pokok bahasan tersebut adalah:
Praktikum DAPL 2010
1
1. Perancangan Proses Sistem Ada beberapa pertanyaan yang mendasar didalam pengembangan suatu sistem yaitu: -
Proses apa yang membentuk suatu sistem?
-
Data apa yang dipergunakan pada setiap proses?
-
Data apa yang disimpan?
-
Data apa yang masuk dan keluar suatu sistem?
Pertanyaan-pertanyaan di atas bisa dijawab dengan menggambarkan Data Flow Diagram (DFD). 2. Konsep Perancangan Basis Data Untuk membuat suatu basis data yang baik, ada beberapa kriteria dan tahapan
yang
perlu
diperhatikan.
ERD (Entity
Relationship
Diagram)
merupakan pemodelan basis data dengan memperhatikan kriteria-kriteria dari basis data yang baik. ERD merupakan suatu model untuk menjelaskan hubungan antar data dalam suatu basis data. 3. Membuat Database Menggunakan PhpMyAdmin Mengimplementasikan database yang telah dirancang. Saat ini banyak sekali perangkat lunak yang dapat dimanfaatkan untuk mengelola database dalam MySQL, salah satunya adalah PhpMyAdmin. Dengan PhpMyAdmin, kita dapat membuat database, membuat table, mengisi data, dan lain-lain dengan mudah , tanpa harus hafal baris perintahnya. 4. Koneksi Database dengan Interface Sistem Pada bagian ini akan dijelaskan bagaimana membuat suatu sistem sederhana yang terdiri dari aplikasi berbasis web dilengkapi dengan basis data. Ada beberapa hal yang perlu dipelajari mahasiswa ketika menghubungkan basis data
dengan
Interface
yang
merupakan
aplikasi
berbasis
web
serta
melakukan pengolahan data.
Praktikum DAPL 2010
2
Untuk menjelaskan mengenai pokok-pokok bahasan diatas, akan diberikan kasus-kasus sederhana berisikan suatu proses bisnis tertentu untuk kemudian mahasiswa ditugaskan menggambarkan DFD dan ERD serta merancang interface sistem, membuat basis data serta menghubungkannya dengan interface sistem. Untuk membuat activity diagram, DFD dan ERD digunakan alat bantu software Ms.Visio 2007 dan ER-Win sedangkan perancangan interface berbasis web dan basis datanya digunakan alat bantu yaitu software PhpMyAdmin dan Adobe Dreamweaver. Software-software tersebut dipilih karena termasuk sebagai aplikasi umum
serta
memiliki
fasilitas
dan
kemampuan
untuk
merancang
dan
mengembangkan suatu sistem sederhana dengan cepat dan praktis. Di dalam pelaksanaan praktikum, apabila menemukan kesulitan atau masalah, praktikan sebaiknya jangan segan-segan untuk bertanya pada asisten. Peran aktif praktikan untuk mempelajari, dan mempraktekkan materi di dalam modul ini sangat diharapkan karena materi dalam modul ini merupakan bekal dasar untuk membuat perancangan sistem informasi yang lebih baik. Akhirnya, semoga modul ini bisa bermanfaat. Segala kritik dan saran dengan hormat mohon dikirimkan kepada penyusun dengan e-mail : riz@ittelkom.ac.id.
Praktikum DAPL 2010
3
Praktikum DAPL 2010
4
Tata Tertib Praktikum Desain Aplikasi Perangkat Lunak I.
Kelengkapan dan persyaratan praktikum 1.Kelengkapan Praktikum Kartu Praktikum •
Kartu praktikum dibagikan pada waktu yang ditentukan kemudian dan harus segera dilengkapi dengan data – data praktikan berikut foto dan cap laboratorium.
•
Setiap kegiatan praktikum, seluruh praktikan harus membawa kartu praktikum.
•
Apabila kartu praktikum hilang, praktikan harus mengganti sesuai dengan aslinya
kemudian meminta
cap laboratorium kepada
asisten untuk legalisir, sebelum praktikum selanjutnya diadakan. Modul Praktikum •
Modul praktikum dibagikan kepada praktikan pada waktu yang ditentukan kemudian.
•
Setiap
praktikum,
praktikan
diwajibkan
membawa
modul
praktikum. Tes Awal •
Tes awal dilaksanakan pada awal praktikum.
•
Pengumuman mengenai tes awal akan diumumkan kemudian.
•
Setiap
keterlambatan,
praktikan
diberi
kesempatan
untuk
mengikuti tes awal tanpa perpanjangan waktu.
Praktikum DAPL 2010
5
Praktikum Setiap praktikan wajib mengikuti praktikum dengan persyaratan
•
praktikum yang telah ditentukan. Apabila salah satu atau lebih dari syarat
tersebut
diperkenankan
tidak
terpenuhi
mengikuti
praktikum
maka dan
praktikan
asisten
tidak
Lab.ProDase
berhak mengeluarkan praktikan. •
Praktikan wajib mematuhi tata tertib yang ada pada Lab. ProDase.
•
Praktikum akan dilakukan dalam periode 2 minggu x 1 praktikum.
Tes Akhir •
Tes akhir merupakan tes yang dilakukan pada akhir praktikum.
•
Pengumuman mengenai tes akhir akan diumumkan kemudian.
•
Setiap
keterlambatan,
praktikan
diberi
kesempatan
untuk
mengikuti tes akhir tanpa perpanjangan waktu. 2.Persyaratan Praktikum •
Memenuhi seluruh kelengkapan praktikum yang tercantum pada poin sebelumnya.
II.
Tata Tertib Praktikum 1. Praktikan
wajib
memenuhi
seluruh
kelengkapan
dan
persyaratan
Praktikum termasuk membawa modul Praktikum. 2. Asisten dapat memperingatkan bahkan mengeluarkan praktikan yang tidak dapat menjaga ketenangan, ketertiban, kebersihan, dan kerapian Lab saat Praktikum dilaksanakan. 3. Setiap praktikan wajib bertutur kata baik dan sopan dalam bersikap kepada asisten. 4. Setiap barang yang dipinjam wajib dikembalikan ke tempat semula.
Praktikum DAPL 2010
6
5. Tidak mengikuti praktikum salah satu modul atau lebih tanpa alasan yang jelas dan tidak dapat dipertanggungjawabkan maka praktikan tersebut diwajibkan mengulang praktikum pada modul bersangkutan di tahun berikutnya. 6. Tukar Jadwal: Mekanisme tukar jadwal adalah kesepakatan antara praktikan sesuai dengan sistem input jadwal yang digunakan. 7. Input Jadwal akan dilakukan pada hari yang akan diumumkan nantinya. 8. Seragam Untuk semua kegiatan praktikum , praktikan diwajibkan untuk memakai seragam rapi dan sopan berupa kemeja putih/batik dan memakai celana bahan warna biru gelap atau rok bahan panjang semata kaki warna biru gelap
( seragam IT TELKOM ) (tidak boleh memakai celana jeans dan
sejenisnya selain celana bahan) serta memakai sepatu. 9. Sanksi Keterlambatan praktikum : •
Terlambat 1 – 15 menit : boleh mengikuti praktikum tanpa adanya penambahan waktu tes awal.
•
Terlambat lebih dari 15 menit : tidak diperbolehkan mengikuti praktikum.
10.Selama praktikum, praktikan tidak diperkenankan meninggalkan ruangan praktikum tanpa seijin asisten jaga. 11.Alat komunikasi dinyalakan dalam mode silent atau dimatikan. 12.Pengumuman mengenai Praktikum Desain Aplikasi Perangkat Lunak akan di informasikan melalui Website Lab Prodase dan Twitter @infoprodase. 13.Segala bentuk kecurangan akan dikenai sanksi nilai “E”. 14.Kepentingan mahasiswa akan dilayani pada jam kerja sampai dengan pukul 21.00 WIB. 15.Hal – hal yang belum tercantum dalam peraturan ini akan ditentukan kemudian.
Praktikum DAPL 2010
7
III.
Penilaian Praktikum DAPL 2010 MODUL
TES AWAL
PRAKTIKUM
TES AKHIR
1
25 %
30 %
45 %
2
30 %
40 %
30 %
3
30 %
40 %
30 %
4
25 %
40 %
35 %
Praktikum DAPL 2010
8
Modul 1 Perancangan Proses Sistem A.
Tujuan Praktikum a) Tujuan Umum 1. Praktikan mampu merancang proses sistem yang baik. 2. Praktikan mampu membuat diagram alir data dan kamus data. 3. Praktikan mampu menggunakan software Ms.Visio. 4. Praktikan mampu memahami mengenai dasar-dasar pembuatan DFD menggunakan Ms. Visio. 5. Praktikan
mampu
melakukan
dan
merancang
alur
proses
menggunakan DFD. b) Tujuan Khusus Setelah melakukan pratikum ini pratikan diharapkan : 1. Dapat menggunakan Software Ms.Visio untuk merancang proses sistem dari studi kasus yang diberikan. 2. Mampu membuat DFD dan kamus data dari kasus yang diberikan. B.
Alat dan Bahan 1. Modul praktikum DAPL 2. Ms. Visio
C.
Dasar Teori
•
Pendahuluan Pendekatan dari sisi bisnis (De Marco, Yourdon, J.A. Senn) Pertanyaan para analyst :
1) Proses apa yang membentuk suatu sistem? 2) Data apa yang dipergunakan pada setiap proses? 3) Data apa yang disimpan? 4) Data apa yang masuk dan keluar suatu sistem?
Praktikum DAPL 2010
9
Kenyataan:
•
Pendefinisian Analisis Aliran Data adalah analisis yang dilakukan untuk mempelajari pemanfaatan data pada setiap aktifitas. Menampilkan hasil pengamatan dalam apa yang disebut ‘Data Flow Diagram’ (DFD) atau diagram alir data. Diagram Alir Data, yaitu satu tampilan grafis yang memunculkan relasi/hubungan antara proses dan data beserta kamus data yang menjelaskan rincian data yang dipergunakan.
Praktikum DAPL 2010
10
Analisis berorientasi aliran data mempergunakan beberapa alat bantu yaitu : 1. DATA FLOW DIAGRAM Merupakan
alat
bantu
grafis
untuk
menguraikan
dan
menganalisis pergerakan data yang melalui satu sistem - baik manual maupun otomatis - termasuk proses data, penyimpanan data dan penundaan yang terjadi pada satu sistem. Diagram alir data ini merupakan alat bantu utama yang dijadikan dasar bagi pengembangan komponen alat bantu lainnya. Penggambaran
transformasi
dari
data
masukan
menjadi
data
keluaran melalui proses-proses sedemikian rupa sehingga dapat ditampilkan uraian lojik dan berdiri sendiri tanpa memperhatikan komponen fisik. Karena itu diagram ini disebut juga ‘logical data flow diagram’. 2. DATA DICTIONARY Merupakan alat bantu untuk menjelaskan karakteristik lojik data yang disimpan pada sistem, termasuk nama, deskripsi, alias, isi dan organisasinya.
Mengidentifikasikan
proses-proses
yang
mempergunakan data tertentu dan juga akses langsung data untuk mendapatkan
informasi
yang
diperlukan.
Mempersiapkan
dasar
identifikasi kebutuhan basis data bagi perancangan sistem.
Praktikum DAPL 2010
11
Notasi
•
Untuk Logical Data Flow Diagram dilengkapi dengan 4 (empat) buah notasi yang sederhana. Dikenal dua pendekatan yaitu :
YOURDON
GANE & SARSON
Data Flow : Aliran data dengan arah khusus dari sumber ke tujuan (Paket data). Proses : Aktivitas / kegiatan interaksi dengan sistem yang dilakukan oleh orang / unit tertentu. Entitas : Orang / unit tertentu yang melakukan aktivitas . Dapat juga berupa aktivitas interaksi dengan system. Data Store : Penyimpanan data atau tempat data di refer oleh proses Ketentuan lain : •
Setiap komponen dalam data flow diagram diberi label dengan nama yang jelas;
•
Nama proses selanjutnya diberi penomoran yang akan dipergunakan untuk keperluan identifikasi ;
•
Penomoran proses diatas tidak menunjukan urutan sekuensial proses.
Praktikum DAPL 2010
12
•
Penggambaran Aktifitas Paralel Dapat dilihat pada diagram yang ada bahwa beberapa aliran data dapat terjadi secara simultan. Ini merupakan salah satu keunggulan penampilan diagram aliran data seperti ini. (Bandingkan dengan diagram flowchart yang hanya dapat menampilkan aktifitas proses secara serial). Diagram alir data memungkinkan para analis merepresentasikan aktifitas-aktifitas secara lebih akurat dengan memperlihatkan aktifitas simultan yang dapat muncul. Perlu dicatat bahwa diagram alir data berkonsentrasi pada pergerakan data dalam sistem, tidak pada peralatan atau media tertentu. Kadang-kadang data disimpan untuk akses atau penggunaan diwaktu lain.
•
Keuntungan Analisis Aliran Data
Notasi yang dipergunakan sederhana, mudah dimengerti sekalipun oleh orang awam.
Usulan untuk modifikasi diagram agar dicapai keakurasian yang tinggi dalam aktifitas bisnis dapat dilakukan.
Mudah dikoreksi sebelum proses perancangan, karena dapat dikaji rinci/ditelusuri.
Memberikan kemungkinan untuk mengisolasi daerah kajian yang diminati secara khusus memberikan fasilitas penjabaran diagram berdasarkan tingkat pengamatan.
•
Pembentukan Diagram Alir Data Syarat utama harus dapat digambarkan dengan baik dan jelas. Kapan dimulai dan kapan menambahkan deskripsi yang lebih rinci, kapan menambahkan informasi kontrol, dan bagaimana memberikan nama beserta item-itemnya secara konsisten. Pembentukan proses ; Sistem yang ‘current’ (aktifitas dan proses aktual yang ada saat ini). Translasikan kedalam deskripsi lojik yang terfokus pada data dan proses.
Praktikum DAPL 2010
13
•
Penggambaran Diagram Alir Data Diagram konteks data : Menggambarkan secara umum konteks yang terjadi dalam sistem antara dunia internal dan dunia eksternal yang berbatasan. Merupakan lapisan teratas terhadap sistem yang akan dibahas. Diagram level 1 : Merupakan gambaran rinci dari diagram konteks. Dikaitkan dengan bagan hirarki proses merupakan diagram yang menguraikan rincian dari level kesatu. Catatan : Yang dimaksud dengan bagan hirarki proses adalah chart yang memberikan ilustrasi bagaimana proses yang terjadi dalam satu sistem secara hirarki dapat dilakukan. Diagram level 2 .... s/d n : Sama
dengan
penjelasan
untuk
level
kesatu
hanya
makin
bertambah nomor level makin dalam penjabaran rincian proses. Untuk mendapatkan diagram lojik alir data perhatikan hal berikut :
•
perlihatkan data aktual yang berhubungan dengan proses, dalam arti bukan dokumen.
•
hilangkan
perjalanan
informasi
melalui
orang/kantor/unit,
munculkan prosedurnya saja.
•
konsolidasikan kerangkapan penyimpanan data.
•
hilangkan fungsi alat bantu, peralatan dan lainnya.
•
hilangkan proses yang tidak penting yang tidak merubah data/aliran data (copy dll).
Praktikum DAPL 2010
14
Aturan Dasar untuk menggambarkan diagram lojik aliran data : 1. Setiap aliran data yang meninggalkan proses harus berdasarkan pada data yang masuk kedalam proses tersebut. 2. Semua
aliran
merefleksikan
data data
diberi yang
nama mengalir
dimana
pemberian
tersebut
antara
nama proses,
penyimpanan data dan sumber lainnya. 3. Hanya
data
yang
akan
dipergunakan
dalam
proses
yang
digambarkan sebagai masukan pada satu proses. 4. Satu proses tidak perlu mengetahui proses lainnya dalam sistem, jadi hanya tergantung pada masukan dan keluarannya saja. 5. Proses selalu berjalan dalam arti tidak ada awal atau akhir. Jadi selalu siap menjalankan fungsinya atau melakukan pekerjaan tertentu.
•
Pemeliharaan Konsistensi Antara Proses-Proses ď ś
Jumlah aliran data yang masuk dan keluar dari proses harus sama.
ď ś
Jumlah entitas yang terkait pada satu level akan muncul dalam jumlah yang sama untuk level lainnya.
•
Konsep Arus Data 1. Packet of data (Paket data) Bila dua data mengalir dari suatu sumber yang sama ke tujuan yang sama, maka harus dianggap sebagai suatu arus data yang tunggal.
Praktikum DAPL 2010
15
2. Convergen Data Flow (Arus data Mengumpul) Arus data yang mengumpul, yaitu Arus data yang berbeda dari sumber yang berbeda mengumpul ke tujuan yang sama.
•
Evaluasi Ketelitian Diagram Alir Data Sangat penting untuk mengevaluasi diagram alir data tersebut. Beberapa pertanyaan dapat dimunculkan untuk evaluasi tersebut antara lain : 1.
Apakah ada komponen dalam diagram alir data yang belum diberi nama?
2.
Apakah ada data yang disimpan (stored) yang tidak direfer sebagai masukan/keluaran dari satu proses?
3.
Apakah ada proses yang tidak menerima masukan sama sekali?
4.
Apakah ada proses yang tidak memproduksi keluaran sama sekali ?
5.
Apakah masih ada proses yang melayani beberapa tujuan proses ?
6.
Apakah ada data yang disimpan dan tidak pernah direfer?
7.
Apakah masukan data sesuai/releven untuk dijalankan pada proses?
8.
Apakah ada item data yang disimpan berlebihan (lebih dari yang dibutuhkan)?
Praktikum DAPL 2010
16
•
Contoh Kasus: Rental VCD di Video Ezy Investigasi data : o
Kartu Anggota
o
Fotokopi KTP/SIM/STNK
o
Lembar Identitas
o
Nota Peminjaman
o
Data VCD
o
Laporan bulanan (Keterlambatan didenda)
Narasi : o
Calon
anggota
penyewaan
vcd
mengisi
lembar
identitas
dan
memberikan kartu pengenal (SIM/KTP/STNK) o
Petugas memeriksa apakan data tersebut sudah ada pada arsip anggota
o
Jika tidak ada, petugas akan membuat kartu anggota baru dan memberikannya pada anggota
o
Pada saat meminjam anggota harus menunjukan kartu anggota dan memberikan data vcd yang akan dipinjam.
o
Petugas akan mencari dari arsip vcd.
o
Jika vcd tidak ada atau sedang dipinjam maka petugas akan memberitahukan status kosong ke anggota
o
Jika ada maka petugas akan membuat nota peminjaman dan memberikannya ke anggota
o
Pada system dibuat mengenai Login Pendaftaran Member Isi Saldo Member Transaksi Sewa Film Transaksi Pengembalian Film Absensi Karyawan Maintenance Laporan
Praktikum DAPL 2010
17
DFD :
Praktikum DAPL 2010
18
Praktikum DAPL 2010
19
Praktikum DAPL 2010
20
Praktikum DAPL 2010
21
Praktikum DAPL 2010
22
D.
Prosedur Praktikum 1. Baca dengan teliti studi kasus berikut ini! KASUS : PENJUALAN DAN PERSEDIAAN Pelayanan penjualan pada sebuah perusahaan PT ABC dimulai dari kegiatan menerima pesanan pelanggan, melakukan pengecekan apakah pesanan itu diterima atau ditolak oleh bagian marketing, dilanjutkan dengan kegiatan bagian gudang menyiapkan barang pesanan untuk dikirim ke pelanggan, pengiriman barang, menerima retur (bila ada) dari pelanggan, dan akhirnya bagian keuangan akan melakukan penagihan. Penerimaan Pesanan Pelanggan Pelanggan mengirimkan surat pesanannya ke bagian penjualan dan diterima oleh petugas penjualan. Petugas penjualan akan memeriksa pesanan tersebut dengan file persediaan dan file pelanggan. Bila persediaan suatu barang mencukupi maka pesanan akan dilayani dan bila tidak, akan ditolak. Jadi hanya barang-barang yang memenuhi permintaan saja yang boleh diproses menjadi sales order. Sales order diteruskan kepada manajer penjualan untuk dimintakan persetujuannya. Manajer akan memeriksa besarnya piutang dan batas limit kredit pelanggan tersebut. Manajer akan melihat file pelanggan dan file kredit. Kontrol Persediaan Apabila pesanan pelanggan tersebut disetujui maka sales order akan ditandatangani oleh manajer penjualan lalu diteruskan ke administrasi penjualan. Unit ini akan mengadministrasikan sales order tersebut dan membuatkan delivery order. Delivery order diserahkan ke bagian gudang sehingga mereka dapat menyiapkan barang pesanan tersebut, mengepaknya dan menyiapkan surat jalan yang diperlukan untuk mengirim pesanan tersebut. Pesanan akan diantar sendiri oleh unit pengiriman yang berada dibawah kendali bagian gudang.
Praktikum DAPL 2010
23
Penagihan Bila pesanan sudah diterima oleh pelanggan, maka pelanggan akan memeriksa kondisi (yaitu baik atau rusak), jumlah dan jenis pesanan dengan mencocokkan surat pesanannya. Bila ternyata kiriman tersebut terdapat barang yang cacat, maka pelanggan cukup menuliskannya pada surat jalan. Surat jalan dan barang rusak dibawa lagi oleh pengirim untuk diserahkan ke administrasi penjualan, sedangkan barang yang rusak tadi dikembalikan ke gudang. Administrasi penjualan akan mengirimkan copy surat jalan yang sudah dibubuhi tanda terima oleh pelanggan kepada bagian akuntansi. Bagian Keuangan Bagian keuangan akan mencocokkan sales order dari pelanggan, delivery order yang telah ditandatangani oleh pelanggan dan catatan retur dari pelanggan untuk selanjutnya bagian ini membuatkan surat tagihan yang kemudian dikirimkan kepada pelanggan sebagai dasar pembayarannya.
2. Untuk proses bisnis pada kasus perusahaan diatas, gambarkanlah: a. Context DFD b. System DFD level 1 Catatan : Diperbolehkan menambah beberapa asumsi, jika dibutuhkan.
Praktikum DAPL 2010
24
Modul 2 Konsep Perancangan Basis Data A. Tujuan Pratikum a) Tujuan 1. Praktikan mampu merancang basis data yang baik. 2. Praktikan mampu membuat dan menjelaskan hubungan antar data dalam suatu basis data. B. Alat dan Bahan 1. Modul pratikum DAPL 2. Software ER-Win C. Dasar Teori • Pendefinisian ERD merupakan suatu model untuk menjelaskan hubungan antar data dalam basis data berdasarkan objek-objek dasar data yang mempunyai hubungan antar relasi. ERD berguna untuk memodelkan struktur data dan hubungan antar data, untuk menggambarkannya digunakan beberapa notasi dan simbol. Pada dasarnya ada tiga simbol yang digunakan, yaitu : • Entity atau Entitas Entitas merupakan objek yang mewakili sesuatu yang nyata dan dapat dibedakan
dari
sesuatu
yang
lain.
Simbol
dari
entitas
ini
biasanya
digambarkan dengan persegi panjang.
Praktikum DAPL 2010
25
Ada dua jenis entitas yakni : •
Strong entity (entitas kuat) : entitas yang mandiri, yang keberadaannya tidak bergantung pada keberadaan entitas yang lainnya. Entitas kuat selalu memiliki karakteristik yang unik disebut identifier (sebuah atribut tunggal atau gabungan atribut-atribut yang secara unik dapat digunakan untuk membedakannya dari entitas kuat yang lain).
•
Weak entity (entitas lemah) : entitas yang keberadaannya sangat bergantung pada keberadaan entitas yang lainnya. Entitas lemah tidak memiliki
arti
apa-apa
tanpa
kehadiran
entitas
di
mana
mereka
bergantung. Entitas di mana entitas lemah bergantung dinamakan identifying owner. Entitas lemah tidak memiliki identifier sendiri. Secara umum, dalam diagram ER entitas lemah memiliki atribut yang berperan sebagai partial identifier (identifier yang berfungsi secara sebagian). Bagaimana jika terdapat set entitas yang sama muncul beberapa kali dalam satu set ERD, hal ini harus dihindari dikarenakan:
•
•
Untuk menghindari redundancy
•
Menghemat penyimpanan (storage) data
•
Mengurangi efektifitas dan kecepatan akses
•
Untuk menghindari terjadinya asinkronisasi data pada saat diupdate Atribut
Setiap entitas pasti mempunyai elemen yang disebut atribut yang berfungsi untuk mendeskripsikan karakteristik dari entitas tersebut. Isi dari atribut mempunyai sesuatu yang dapat mengidentifikasikan isi elemen satu dengan yang lain.
Praktikum DAPL 2010
26
Contoh ERD
Praktikum DAPL 2010
27
•
Simbol Kardinalitas
Interpretasi
Contoh
Contoh
Kardinalitas
Minimum
Maksimum
1
1
Tepat satu
Notasi Grafis
(satu dan hanya satu ) atau
Nol atau satu
0
1
Satu atau lebih
1
Banyak (>1)
Nol, satu atau
0
lebih Lebih dari satu
Praktikum DAPL 2010
Banyak (>1)
>1
>1
28
•
Hubungan / Relasi / Kardinalitas Hubungan antara sejumlah entitas yang berasal dari himpunan entitas yang berbeda. Relasi yang terjadi diantara dua himpunan entitas (misalnya A dan B) dalam satu basis data yaitu :
1). Satu ke satu (One to one) Hubungan relasi satu ke satu yaitu setiap entitas pada himpunan entitas A berhubungan paling banyak dengan satu entitas pada himpunan entitas B. 2). Satu ke banyak (One to many) Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B, tetapi setiap entitas pada entitas B dapat berhubungan dengan satu entitas pada himpunan entitas A. 3). Banyak ke banyak (Many to many) Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B.
Praktikum DAPL 2010
29
Beberapa keterangan mengenai relasi :
Relasi satu : •
Entitas 1 to entitas 2 : kardinalitas : one to many dengan detail minimal 0 dan maksimalnya banyak. Dependensi : entitas 1 dan entitas 2 tidak saling ketergantungan.
•
Entitas 2 to entitas 1 : kardinalitas : many to one dengan detail minimal 0 dan maksimalnya satu. Dependensi : entitas 1 dan entitas 2 tidak saling ketergantungan.
Contoh kasus :
Keterangan : tabel Pembeli dan Mobil dengan relasi membeli. Pembeli boleh tidak membeli mobil, tetapi juga boleh membeli banyak mobil. Satu mobil boleh tidak ada yang membeli, tapi seandainya ada yang membeli, maksimal hanya ada satu orang pembeli.
Praktikum DAPL 2010
30
Relasi dua : •
Entitas 3 to entitas 4 : kardinalitas : one to many dengan detail minimal 0 maksimalnya banyak. Dependensi : entitas 3 dan entitas 4
tidak saling
ketergantungan. •
Entitas 4 ke entitas 3 : kardinalitas : many to one dengan detail minimal 1 maksimal
1.
Dependensi
:
entitas
4
dan
entitas
3
tidak
saling
ketergantungan. Contoh kasus :
Keterangan : tabel Dosen dan Mahasiswa dengan relasi perwalian. Satu dosen bisa mempunyai banyak mahasiswa wali, bisa pula tidak punya. Satu mahasiswa harus mempunyai satu dosen wali.
Praktikum DAPL 2010
31
Relasi tiga •
Entitas 5 to entitas 6 dan entitas 6 to entitas 5 : kardinalitas : one to one dengan detail minimal 0 maksimalnya 1. Dependensi : entitas 5 dan entitas 6 tidak saling ketergantungan.
Contoh kasus :
Keterangan : tabel Cowok dan Cewek dengan relasi menikah. Cowok tidak harus menikah, tapi boleh menikah hanya dengan satu cewek. Cewek boleh tidak menikah, tapi boleh menikah hanya dengan satu cowok. Diasumsikan tidak diperbolehkan adanya poligami.
Praktikum DAPL 2010
32
Relasi empat •
Entitas 7 to entitas 8 : kardinalitas : one to one dengan detail minimal 0 maksimalnya 1. Dependensi : entitas 7 dan entitas 8
tidak saling
ketergantungan. •
Entitas 8 ke entitas 7 : kardinalitas : one to one dengan detail minimal 1 maksimal
1.
Dependensi
:
entitas
8
dan
entitas
7
tidak
saling
ketergantungan. Contoh kasus :
Keterangan : tabel Pegawai dan Departemen dengan relasi mengepalai. Pegawai tidak
harus
mengepalai
departemen,
tetapi
hanya
boleh
mengepalai
satu
departemen saja. Masing-masing departemen harus mempunyai satu orang atasan.
Praktikum DAPL 2010
33
Relasi lima •
Entitas 9 to entitas 10 : kardinalitas : many to many dengan detail minimal 0 maksimalnya banyak. Dependensi : entitas 9 dan entitas 10 tidak saling ketergantungan.
•
Entitas 10 ke entitas 9 : kardinalitas : many to many dengan detail minimal 1 maksimal banyak. Dependensi : entitas 10 dan entitas 9 tidak saling ketergantungan.
Contoh kasus :
Keterangan : tabel Mata Kuliah dan Mahasiswa dengan relasi diambil. Mata kuliah tidak harus diambil oleh mahasiswa, tapi boleh diambil oleh banyak mahasiswa. Satu mahasiswa minimal mengambil satu mata kuliah dan boleh mengambil banyak mata kuliah. Namun pada kenyataannya, relasi many to many akan dijadikan sebuah tabel baru.
Praktikum DAPL 2010
34
Relasi tujuh •
Entitas 13 to entitas 14 : kardinalitas : one to many dengan detail minimal 0 maksimalnya banyak. Dependensi : entitas 13 menjadi parent dari entitas 14.
•
Entitas14 ke entitas 13 : kardinalitas : many to one dengan detail minimal 1 maksimal 1. Dependensi : entitas 14 tergantung kepada entitas 13.
Contoh kasus :
Keterangan : tabel Customer dan Asuransi dengan relasi mempunyai. Customer boleh tidak mempunyai asuransi, dan boleh mempunyai banyak asuransi. Satu asuransi harus dimiliki oleh satu orang customer. Metodologi Desain ERD 1. Identifikasi Entitas 2. Tentukan Adanya Relationship 3. Gambar ERD 4. Tentukan Kardinalitas dalam ERD 5. Definisikan Kunci Primer 6. Sesuaikan Gambar ERD berdasarkan Kunci Primer Contoh Kasus Pembuatan ERD Gambarkan ERD untuk perusahaan asuransi mobil yang costumer
–
costumernya masing-masing memiliki satu atau lebih mobil. Setiap mobil memiliki 0 sampai banyak catatan kecelakaan. Serta gambarkan tabel-tabel untuk ERD!
Praktikum DAPL 2010
35
ERD :
Tabel untuk ERD :
D. Prosedur Praktikum 1. Bacalah soal yang terdapat dalam modul, lalu lakukanlah analisa terhadap soal tersebut! Perusahaan Penerbangan Untuk mengatur penerbangan yang dilakukan dan meningkatkan pelayanan
terhadap
pelanggannya,
sebuah
perusahaan
penerbangan
mengembangkan suatu sistem administrasi penerbangan. Pelanggan dapat melakukan pemesanan tiket secara online melalui internet untuk penerbangan tertentu. Data-data yang perlu diberikan oleh pelanggan tersebut antara lain adalah nama, alamat dan nomor telepon yang dapat dihubungi, selain itu secara otomatis pelanggan mendapatkan nomor pelanggan dari sistem.
Praktikum DAPL 2010
36
Data-data pelanggan diatas juga dapat dimasukkan oleh petugas administrasi apabila pelanggan datang langsung ke perusahaan penerbangan tersebut. Selain data pelanggan, tentu saja perlu diketahui data pemesanan yaitu nomor pemesanan, tanggal pemesanan dan total biaya pemesanan. Petugas
administrasi
juga
dapat
mengubah
isi
data
pelanggan
dan
pemesanan tersebut. Setelah data pelanggan dan data pemesanan diperiksa, petugas administrasi lalu kemudian menetapkan kembali harga tiket berdasarkan kelas tiket yang didapatkan pelanggan secara otomatis berdasarkan lamanya pemesanan. Kelas tiket ini akan menentukan besaran diskon dari harga tiket. Semakin lama pemesanan dilakukan maka diskon harga tiket akan semakin besar. Untuk satu pemesanan yang dilakukan oleh pelanggan dapat terdiri dari beberapa tiket. Sebaliknya untuk satu tiket dengan tujuan tertentu bisa terdapat pada beberapa pemesanan yang berbeda. Petugas
administrasi
lalu
meminta
persetujuan
dari
manager
administrasi. Manager administrasi baru memberikan persetujuan setelah melihat laporan resume pemesanan pelanggan melalui sistem. Harga tiket tersebut kemudian diberitahukan kepada pelanggan melalui telpon dan email. Apabila pelanggan setuju dengan harga tersebut, petugas administrasi mengupdate data pemesanan kemudian mengirimkan tagihan beserta tiketnya kepada pelanggan. Pelanggan dapat membayar tagihan tersebut secara langsung ketika menerima tiket atau sebelumnya melalui kartu kredit secara online. Setelah pembayaran dilakukan, petugas administrasi memberikan konfirmasi kepada pelanggan
mengenai
status,
dan
jadwal
penerbangan,
sekaligus
mengirimkan tiket perjalanannya.
Praktikum DAPL 2010
37
Setelah penumpang pesawat melakukan check - in di bandara maka mereka akan mendapatkan Boarding Pass yang merupakan pengaturan tempat duduk didalam pesawat. Untuk satu tiket penerbangan dengan beberapa
kali
transit
maka
penumpang
tersebut
akan
mendapatkan
beberapa boarding pass yang akan didapat di masing-masing bandara transitnya. Dalam setiap penerbangan, petugas administrasi perusahaan penerbangan
akan
memeriksa
tiket
dan
identitas
dari
penumpang
berdasarkan data pelanggan yang telah ada di sistem. Apabila identitas penumpang tersebut benar maka petugas administrasi akan memberikan boarding pass atau pengaturan tempat duduk dengan memberikan kode tempat duduk yang menunjukkan nomor tempat duduk yang ada dipesawat dan kode penerbangan tertentu. 2. Dari analisa yang telah dilakukan, kemudian tentukanlah entitas dan atribut! 3. Kemudian tentukanlah relationship yang terjadi dan kemudian gambarkanlah ERD-nya! 4. Setelah itu tentukan kardinalitas yang terjadi dalam relationship tersebut! 5. Lalu tentukanlah primary key dari entitas yang ada! 6. Untuk selanjutnya menyesuaikan gambar ERD yang telah dibuat berdasarkan primary key yang telah didefinisikan!
Praktikum DAPL 2010
38
Modul 3 Membuat Database Menggunakan PhpMyAdmin A. Tujuan Praktikum Tujuan umum : 1. Praktikan mampu menggunakan Software PhpMyAdmin 2. Praktikan mampu memahami mengenai dasar – dasar perancangan basis data menggunakan PhpMyAdmin. 3. Praktikan mampu membuat basis data dengan menggunakan PhpMyAdmin. Tujuan khusus : 1. Dapat menggunakan Software PhpMyAdmin yaitu dapat merancang basis data beserta hubungan antar basis data tersebut. 2. Mampu
memahami
mengenai
dasar-dasar
perancangan
basis
data
menggunakan PhpMyAdmin. B. Alat dan Bahan 1. XAMPP 2. PhpMyAdmin
1. Mengenal PhpMyAdmin Pada dasarnya, mengelola database dengan MySQL harus dilakukan dengan cara mengetikkan baris-baris perintah yang sesuai (command line) untuk setiap maksud tertentu. Jika Anda ingin membuat database, ketikkan baris perintah yang sesuai untuk membuat database. Jika anda ingin mengahapus tabel, ketikkan baris perintah yang sesuai untuk menghapus tabel. Hal tersebut tentu saja sangat menyulitkan karena Anda harus hafal dan mengetikkan perintahnya satu pers satu. Praktikum DAPL 2010
39
Saat ini banyak sekali perangkat lunak yang dapat dimanfaatkan untuk mengelola database dalam MySQL, salah satunya adalah PhpMyAdmin. Dengan PhpMyAdmin, kita dapat membuat database, membuat table, mengisi data, dan lain-lain dengan mudah , tanpa harus hafal baris perintahnya. Ketika
Anda
menginstal
XAMPP,
secara
otomatis
akan
terinstal
pula
PhpMyAdmin di computer Anda. Untuk menjalankan PhpMyAdmin, lakukankanlah langkah-langkah berikut: 1. Aktifkan web server Apache dan MySQL dari control panel XAMPP. 2. Jalankan browser Anda, misalnya Mozilla Firefox, lalu ketikkan alamat web berikut: http://localhost/PhpMyAdmin/ pada address bar, kemudian tekan enter. 3. Jika muncul tampilan mirip seperti di bawah ini, berarti PhpMyAdmin sudah berhasil dijalankan.
4. Selanjutnya
Anda
dapat mengubah tampilan
PhpMyAdmin
menjadi
berbahasa Indonesia, yaitu dengan memilihnya pada kotak pilihan Language (lihat bagian yang dilingjari pada gambar dibawah ini). Namun dalam modul ini penulis memilih menggunakan bahasa Inggris.
Praktikum DAPL 2010
40
2. Membuat Database Database digunakan untuk menyimpan dan mengorganisasikan data – data yang kita gunakan dalam halaman web. Misalkan kita ingin membuat sebuah database bernama datasekolah untuk menyimpan data sekolah Anda, maka lakukanlah langkah berikut: 1. Jalankan web server Apache dan MySQL dari control panel XAMPP, kemudian jalankan PhpMyAdmin. 2. Ketik kata “datasekolah� pada kotak isian Create new database (lihat bagian yang dilingkari pada gambar dibawah ini). Kemudian klik tombol Create.
Praktikum DAPL 2010
41
3. Setelah berhasil, database bernama datasekolah akan langsung terdaftar dalam kotak pilihan Database di panel sebelah kiri PhpMyAdmin akan langsung membuka database datasekolah tersebut pada panel sebelah kanan (lihat gambar dibawah ini)
4. Jika Anda inigin menghapus database tersebut, pilih lah nama databasenya pada kotak pilihan Database dalam panel sebelah kiri, lalu klik tombol Drop pada panel sebelah kanan.
3. Membuat Tabel Setelah membuat database, selanjutnya Anda dapat membuat beberapa table dalam database tersebut. Tabel dalam database akan terdiri beberapa kolom (field). Dan setiap baris data yang dimasukkan ke dalam table, disebut dengan record. Perhatikanlah contoh tabel di bawah ini. Judul Buku
Kualitas
Level
Penulis
SGS Pemograman Web Database
Sangat Bagus
Pemula
Arief Ramadhan
Dengan PHP & MySQL
Praktikum DAPL 2010
42
SGS Pemrograman Web Database
Lumayan
Pemula
Arief Ramadhan
Bagus
Pemula
Arief Ramadhan
HTML, CSS dan Java SGS Pengenalan Jaringan Komputer
Tabel di atas terdiri atas empat buah field bernama Judul Buku, Kualitas, Level dan Penulis. Tabel tersebut juga terdiri atas 3 buah baris data atau record. Masing-masing field akan mempunyai tipe data tertentu untuk menentukan datadata seperti apa saja yang dapat dimasukka ke dalam field tersebut. Ada banyak sekali tipe data untuk field dalam MySQL. Namun, yang paling sering digunakan adalah tipe data VARCHAR untuk data bertipe string, dan INT untuk bilangan bulat. Anda juga dapat menggunakan tipe data TEXT untuk menyimpan data string yang sangat panjang, tipe data DATE untuk menyimpan data-data penanggalan, serta tipe data DOUBLE untuk menyimpan data bilangan yang besar dan mengandung angka decimal Misalkan dalam database datasekolah akan dibuat sebuah table bernama datasiswa yang terdiri atas tiga kolom (field), yaitu no_induk, nama_siswa, dan aamat_siswa, maka lakukanlah langkah-langka berikut: 1. Jalankan web server Apache dan MySQL dari control panel XAMPP, kemudian jalankan PhpMyAdmin. 2. Pilih database bernama datasekolah pada kotak pilihan Database pada panel sebelah kiri. Jika database tersebut tidak ada dalam pilihan, buatlah kembali database tersebut. 3. Ketika muncul tampilan seperti dibawah ini, ketiklah kata “datasiswa” pada kotak isian Name, dan ketiklah angka “3” pada kotak isian Fields, kemudian klik tombol Go.
Praktikum DAPL 2010
43
4. Setelah berhasil, akan muncul tampilan seperti dibawah ini.
5. Selanjutnya
kita
akan
membuat
kolom-kolom
(field-field)
bagi
tabel
datasiswa. Pertama, kita akan menambahkan field bernama no_induk. Masukkan kata “no_induk� pada kotak isian Field baris pertama 6. Misalkan field ini nantinya akan digunakan untuk menyimpan data nomor induk siswa yang berupa angka-angka bilangan bulat. Oleh karena itu, pilihlah INT pada bagian Type. 7. Geserlah tampilan browser Anda ke kanan. Kemudian pada bagian seperti gambar dibawah ini, aktifkan pilihan pada bagian yang dilingkari. Hal ini digunakan untuk menandakan bahwa field no_induk adalah primary key bagi tabel datasiswa. Primary key atau kunci primer adalah field kunci yang menyebabkan setiap baris data (record) yang dimasukkan kedalam suatu tabel menjadi unik. Praktikum DAPL 2010
44
Hal ini juga menunjukkan bahwa setiap data dalam field no_induk adalah unik karena tidak ada siswa yang memiliki nomor induk yang sama.
8. Geserlah kembali tampilan browser
Anda ke kiri. Selanjutnya kita akan
menambahkan field bernama nama_siswa. Masukkan kata “nama_siswa� pada kotak isian Field baris kedua. 9. Misalkan field ini nantinya akan digunakan untuk menyimpan data nama siswa yang bertipe string. Oleh karena itu, pilihlah VARCHAR pada bagian Type. Jika Anda menggunakan tipe VARCHAR, tentukan panjang maksimum string yang boleh dimasukkan pada bagian Length/Values. Misalkan nama siswa di sekolah Anda tidak ada yang melebihi 25 karakter, masukkanlah angka 25. 10.Ulangi langkah 8 dan 9 untuk filed alamat_siswa pada baris ketiga. Aturlah tipenya menjadi VARCHAR dan panjang 50. 11.Kemudian
Praktikum DAPL 2010
tekan
tombol
Save
untuk
menyimpan
tabel
tersebut.
45
12.Jika berhasil akan muncul tampilan seperti dibawah ini. Jika gagal, Anda dapat mengulanginya dari langkah no.1.
4. Menambah Record Setelah
membuat
tabel
datasiswa,
selanjutnya
kita
dapat
menambahkan
beberapa baris data (recor) ke dalam tabel itu.Misalkan kita ingin menambahkan record-record berikut ke dalam tabel datasiswa. No_induk
nama_siswa
alamat_siswa
15
Aditya Nugroho
Jakarta
17
Favorisen Rosyking Lumbanraja
Lampung
18
Hendra Rahmawan
Sukabumi
Untuk menambahkan record-record tersebut diatas ke dalam tabel datasiswa, lakukanlah langkah-langkah berikut: 1. Jalankan web server Apache dan MySQL dari control panel XAMPP, kemudian jalankan PhpMyAdmin. 2. Pilih database bernama datasekolah pada kotak pilihan Database pada panel sebelah kiri. 3. Kemudian klik nama tabel bernama datasiswa pada panel sebelah kiri (lihat gambar dibawah ini).
Praktikum DAPL 2010
46
4. Ketika terbuka tabel datasiswa seperti gambar di bawah ini, klik Insert (lihat bagian yang dilingkari).
5. Kemudian ketika muncul tampilan seperti dibawah ini, masukkan isi record pertama pada setiap kotak isian Value. Yaitu no_induk = 15, nama_siswa = Aditya Nugroho dan alamat_siswa = Jakarta. 6. Selanjutnya klik tombol Go
Praktikum DAPL 2010
.
47
7. Ulangi langkah 4,5,dan 6 untuk record kedua dan ketiga. Nama siswa bernama
Favorisen
Rosyking
Lumbanraja
akan
terpotong
karena
panjangnya lebih dari 25 karakter. 8. Setelah seluruh data selesai dimasukkan, klik Browse
untuk
melihat isi tabel datasiswa.
5. Mengubah Record PhpMyAdmin menyediakan fasilitas untuk mengubah atau mengedit atau mengedit record dengan mudah. Misalnya, kita ingin mengubah data alamat siswa bernama Favorisen Rosyking Lumbanraja, yang tadinya beralamat di “Lampung” menjadi di “Bogor”.
Praktikum DAPL 2010
48
Untuk melakukannya, ikutilah langkah-langkah berikut: 1. Jalankan web server Apache dan MySQL dari control panel XAMPP, kemudian jalankan PhpMyAdmin. 2. Pilih database bernama datasekolah pada kotak pilihan Database pada panel sebelah kiri. 3. Kemudian klik nama tabel bernama datasiswa pada panel sebelah kiri. 4. Lalu klik Browse untuk melihat isi tabel datasiswa. 5. Setelah isi tabel datasiswa ditampilkan, klik ikon bergambar pensil di sebelah kiri record bernama Favorisen Rosyking Lumbanraja (lihat gambar di bawah ini).
6. Ganti kata Lampung pada alamat_siswa menjadi Bogor.
7. Lalu klik tombol Go. Kemudian klik Browse untuk melihat isi tabel datasiswa. Praktikum DAPL 2010
49
6. Menghapus Record Dengan PhpMyAdmin, kita dapat menghapus sebuah record dengan sekali saja. Misalkan kita ingin, menghapus record siswa bernama Henra Rahmawan, maka lakukanlah langkah berikut: 1. Jalankan web server Apache dan MySQL dari control panel XAMPP, kemudian jalankan PhpMyAdmin. 2. Pilih database bernama datasekolah pada kotak pilihan Database di panel sebelah kiri. 3. Kemudian klik nama tabel bernama datasiswa pada panel sebelah kiri. 4. Laluk klik Browse untuk melihat isi tabel datasiswa. 5. Setelah isi tabel datasiswa ditampilkan, klik ikon bergambar silang di sebelah kiri record bernama Hendra Rahmawan (lihat gambar di bawah ini).
6. Ketika muncul jendela konfirmasi seperti di bawah ini, klik tombol OK
7. Menghapus Tabel Selain menghapus record, Anda juga dapat menghapus tabel dengan mudah.
Praktikum DAPL 2010
50
Misalkan Anda telah membuat sebuah tabel baru bernama tabelcoba, kemudian Anda ingin menghapusnya, maka lakukanlah langkah berikut: 1. Jalankan web server Apache dan MySQL dari control panel XAMPP, kemudian jalankan PhpMyAdmin. 2. Pilih database bernama datasekolah pada kotak pilihan Database di panel sebelah kiri. 3. Buatlah sebuah tabel baru bernama tabelcoba. 4. Setelah selesai dibuat, kemudian klik nama tabel bernama tabelcoba tersebut pada panel sebelah kiri. 5. Lalu klik Drop untuk menghapus tabel tersebut. 6. Ketika muncul jendela konfirmasi seperti dibawah ini, klik tombol OK.
Latihan Kerjakan soal dibawah ini untuk lebih menguasai materi yang sudah diberikan : 1. Buatlah sebuah databse baru bernama databasecoba.Kemudian buatlah sebuah tabel baru
di dalamnya dengan nama datamatapelajaran, yang
terdiri atas field kode_matpel, nama_matpel, dan guru. Atur agar field kode_matpel sebagai Primary Key. Isilah tabel tersebut dengan record-record berikut :
Praktikum DAPL 2010
51
kode_matpel
nama_matpel
guru
1
Matematika
Muslikhah Fajriyati
2
Fisika
Ellysa Kurniasari
3
Kimia
Hendra Saputra
2. Ubahlah guru mata pelajaran Kimia menjadi Rizki Trianto Rakhim! 3. Cobalah untuk menghapus salah satu record mata pelajaran. Kemudian cobalah untuk menghapus database bernama databasecoba dan tabel datamatapelajaran! 4. Buatlah sebuah database baru bernama databasecobalagi. Kemudian buatlah sebuah tabel barudidalamnya dengan nama datakaryawan, yang terdiri atas field kode_kar, nama_kar, gaji dan
kode_cab. Atur agar field
kode_kar sebagai Primary Key. Isilah tabel tersebut dengan record-record berikut : kode _kar
nama_kar
Gaji
kode_cab
11
Andi
1500
A
21
Budi
2500
B
31
Cici
1500
A
41
Didi
3000
C
51
Fifi
5000
B
5. Ubahlah gaji Andi menjadi 7500! 6. Tambahkan sebuah karyawan baru bernama Gigi, dengan kode_kar = 71, gaji = 5000, dan kode_cab =A. 7. Hapuslah karyawan yang bernama Fifi! 8. Hapuslah tabel bernama datakaryawan tersebut!
Praktikum DAPL 2010
52
MODUL 4 KONEKSI DATABASE DENGAN INTERFACE SISTEM A. Tujuan Praktikum 1. Praktikan dapat mengkoneksikan PHP ke MySQL 2. Praktikan dapat membuat aplikasi yang berbasis web beserta koneksi database 3. Praktikan dapat mengambil dan menampilkan hasil query ke halaman web B. Alat dan Bahan : 1. PhpMyAdmin 2. XAMPP 3. Adobe Dreamweaver
1. Koneksi dari PHP ke MYSQL Setelah
Anda
membuat
database
dalam
MySQL,
selanjutnya
Anda
dapat
memanfaatkan databse tersebut menggunakan PHP. Sebelum Anda memanfaatkan database, tentu saja Anda harus terhubung (terkoneksi) dahulu dengan database tersebut. Lalu bagaimana caranya untuk membuat koneksi antara kode program PHP dengan database di MySQL.
Praktikum DAPL 2010
53
PHP memiliki fungsi mysql_connect() yang dapat digunakan untuk membangun koneksi dengan database mySQL. Fungsi mysql_connect() memiliki aturan penulisan berikut: mysql_connect(namahost, namauser, password) Bagian namahost diisi dengan sebuah string yang merupakan nama host penyedia koneksi MySQL. Biasanya nama host digunakan adalah localhost. Bagian namauser diisi dengan sebuah string yang merupakan nama pengguna (user) MySQL yang sudah terdaftar. Biasanya nama user yang digunakan adalah root. Bagian password diisi dengan sebuah string yang merupakan password bagi user yang telah Anda tuliskan pada bagian namauser. Jika user yang dimaksud tidak memiliki password, isilah bagian ini dengan dua buah tanda kutip saja. Jika koneksi gagal dilakukan, fungsi mysql_connect() akan mengembalikan nilai FALSE. Contoh penulisan fungsi mysql_connect() adalah sebagai berikut: $hasil=mysql_connect(„localhost‟ , „root‟, „ „ ) ;
Anda dapat melihat atau menambahkan sebuah user baru dengan cara mengklik tab Privileges. Lalu tambahkan user baru dengan klik Add a new user lalu isikan user, passwordnya, dan ketentuan lainnya sesuai kebutuhan Anda. Praktikum DAPL 2010
54
Setelah koneksi berhasil dibangun, selanjutnya Anda harus memilih database yang akan Anda gunakan dalam koneksi tersebut. Fungsi yang digunakan adalah fungsi mysql_select_db(). Fungsi ini akan mengembalikan nilai TRUE jika berhasil dan FALSE jika salah.
Praktikum DAPL 2010
55
Aturan penulisan fungsi mysql_select_db() adalah sebagai berikut: Mysql_select_dbl(namadatabase); Contoh: Mysql_select_dr(â&#x20AC;&#x17E;datasekolahâ&#x20AC;&#x;) ; Untuk berlatih membangun koneksi serta memilih database, lakukanlah langkahlangkah berikut: 1. Jalankan Notepad. 2. Ketik baris-baris teks dibawah ini. (Ketiklah persis seperti yang terlihat di modul.) <HTML> <HEAD> <TITLE> Latihan membangun koneksi </TITLE> </BODY> <?PHP //konfigurasi nama host, nama user dan password $Host = 'localhost'; $User = 'root'; $Pass = ''; /*Membangun koneksi. Bagian perintah or die akan dijalankan jika koneksi gagal dilakukan*/ $hasil = mysql_connect ($Host, $User, $Pass) Or die ("koneksi gagal ! ! ! "); $Namadb = 'datasekolah' ; $db=mysql_select_db($Namadb) ; If ($db==FALSE) { Praktikum DAPL 2010
56
Echo "<BR><H1>"; Echo "database gagal dipilih"; Echo "</H1>"; } else { Echo "<BR><H1>"; Echo "database berhasil dipilih"; Echo "</H1>"; } ?> </BODY> </HTML> 3. Kemudian
simpanlah
dengan
nama
â&#x20AC;&#x153;latihan12.phpâ&#x20AC;?
pada
folder
LatihanPHPdanMySQL. 4. Jalankan web server Apache dan MySQL menggunakan control panel XAMPP. 5. Jalankan browser Anda (misalnya Mozilla Firefox), lalu ketikkan alamat http://localhost/LatihanPHPMySQL/latihan12.php dalam Address Bar, tekan Enter, kemudian amatilah hasilnya.
Praktikum DAPL 2010
57
6. Sekarang cobalah untuk mengubah kode program di atas. Ubah nilai variabel $host
sehingga
menjadi
$host=‟hostku‟.
Kemudian
simpan
kembali
dengan nama latihan12.php. Jalankan browser Anda (misalnya Mozilla Firefox),
lalu
ketikkan
alamat
http://locahost/LatihanPHPdanMySQL/latihan12.php dalam adress Bar, tekan Enter, kemudian amatilah hasilnya.
2. Menjalankan SQL dari PHP Perintah SQL atau biasa disebut Query, juga dapat dijalankan/ dieksekusi dari kode program
PHP.
PHP
memiliki
menjalankan/mengeksekusi
fungsi
sebuah
Query.
bernama Fungsi
mysql_query() mysql_query(
untuk )
akan
mengembalikan nilai FALSE jika query tidak berhasil dieksekusi. Fungsi mysql_query( ) memiliki aturan penulisan sebagai berikut : mysql_query(querynya) Contoh : $hasil=mysql_query (“SELECT * FROM datasiswa”) ; Jika query yang Anda eksekusi adalah perintah INSERT, UPDATE, atau DELETE serta query tersebut berhasil dieksekusi, selanjutnya Anda dapat menggunakan fungsi bernama mysql_affected_rows() untuk mengetahui berapa banyak record yang terpengaruh oleh query tersebut. Praktikum DAPL 2010
58
Contoh : $banyaknya=mysql_affected_rows ( ) ; Jika query yang Anda eksekusi adalah perintah SELECT serta query tersebut berhasil dieksekusi, selanjutnya Anda dapat menggunakan sebuah fungsi bernama mysql_num_rows() untuk mengetahui berapa banyak record yang berhasil diambil oleh perintah SELECT tersebut. Contoh : $hasil=mysql_query(â&#x20AC;&#x153;SELECT * FROM datasiswaâ&#x20AC;?) ; $banyaknya=mysql_num_rows($hasil) ; Untuk
berlatih
mengeksekusi
query
menggunakan
mysql_query(),
mysql_affected_rows() dan mysql_num_rows(), lakukanlah langkah-langkah berikut : 1. Jalankan Notepad 2. Ketik baris-baris di bawah ini, <HTML> <HEAD> <TITLE>Latihan mengeksekusi query</TITLE> </BODY> <?PHP //konfigurasi nama host, nama user dan password $Host = 'localhost'; $User = 'root'; $Pass = ''; /*Membangun koneksi. Bagian perintah or die akan dijalankan jika koneksi gagal dilakukan*/ $hasil = mysql_connect ($Host, $User, $Pass) Or die ("koneksi gagal ! ! ! "); Praktikum DAPL 2010
59
$Namadb = 'datasekolah' ; //memilih database $db=mysql_select_db($Namadb) ; //perintah SELECT $query="SELECT * FROM datasiswa"; $hasil=mysql_query ($query); $banyaknya= mysql_num_rows ($hasil) ; echo "banyaknya hasil perintah SELECT adalah ="; echo $banyaknya ; echo "<BR><HR>"; //perintah INSERT $query="INSERT INTO datakelas (kode_kelas,nama_kelas, kapasitas) VALUE ('KBR', 'Kelas Baru', 35) " ; $hasil=mysql_query($query); $banyaknya=mysql_affected_rows() ; echo "banyaknya record yang terpengaruh adalah =" ; echo $banyaknya ; echo "<BR><HR> " ; ?> </BODY> </HTML> 3. Kemudian
simpanlah
dengan
nama
â&#x20AC;&#x153;latihan13.phpâ&#x20AC;?
pada
folder
LatihanPHPdanMySQL. Praktikum DAPL 2010
60
4. Jalankan web server Apache dan MySQL menggunakan control panel XAMPP. 5. Jalankan browser Anda (misalnya Mozilla Firefox), lalu ketikkan alamat http://localhost/LatihanPHPdanMySQL?latihan13.php
dalam
Address
Bar,
tekan Enter, kemudian amatilah hasilnya. 6. Dengan menggunakan PhpMyAdmin, perhatikan pula bahwa pada tabel datakelas dalam database datasekolah telah ditambahkan sebuah record baru.
3. Mengambil dan Menampilkan Hasil Query Setelah
query
berisi
perintah
SELECT
berhasil
dijalankan
menggunakan
mysql_query(), selanjutnya Anda dapat mengambil record-record yang dihasilkan dari perintah SELECT tersebut untuk kemudian ditampilkan ke dalam halaman web. PHP memiliki beberapa fungsi untuk mengambil hasil query dan yang paling sering digunakan adalah : ď&#x201A;ˇ
mysql_fetch_row( )
ď&#x201A;ˇ
mysql_fetch_array( )
ď&#x201A;ˇ
mysql_result( )
Fungsi mysql_fetch_row( ) akan mengambil sebuah record dari hasil query, serta mengubahnya menjadi berbentuk array. Banyaknya elemen array disesuaikan dengan banyaknya field. Masing-masing elemen array mewakili masing-masing field. Indeks elemen array-nya adalah berupa angka dimulai dari 0. Praktikum DAPL 2010
61
Contoh penggunaan fungsi ini adalah : / / query nya : $query = “SELECT * FROM datasiswa”; / /eksekusi query : $hasil=mysql_query ($query) ; / /selama masih bisa diambil record-nya While ($rec = mysql_fetch_row ($hasil) ) { / / tampilkan hasil / /isi field no_induk echo $rec [0]. “
“;
/ /isi field nama_siswa echo $rec [1]. “
“;
/ /isi field alamat_siswa echo $rec [2]; } Fungsi mysql_fetch_array( ) memiliki kegunaan yang hamper sama dengan mysql_fetch_array( ). Fungsi ini akan mengambil sebuah record dari hasil query, serta mengubahnya menjadi berbentuk array. Banyaknya elemen array disesuaikan dengan banyaknya field. Masing- masing array mewakili masing – masing field. Namun, Indeks dari elemen array-nya dapat langsung berupa nama field-nya.
Praktikum DAPL 2010
62
Contoh penggunaan fungsi ini adalah : / / query nya : $query = “SELECT * FROM datasiswa “; / / eksekusi query $hasil=mysql_query ($query) ; / / selama masih bisa diambil record-nya While ($rec = mysql_fetch_array ($hasil) ) { / / tampilkan hasil / / isi field no_induk echo $rec[„no_induk‟]. “
“;
/ / isi field no_siswa echo $rec[„no_siswa‟]. “
“;
/ / isi field alamat_siswa echo $rec[„alamat_siswa‟] ; Fungsi mysql_result( ) digunakan untuk mengambil tepat satu nilai data saja. Fungsi ini biasanya digunakan untuk mengambil hasil eksekusi query yang berisi fungsi agresi. Contoh penggunaaan fungsi ini adalah : / /query nya : $query =”SELECT SUM (kapasitas) FROM datakelas “ ; / /eksekusi query : $hasil=mysql_query ($query) ; $total = mysql_result ($hasil, 0, . 0) ; echo “Total kapasitas kelasnya adalah = “; echo $total ; Praktikum DAPL 2010
63
Untuk berlatih mengambil dan menampilkan hasil query, lakukanlah langkahlangkah berikut : 1. Jalankan Notepad 2. Ketik baris-baris teks di bawah ini. <HTML> <HEAD> <TITLE> Latihan mengambil dan menampilkan hasill query </TITLE> </HEAD> <BODY> <?PHP / / konfigurasi nama host, nama user dan password $Host = „localhost‟ ; $User = „ root‟ ; $Pass = „ „ ; /*Membangun koneksi. Bagian perintah or die akan dijalankan jika koneksi gagal dilakukan*/ $hasil = mysql_connect ($Host, $User, $Pass) or die (“koneksi gagal ! ! ! “) ; $Namadb = „datasekolah‟ ; / /memilih database $db=mysql_select_db ($Namadb) ; / / perintah SELECT $query = “SELECT * FROM datasiswa “ ; $hasil=mysql_query ($query) ; $banyaknya=mysql_num_rows ($hasil) ; Praktikum DAPL 2010
64
Echo “Diambil dengan mysql_fetch_rows ( ) : „ ; Echo “<BR>” ; / / selama masih bisa diambil record-nya While ($rec = mysql_fetch_row ($hasil) ) { / / tampilkan hasil / / isi field no_induk echo $rec [0]. “
“;
/ / isi field nama_siswa echo $rec [1]. “
“;
/ / isi field alamat_siswa echo $rec [2]; Echo “<BR>” ; } echo “<HR>” ; $hasi=mysql_query (query) ; echo “Diambil dengan mysql_fetch_array ( ) : “ ; echo “ <BR> “ ; / / selama masih bisa diambil record-nya While ($rec = mysql_fetch_array ($hasil) )
{
/ / tampilkan hasil / / isi field no_induk echo $rec [no_induk‟]. “
“;
/ / isi field nama_siswa echo $rec [„ nama_siswa‟]. “
Praktikum DAPL 2010
“;
65
/ / isi field alamat_siswa echo $rec [ „ alamat_siswa „ ] ; echo “<BR>” ; } echo “<HR> ; echo “Contoh dengan mysql_result ( )
: “;
echo “<BR> “ ; / / query nya : $query=”SELECT SUM (kapasitas) FROM datakelas “ ; / / eksekusi query : $hasil=mysql_query ($query) ; $total = mysql_result ($hasil, 0, 0) ; echo “Total kapasitas kelasnya adalah = “ ; echo $total ; ?> </BODY> </HTML>
3. Kemudian
simpanlah
dengan
nama
“latihan
14.php”
pada
folder
LatihanPHPdanMySQL. 4. Jalankan web server Apache dan MySQL menggunakan control panel XAMPP. 5. Jalankan browser Anda (misalnya Mozilla Firefox), lalu ketikkan alamat http://localhost/LatihanPHPdanMySQL/latihan14.php
dalam Address Bar,
tekan Enter, kemudian amatilah hasilnya. Praktikum DAPL 2010
66
4.
Studi Kasus 1 : Membuat Halaman Input Data Siswa Baru
Kali ini kita akan memanfaatkan databse datasekolah dan tabel datasiswa untuk membuat halaman web yang dapat digunakan untuk menginput data siswa baru. Ikutilah langkah-langkah berikut : 1. Buatlah
sebuah
folder
baru
bernama
Studikasus1
pada
folder
C:\apachefriends\xampp\htdocs di computer Anda. Folder tersebut akan digunakan utuk menyimpan file-file yang kita buat dan gunakan dalam studi kasus. 2. Jalankan Notepad. 3. Ketik baris-baris teks di bawah ini. (Ketiklah persis seperti yang terlihat di buku. <HTML> <HEAD> <TITLE> Halaman Input Data Siswa Baru </TITLE> </HEAD> <BODY> <FORM ACTION =”inputdata.php” METHOD=”post”> Nomor Induk : <BR> <INPUT TYPE=”text” NAME=”noinduk”><BR> Nama : <BR> <INPUT TYPE =”text” NAME=”namanya”><BR> Alamat : <BR> <INPUT TYPE = “text” NAME=”alamatnya”><BR> <INPUT TYPE=”submit” VALUE=”Inputkan”> <INPUT Type=”reset” VALUE=”Ulang”> </FORM> </BODY> </HTML> Praktikum DAPL 2010
67
4. Kemudian simpanlah dengan nama “indek.php” pada folder Studikasus1 yang sudah pernah Anda buat sebelumnya. 5. Jalankan Notepad. 6. Ketik baris-baris teks dibawah ini. (Ketiklah persis seperti yang terlihat di modul.) <HTML> <HEAD> <TITLE> Halaman Hasil Data Siswa Baru <TITLE> </HEAD> <BODY> <?PHP $Host = „localhost‟ ; $User = „ root „ ; $Pass = „ „ ; $Konek = mysql_connect ($Host, $User, $Pass) or die (“koneksi gagal ! ! ! “ ) ; $Namadb = „datasekolah‟ ; / / memilih database $db=mysql_select_db($Namadb) ; If (isset ($_POST [“noinduknya”]) = = TRUE && isset ($_POST [“namanya”]) = = TRUE && isset ($_POST [“alamatnya”]) = = TRUE && { $query=”INSERT INTO datasiswa (no_induk, nama_siswa, alamat_siswa) VALUES („ “.$_POST[“noinduknya”]. “ „ , „ “ .$_POST[“namanya”]. “ „ , „ “ .$_POST[“alamatnya”]. “ „ , „ “ ; } else Praktikum DAPL 2010
68
{ echo “<H1> penambahan data gagal ! ! ! < / H1> “ ; } $query=”SELECT * FROM datasiswa “ ; $hasil =mysql_query ($query) ; echo “<HR>” ; / / selama masih bisa diambil record-nya While ($rec = mysql_fetch_row ($hasil] ) )
{
/ / tampilkan hasil / /isi field no_induk echo $rec [0].
“
“;
/ /isi field nama_siswa echo $rec [1].
“
“;
/ /isi field alamat_siswa echo $rec [2]; echo “<BR>” ; \ echo “<HR>” ; } ?> <FORM ACTION = “indek.php”> <INPUT TYPE = submit” VALUE=” Ke Halaman Input “ > </FORM </BODY> </HTML> 7. Kemudian simpanlah dengan nama “inputdata.php pada folder Studikasus1 yang sudah Anda buat sebelumnya. Praktikum DAPL 2010
69
8. Jalankan web server Apache dan MySQL menggunakan control panel XAMPP. 9. Jalankan browser Anda (misalnya Mozilla Firefox), lalu ketikkan alamat http://localhost/Studykasus1
dalam
Address
Bar,
tekan Enter.
Secara
otomatis akan dijalankan file indek.php. Hal ini terjadi karena dalamPHP halaman indek.php adalah file default yang akan ditampilkan jika kita tidak tentukan alamat file-nya. 10.Cobalah untuk melakukan penambahan data, dan amati hasilnya. 5.
Studi Kasus 2 Membuat Buku Tamu 1. Jalankan web server Apache dan MySQL dari control panel XAMPP, kemudian jalankan PhpMyAdmin 2. Buat database baru bernama bukutamu. 3. Kemudian buatlah sebuah tabel baru dengan nama datatamu, yang terdiri atas field nama, alamat, jeniskelamin, dan kesan. Sesuaikanlah tipe data setiap field dengan data yang akan disimpannya. 4. Buat
sebuah
folder
baru
bernama
Studikasus2
pada
folder
C:\apachefrieds\xampp\htdocs di computer Anda. Folder tersebut akan digunakan untuk menyimpan file-file yang kita buat dan gunakan dalam kasus ini. 5. Jalankan Notepad. 6. Ketik baris-baris teks di bawah ini. (Ketiklah persis seperti yang terlihat di buku.) <?PHP $Host = „localhost‟ ; $User = „root‟ ; $Pass = „ „ ; $konek = mysql_connect ($Host, $User, $Pass) or die (“koneksi gagal ! ! ! “) ; $Namadb = „bukutamu‟ / / memilih database $db=mysql_select_db ($Namadb) ; ?> Praktikum DAPL 2010
70
7. Kemudian simpanlah dengan nama “koneksi.PHP” pada folder Studikasus2 yang sudah pernah Anda buat sebelumnya. 8. Jalankan Notepad. 9. Ketik baris-aris teks dibawah ini. (Ketiklah persis seperti yang terlihat di modul.) <HTML> <HEAD> <TITLE> Halaman Buku tamu < / TITLE> </HEAD> <BODY> <TABLE CELLPADDING=3 1BORDER=1> <TR> <TH> Nama </TH> <TH> Alamat </TH> <TH> Jenis Kelamin </TH> <TH> Kesan </TH> </TR> <?PHP include “koneksi.php”; $query = “SELECT * FROM datatamu”; $hasil = mysql_query ($query) ; while ($rec = mysql_mysql_fetch_row ($hasil) ) { ?> <TR> <TD><?PHP / / isi field nama echo $rec [0] ; ? >
Praktikum DAPL 2010
71
<TD><?PHP / / isi field alamat echo $rec [1] ; ? > <TD><?PHP / / isi field jeniskelamin echo $rec [2] ; ? > <TD><?PHP / / isi field kesan echo $rec [3] ; ? > <TR> <?PHP } ?> </TABLE> <HR> <FORM ACTION = “tambah.php” METHOD=”post”> <TABLE CELLPADDING=3
BORDER = 1 >
<TR> <TD Colspan=2 ALIGN=center>Masukkan Pendapat Anda tentang halaman web ini </TD> </TR> <TR> <TD> Nama : </TD> <TD>INPUT TYPE =”text” NAME=”nama”>
</TD>
</TR>
Praktikum DAPL 2010
72
<TR> <TD> Alamat : </TD> <TD>INPUT TYPE =”text” NAME=”alamat”>
</TD>
</TR> <TR> <TD> Jenis Kelamin : </TD> <TD><SELECT NAME =”jk”> <OPTION VALUE =”L”> Laki-laki </OPTION> <OPTION VALUE = “P”> Perempuan </OPTION </SELECT></TD> </TR> <TR> <TD>Masukkan kesan Anda : </TD> <TD> <TEXTTAREA NAME =”kesan” ROWS=5 COLS=10 > Masukkan kesan disini </TEXTAREA> </TD> </TR> <TR> <TD ALIGN=center> <INPUT TYPE=submit” VALUE = “Kirikm”> </TD> <TD ALIGN=center> <INPUT TYPE = “reset” VALUE = “Ulangi”> </TD> </TR>
Praktikum DAPL 2010
73
</TABLE> </FORM> </BODY> </HTML> 10.Kemudian simpanlah dengan nama “indek.php” pad folder Studikasus2 yang sudah perna Anda buat sebelumnya. 11.Jalankan Notepad. 12.Ketik baris-baris teks dibawah ini. (Ketiklah persis seperti yang terlihat di modul.) <?PHP Include (“koneksi.php”); If
(isset ($_POST[“nama”]==TRUE && (isset ($_POST[“alamat”]==TRUE && (isset ($_POST[“jk”]==TRUE && (isset ($_POST[“kesan”]==TRUE &&) { $query=”INSERT INTO datatamu (nama, alamat, jeniskelamin, kesan) VALUES („ “ .$_POST [“nama”]. “ „ , „ “ .$_POST [“alamat”]. “ „ , „ “ .$_POST [“jk”]. “ „ , „ “ .$_POST [“kesan”]. “ „) “ ; $hasil=mysql_query($query); /*perintah header digunakan untuk memaksa berpindah ke halaman web tertentu */ header (“Location : indek.php”) ; }
?> Praktikum DAPL 2010
74
13.Kemudian
simpanlah
dengan
nama
â&#x20AC;&#x153;inputdata.phpâ&#x20AC;?
pada
folder
Studikasus2 yang sudah Anda buat sebelumnya. 14.Jalankan web server Apache dan MySQL menggunakan control panel XAMPP. 15.Jalankan browser Anda (misalnya Mozilla Firefox), lalu ketikkan alamat http://localhost/Studikasus2 dalam Address Bar, tekan Enter. 16.Cobalah untuk melakukan penambahan data dan amati hasilnya. 6. Studi Kasus 3 Insert, Update, Delete pada form Data Mahasiswa 1. Jalankan web server Apache dan MySQL dari control panel XAMPP, kemudian jalankan PhpMyAdmin 2. Buat database baru bernama akademik pada PhpMyAdmin. 3. Kemudian buatlah sebuah database bernama akademik dan table bernama siswa, yang terdiri atas field NIS, Nama, Umur, Seks, dan alamat. Sesuaikanlah tipe data setiap field dengan data yang akan disimpannya.
Praktikum DAPL 2010
75
4. Buat
sebuah
folder
baru
bernama
akademik
pada
folder
C:\apachefrieds\xampp\htdocs di komputer Anda. Folder tersebut akan digunakan untuk menyimpan file-file yang kita buat dan gunakan dalam kasus ini. 5. Jalankan Notepad. 6. Ketik baris-baris teks di bawah ini, kemudian Save dengan nama add.php <html> <head><title>Insert Data Mahasiswa</title></head> <body> <form method="post" action="insert.php"> <table border=1 cellpadding="5" cellspacing="0" align="center"> <tr bgcolor="#BBBBBB"> <td Colspan="3" align="center"><H3>DATA MAHASISWA</H3></td> </tr> <tr bgcolor="#888888"> <td>NIM</td> <td>:</td> <td><input type="text" name="txtnis" size="50"></td> </tr> <tr bgcolor="#888888"> <td>NAMA</td> <td>:</td> <td><input type="text" name="txtnama" size="50"></td> </tr> <tr bgcolor="#888888"> <td>UMUR</td> <td>:</td> <td><input type="text" name="txtumur" size="50"></td> </tr> <tr bgcolor="#888888"> Praktikum DAPL 2010
76
<td>GENDER</td> <td>:</td> <td> <input type="radio" name="rdoseks" value="PRIA">PRIA <input type="radio" name="rdoseks" value="WANITA">WANITA </td> </tr> <tr bgcolor="#888888"> <td>ALAMAT</td> <td>:</td> <td><input type="text" name="txtalamat" size="50"></td> </tr> <tr align="center" bgcolor="#888888"> <td colspan="3"> <input type="submit" value="INSERT"> <input type="reset" value="BATAL"> <?php echo "\t [<a href=view.php>Lihat Data Mahasiswa</a>]"; ?> </td> </tr> </table> </form> </body> </html>
Praktikum DAPL 2010
77
7. Ketik baris-baris teks di bawah ini, kemudian Save dengan nama insert.php <html> <head><title>Insert Data Mahasiswa</title></head> <body>
<?php include "koneksi.php"; if($koneksi){ $NIS= $_POST['txtnis']; $NAMA= $_POST['txtnama']; $UMUR= $_POST['txtumur']; $SEX= $_POST['rdoseks']; $ALAMAT= $_POST['txtalamat']; $SQL = "INSERT INTO Siswa Values('$NIS','$NAMA','$UMUR','$SEX','$ALAMAT')"; mysql_query($SQL, $koneksi) or die ("Proses insert data GAGAL! <br> [<a href=view.php>Lihat Data Mahasiswa</a>]"); echo "Proses insert data BERHASIL!"; echo "<br>"; echo "[<a href=view.php>Lihat Data Siswa</a>]"; } ?> </body> </html>
Praktikum DAPL 2010
78
8. Ketik baris-baris teks di bawah ini, kemudian Save dengan nama edit.php <html> <head><title>Ubah Data Mahasiswa</title></head> <body> <?php include "koneksi.php"; $NIS = $_GET['NIS']; $perintah_sql = "select * from siswa where NIS=$NIS"; mysql_select_db($nama_db, $koneksi) or die("Gagal memilih database!"); $hasil_query = mysql_query($perintah_sql, $koneksi) or die ("Gagal memproses query!"); $row=mysql_fetch_array($hasil_query); $NIS = $row['NIS']; $NAMA = $row['Nama']; $UMUR = $row['Umur']; $SEX = $row['Seks']; $ALAMAT= $row['alamat']; if ($SEX=="PRIA") { $P = " checked"; $W = ""; } else { $P = ""; $W = " checked"; } ?> Praktikum DAPL 2010
79
<form method="post" action="update.php"> <table border="1" cellpadding="5" cellspacing="0" align="center"> <tr bgcolor="#BBBBBB"> <td Colspan="3" align="center"><H3>DATA MAHASISWA</H3></td> </tr>
<tr bgcolor="#888888"> <td>NIM</td> <td>:</td> <td> <input type="text" name="txtnis" size="50" value="<?php echo "$NIS"; ?>" disabled> <input type="hidden" name="NISH" value="<?php echo "$NIS"; ?>"> </td> </tr> <tr bgcolor="#888888"> <td>NAMA</td> <td>:</td> <td><input type="text" name="txtnama" size="50" value="<?php echo "$NAMA"; ?>"></td> </tr> <tr bgcolor="#888888"> <td>UMUR</td> <td>:</td> <td><input type="text" name="txtumur" size="50" value="<?php echo "$UMUR"; ?>"></td> </tr> <tr bgcolor="#888888"> Praktikum DAPL 2010
80
<td>GENDER</td> <td>:</td> <td> <input type="radio" name="rdoseks" value="PRIA" <?php echo "$P"; ?>>PRIA <input type="radio" name="rdoseks" value="WANITA" <?php echo "$W"; ?>>WANITA </td> </tr> <tr bgcolor="#888888"> <td>ALAMAT</td> <td>:</td> <td><input type="text" name="txtalamat" size="50" value="<?php echo "$ALAMAT"; ?>"></td> </tr> <tr align=center bgcolor="#888888"> <td colspan=3> <input type="submit" value="UPDATE"> [<a href=view.php>Lihat Data Mahasiswa</a>] </td> </tr> </table> </form> </body> </html>
Praktikum DAPL 2010
81
9. Ketik baris-baris teks di bawah ini, kemudian Save dengan nama update.php <html> <head><title>Pembaharuan Data Mahasiswa</title></head> <body> <?php include "koneksi.php"; if($koneksi){ $NISH= $_POST['NISH']; $NAMA= $_POST['txtnama']; $UMUR= $_POST['txtumur']; $SEX= $_POST['rdoseks']; $ALAMAT= $_POST['txtalamat']; $SQL = "UPDATE Siswa SET Nama='$NAMA', Umur='$UMUR', Seks='$SEX',alamat='$ALAMAT' WHERE NIS='$NISH'"; mysql_query($SQL, $koneksi) or die ("Proses pembaharuan data GAGAL! <br> [<a href=view.php>Lihat Data Mahasiswa</a>]"); echo "Mahasiswa dengan NIM = $NISH atas nama $NAMA , BERHASIL DIPERBAHARUI!"; echo "<br>"; echo "[<a href=view.php>Lihat Data Mahasiswa</a>]"; } ?> </body> </html>
Praktikum DAPL 2010
82
10.Ketik baris-baris teks di bawah ini, kemudian Save dengan nama delete.php <html> <head> <title>Hapus Data Mahasiswa</title> </head> <body> <?php include "koneksi.php"; if($koneksi){ $NIS=$_GET['NIS']; $SQL = "DELETE FROM Siswa WHERE NIS='$NIS'"; $hasil_query = mysql_query($SQL, $koneksi) or die ("Proses hapus data GAGAL! <br> [<a href=view.php>Lihat Data Mahasiswa</a>]"); if ($hasil_query) echo "Siswa dengan NIS = $NIS BERHASIL DIHAPUS!"; echo "<br>"; echo "[<a href=view.php>Lihat Data Mahasiswa</a>]"; } ?> </body> </html>
Praktikum DAPL 2010
83
11.Ketik baris-baris teks di bawah ini, kemudian Save dengan nama view.php <html> <head> <title>Tampil Data Mahasiswa</title> <script language="JavaScript"> function konfirmasi(NIS) { tanya = confirm('Anda yakin ingin menghapus siswa dengan NIS '+ NIS + '?'); if (tanya == true) return true; else return false; } </script> </head> <body> <?php include "koneksi.php"; $perintah_sql = "select * from siswa order by NIS"; mysql_select_db($nama_db, $koneksi) or die("Gagal memilih database!"); $hasil_query = mysql_query($perintah_sql, $koneksi) or die ("Gagal memproses query!"); $jumlah_data = mysql_num_rows($hasil_query); echo "<H3>DATA MAHASISWA</H3>"; echo "<table border=1 cellpadding=2 cellspacing=0>"; echo "<tr bgcolor=yellow align=center>"; echo "<td>NIM</td>"; echo "<td>NAMA MAHASISWA</td>"; echo "<td>UMUR</td>"; Praktikum DAPL 2010
84
echo "<td>GENDER</td>"; echo "<td>ALAMAT</td>"; echo "<td colspan=2>AKSI</td>"; echo "</tr>"; while ($row=mysql_fetch_array($hasil_query)) { echo "<tr>"; echo "<td>$row[0]</td>"; echo "<td>$row[1]</td>"; echo "<td>$row[2]</td>"; echo "<td>$row[3]</td>"; echo "<td>$row[4]</td>"; echo "<td><a href=\"edit.php?NIS=$row[0]\">Ubah</a></td>"; echo "<td><a href=\"delete.php?NIS=$row[0]\" onclick=\"return konfirmasi('".$row[0]."')\">Hapus</a>"; echo "</tr>"; } echo "</table>"; echo "Jumlah data : $jumlah_data \t [<a href=add.php>Tambah Data</a>]"; ?> </body> </html>
Praktikum DAPL 2010
85
12. Ketik
baris-baris
teks
di
bawah
ini,
kemudian
Save
dengan
nama
koneksi.php <?php $hos = "localhost"; $uname = "root"; $pswd= " "; $nama_db = "akademik"; $koneksi = mysql_connect($hos,$uname,$pswd) or die ("Gagal terhubung ke server MySQL!"); mysql_select_db($nama_db, $koneksi) or die("Gagal memilih database!"); ?> 13.Jika sudah selesai mengetikkan seluruh program maka Running program tersebut dengan cara mengetikkan localhost/akademik/add.php pada web browser Anda, maka akan muncul tampilan :
14.Setelah itu Anda dapat melakukan insert, update ataupun delete pada Data Mahasiswa.
Praktikum DAPL 2010
86
Note :
Praktikum DAPL 2010
87
Praktikum DAPL 2010
88