Aplikasi Php Dan Mysql Good Good

293 

Loading....

Loading....

Loading....

Loading....

Loading....

Teks penuh

(1)

Aplikasi Program PHP

dan MySQL untuk Membuat

Website Interaktif

Dalam perkembangan dunia web (world wide web) yang semakin lama semakin cepat ini, penggunaan program yang bekerja dalam website sebagai pengolah data dan database sebagai media penyimpanan data tidak dapat ditinggalkan lagi. Karena website yang sifatnya statis atau dalam arti hanya menyajikan data-data statis, dan pengunjung tidak dapat berinteraksi dalam memberikan argumennya dapat menga-kibatkan kejenuhan bagi para pengunjung untuk membukanya kembali. Agar pengunjung tertarik dan dapat berinteraksi dengan web server atau pengunjung yang lain, maka Anda perlu untuk menggunakan sebuah program dan database yang dapat menangani masalah ini, sehingga mampu menjadikan website Anda menjadi lebih interaktif. Bertolak dari permasalahan tersebut, buku ini memberikan tip dan trik dengan menggunakan bahasa yang singkat namun mudah dipahami, termasuk bagi pembaca yang baru mengenal pemrograman PHP dan MySQL. Setelah Anda membaca dan mempelajari buku ini, Anda akan dapat membuat serta mengelola aplikasi-aplikasi website yang interaktif.

Adapun materi-materi yang dibahas dalam buku ini mencakup: Instalasi Webserver, Modul

PHP dan MySQL

Mengawali Penulisan Kode Program PHP

Jenis Data, Variabel dan Operator dalam Program PHP

Struktur Control Fungsi Data Array Fungsi Pengolah String Fungsi Tanggal dan Waktu Operasi File

Session dan Cookies Fungsi Mengirim Email

Menggunakan Database MySQL

Aplikasi Buku Tamu Aplikasi Counter

Aplikasi Jajak Pendapat Aplikasi Berita Online.

(2)
(3)

Daftar Isi

Kata Pengantar ...

iii

Daftar Isi ...

v

BAB 1 PENGENALAN DAN INSTALASI PHP

Mengapa Menggunakan PHP ? ... 2

Menggunakan Buku Ini ... 2

Instalasi Program PHP ... 3

 Instalasi Modul PHP ... 4

 Instalasi Server Microsoft IIS ... 6

 Instalasi MySQL ... 10

Mencoba Program PHP dan MySQL ... 13

BAB 2 STRUKTUR & PENULISAN PROGRAM PHP

Kode PHP dalam HTML... 15

BAB 3 TIPE DATA DALAM PROGRAM PHP

Tipe Data ... 19

 Tipe Data Integer ... 19

 Tipe Data Floating Point ... 19

 Tipe Data String ... 20

(4)

 Tipe Data Object ... 25

BAB 4 VARIABEL DALAM PEMROGRAMAN PHP

Pengertian Variabel ... 27

 Variabel dari Form HTML ... 29

 Konstanta ... 31

BAB 5 OPERATOR PROGRAM PHP

Operator Aritmatika ... 33

Operator Increment / Decrement ... 34

Operator String ... 35

Operator Bitwise ... 36

Operator Perbandingan ... 37

Operator Logika ... 37

Operator Presedence ... 38

Operasi Nilai Variabel dari Form HTML ... 39

BAB 6 STRUKTUR KENDALI DALAM PHP

Pernyataan If ... 43

 Fungsi If dalam Satu Statement ... 43

 Fungsi If … Else … ... 45

 Fungsi If … Elseif … sebagai Alternatif Ganda ... 47

Pernyataan Switch ... 48

(5)

 While Loop ... 52

 Do … While ... 54

 For Loop ... 55

BAB 7 BEKERJA DENGAN ARRAY DAN FUNGSI

Array ... 57

 Membuat dan Mengakses Array ... 58

 Array Multidimensi... 60

 Menambah Data Array ... 62

 Menggabungkan Array ... 64

 Menghapus Data Array ... 65

 Mengurutkan Array... 66

 Membuat Data Array dari Mengakses File ... 68

Fungsi ... 69

 Menampilkan String ... 69

 Menghitung Panjang String ... 72

 Mengirimkan Argumen ... 75

 Include dan Require ... 77

 Mengambil dan Menggabung Elemen... 80

BAB 8 FUNGSI PENGOLAH STRING / TEKS

Fungsi-Fungsi String / Teks ... 85

 Fungsi Pemberi Tanda "\" pada Karakter ... 85

 Fungsi Pemberi Tanda "\" pada Tanda Petik Tunggal dan Tanda Petik Ganda ... 87

(6)

 Fungsi Penghapus Spasi pada String ... 90

 Fungsi Pemecah String ... 91

 Fungsi Pengubah Bentuk Penulisan Huruf... 95

 Fungsi Pengulang Penulisan String ... 98

 Fungsi Pencari String ... 100

 Contoh Penggunaan Fungsi Ereg() dalam Program ... 105

 Fungsi Pencari dan Pengganti String ... 109

Enkripsi Data ... 112  Fungsi Crc32 ... 112  Fungsi Crypt() ... 113  Fungsi Md5() ... 115

Fungsi-Fungsi Konversi HTML ... 118  Fungsi HTMLentities ... 118  Fungsi Nl2br ... 120  Fungsi Strip_Tags ... 122 BAB 9 OPERASI FILE

Mengecek Keberadaan File ... 125

Mengakses File ... 127

Membaca Isi File ... 128

Menambah Isi File ... 129

Menyalin File ... 131

Mengganti Nama dan Menghapus File ... 139

Men-download File ... 141

BAB 10 MENGGUNAKAN FUNGSI TANGGAL DAN WAKTU

Fungsi Checkdate ... 147

(7)

Fungsi Date ... 152

Fungsi Microtime ... 155

Fungsi Date dengan Dua Argumen ... 156

BAB 11 MENGGUNAKAN SESSION DAN COOKIES

Session ... 159

 Membuat Session ... 160

 Membuat Session dengan Fungsi Session_Register() ... 162

 Mengecek Hasil Registrasi ... 166

 Menghapus Variabel Session ... 168

Cookies ... 169

 Membuat Cookies ... 169

 Set Cookies dengan Batas Waktu ... 174

 Menghapus Cookies ... 176

BAB 12 MENGIRIM EMAIL

Validasi Email ... 185

BAB 13 MENGGUNAKAN DATABASE MYSQL

Koneksi ke Database ... 188

Membuat Database ... 190

Membuat Tabel ... 192

Tipe Data Field ... 195

(8)

 Tipe Data String ... 197

 Tipe Data Char() dan Varchar() ... 198

 Tipe Data Tanggal ... 199

Memasukkan Data ... 199

Mencari dan Menampilkan Data ... 206

Mengubah Data ... 212

Menghapus Data ... 219

 Mengubah Struktur Tabel ... 222

 Menambah Field Tabel... 223

 Mengubah Field Tabel ... 225

 Menghapus Field Tabel ... 227

BAB 14 APLIKASI BUKU TAMU

Buku Tamu dengan Database MySQL ... 235

 Struktur Database ... 236

 Form Pengisian Data Tamu ... 239

 Program untuk Memproses Data Masukan ... 242

 Program untuk Menampilkan Data Pengunjung ... 244

BAB 15 APLIKASI JAJAK PENDAPAT

Struktur Database ... 252

Bagian Administrator ... 255

Bagian Tampilan Pertanyaan Jajak Pendapat ... 271

(9)

BAB 16

APLIKASI COUNTER

Membuat Counter Sederhana ... 286

BAB 17 APLIKASI BERITA ONLINE

Membuat Database dan Tabel ... 293

File Koneksi PHP dengan MySQL ... 295

Halaman Anggota... 296

 Halaman Pendaftaran ... 296

 Halaman Login ... 320

Kirim Artikel ... 334

Menampilkan Halaman Berita ... 351

 Halaman Index ... 352

 Halaman Kategori Berita ... 363

(10)

PENGERTIAN DATABASE

Buku ini membahas tentang pembuatan program aplikasi database sistem informasi manajemen pendidikan berbasis web, yaitu menggunakan bahasa pemrograman PHP dan database MySQL. Dalam pembahasannya nanti juga disertai keterangan-keterangan dari masing-masing listing program, sehingga Anda mudah untuk memahami maksud dan tujuan pembuatan program ini. Selain penjelasan tentang pembuatan dan listing script PHP juga membahas tentang database MySQL yang sangat terkenal handal dalam menangani database berbasis web.

Pada program ini khususnya membahas tentang pembuatan program sistem informasi manajemen online berbasis web. Sub sistem yang ada dalam program ini mulai input data pengolahan data siswa, pengolahan data nilai siswa, input dan pengolahan data instruktur, juga komponen-komponen lain yang mendukung program ini.

Mengapa menggunakan bahasa program PHP dan berbasis web dalam membuat program ini? Alasannya adalah:

1. Bahasa program PHP terbukti sangat handal dalam membangun sebuah program berbasis web.

2. Waktu yang digunakan untuk memproses data dan menjalankan printah-perintah query sangat cepat.

(11)

3. Dengan berjalan dalam sebuah web server, maka secara otomatis program ini bersifat multiuser.

4. Database MySQL dalam menyimpan data ditempatkan ke dalam direktori khusus dan terpisah dengan file program PHP yang lain, sehingga keamanan data dari orang usil lebih terjaman. 5. Web server dan database server terpisah sehingga menyulitkan

pihak luar yang tidak punya akses untuk mengakses data yang di dalam database.

6. Bahasa program PHP dan database MySQL lebih fleksibel, karena dapat diakses dalam sistem operasi Windows maupun linux.

7. Program dapat diakses dari komputer manapun tanpa harus menginstall program client. Program bantuan untuk mengakses sistem ini hanya sebuah browser yang mudah dicari.

Dalam pembuatan sebuah program aplikasi yang baik, pengolahan data merupakan kunci utama dari kesempurnaan fungsi. Dengan adanya pengolahan data yang baik, maka Anda dapat dengan mudah mengakses data yang dibutuhkan.

Sebelum Anda memasuki tahap pembuatan aplikasi yang memanfaatkan fasilitas database, sebaiknya Anda mengenal lebih dulu tentang database.

Database adalah sekumpulan data yang terdiri atas satu atau lebih tabel yang saling berhubungan. Anda atau user mempunyai wewenang untuk mengakses data tersebut, baik menambah mengubah atau menghapus data yang ada dalam tabel-tabel tersebut.

TABEL

Tabel adalah media untuk menyimpan data yang telah diolah dan mempunyai sesuatu tema tertentu, misalnya tabel yang digunakan untuk menyimpan data tentang karyawan berisikan tentang nomor induk karyawan, nama karyawan alamat karyawan dan status karyawan yang disimpan kedalam field-field tertentu.

(12)

Berikut ini adalah contoh tabel yang digunakan untuk menyimpan data tentang karyawan:

Tabel 1.1 Contoh tabel karyawan

NIK Nama_karyawan alamat jabatan

k-001 Yeni cahyono Jl. Arumdalu 25 Ponorogo

Instruktur

k-002 Susiana Jl. Manggis 43 Ponorogo

Administrasi

k-003 Heri Purwanto Jl. Lawu 59 Madiun Instruktur k-004 Wawan Jl.Arjuna 63 Madiun Kepala Bagian k-005 Mei Lenawati Jl. Melati 54 Madiun Bendahara

Keterangan:

A : Kolom atau Field B : Baris atau Record

Field adalah tempat dimana data atau informasi dalam kelompok sejenis dimasukkan.

Record adalah data lengkap dalam jumlah tunggal yang tersimpan dalam bentuk baris horisontal pada tabel. Dalam satu tabel dapat diinputkan beberapa record sekaligus.

SKEMA DATABASE

Database digunakan untuk menampung beberapa tabel atau query yang dijadikan median untuk menyimpan data sebagai sumber pengolahan data.

Berikut ini adalah salah satu contoh skema database:

A

(13)

Gambar 1.1 Contoh skema database

Skema yang ditampilakan di atas menunjukkan bahwa sebuah database dapat menampung beberapa tabel. Kemudian dalam tiap-tiap tabel terdiri dari beberapa field.

Dalam suatu program database berbasis web, seperti sebuah web berita, web komunitas, forum diskusi, buku tamu sebaiknya dibuat sebuah database terstruktur dan sistematis. Dengan demikian program tersebut dapat berumur panjang dan dapat dioperasikan dengan kecepat yang optimal.

Yang perlu diperhatikan dalam membuat database adalah memori yng digunakan untuk menyimpan data di dalamnya. Semakin tidak efisiensi dalam penggunaan tipe dan lebar field, maka akan semakin tidak hemat memori penyimpanan data. Oleh karena itu dalam membuat tabel Anda harus memperhatikan panjang field dengan panjang data yang akan Anda inputkan dalam field tersebut. Misalkan untuk membuat filed tahun lebih baik menggunakan panjang 4, karena untuk tahun hanya mempunyai 4 karakter saja. Selain panjang field yang perlu Anda perhatikan

database_siswa

data_siswa

data_nilai

absensi

krs

 Nim  Nama  Alamat  Tgl_lahir  Sex  Asal_sekolah  Agama  Kelas  jurusan  Nim  Kelas  Jurusan  nilai_harian  nilai_uts  nilai_uas  nilai_akhir  Kelas  Jurusan  Nim  nama  Nim  Nama  Kelas  Jurusan  Materi  Instruktur  Nilai_harian  Nilai_tugas  Nilai_uts  Nilai_uas  Nilai_akhir  grade

(14)

adalah tipe field. Tipe field sebaikkan sesuaikan dengan jenis data yang akan diinputkan, misalkan data angka, teks atau data tanggal. Hal yang perlu Anda perhatikan adalah pemberian nama tabel dan field. Untuk memberikan nama database, tabel dan filed membedakan huruf kapital dan huruf kesil. Selain itu juga tidak mengijinkan penggunakan spasi dan karakter-karakter khusus seperti ? < > * & ^ # @ !.

STRUKTUR RELASI DATABASE

Hubungan data antar tabel dalam database juga disebut relasi. Relasi digunakan untuk meringkas data yang ada dalam database sehingga penggunaan data akan lebih fleksibel dan untuk memori penyimpananpun akan lebih efisien. Salah satu contoh relasi data antar tabel adalah pada saat program akan menampilkan data nama siswa pada data nilai maka pada tabel nilai tidak perlu lagi membaut field nama_siswa, namun cukup membuat nama filed nis, sehingga dengan adanya data nis tersebut halaman tampilan data nilai cukup mengambil data nama siswa yang ada dalam tabel data_siswa dengan merujuk data nis yang ada dalam tabel data nilai. Dengan sistem tersebut dapat diambil beberapa manfaat yang besar yaitu:

1. Penyimpanan data lebih efisien, karena tidak perlu menuliskan nama siswa secara berulang-ulang.

2. Tingkat efektifitas dan konsisten data lebih terjamin, Contoh kasus apabila ada kesalahan penulisan nama siswa kemudian akan diganti dengan nama yang benar, administrator cukup mengganti data nama siswa yang ada dalam tabel data siswa. Data nama siswa di setiap daftar nilai yang ada di tabel data_nilai akan berubah keseluruhan secara otomatis mengikuti data siswa yang ada dalam tabel data_siswa.

3. Memudahkan bagi administrator untuk memantau ata mengontrol data yang ada dalam database.

Penggunaan relasi dalam sistem ini dilaksanakan pada saat script PHP membaca dan mengolah data yang ada dalam database. Script PHP mampu melaksanakan korelasi antar tabel hanya berdasarkan data tabel yang dibaca dari tiap-tiap tabel. Type field tidak

(15)

mempengaruhi penggunaan relasi ini. Karena relasi dijalankan setelah data dibaca oleh script PHP.

(16)

GAMBARAN UMUM PEMBUATAN PROGRAM

SISTEM INFORMASI MANAJEMEN

PENDIDIKAN ONLINE

Program ini digunakan dalam sistem informasi manajemen pendidikan di sebuah lembaga pendidikan komputer. Sistem yang buat bersifat intern, artinya pengguna program ini hanya kalangan tertentu saja yang diberi hak akses oleh program. Program ini bekerja dalam sebuah web server dan dapat diakses melalui jaringan intranet maupun internet. Karena program ini berjalan dalam sebuah jaringan intranet atau internet, maka dapat dijalankan secara multiuser, yaitu dapat diakses oleh banyak user / pengguna secara bersamaan dari komputer yang berbeda-beda. Bagian-bagian yang akan mengakses program ini adalah:

8. Administrasi / Administrator

Bagian ini mempunyai hak dan akses yang paling luas. Seorang administrator dapat memasukkan data-data cetak ke dalam sistem. Data-data yang dapat dimasukkan dan diubah oleh administrator ini adalah:

(17)

a. Data karyawan

Data karyawan ini mencakup nama, alamat, tempat dan tanggal lahir, nomor telepon, pendidikan terakhir,status perkawinan, status jabatan, jabatan, mulai kerja, UserID dan password karyawan.

b. Data siswa

Data siswa baru yang akan dimasukkan ke dalam program adalah nama, jenis kelamin, alamat, tempat tanggal lahir,agama, nomor telepon,pendidikan terakhir, asal sekolah, nama orang tua, pekerjaan orang tua, mulai masuk, nama kelas, UserID dan password siswa untuk login siswa tersebut ke dalam sistem.

c. Data kelas

Data kelas adalah informasi tentang kelas tersebut, antara lain nama dan jenis jenjang pendidikan yaitu Diploma dan Reguler.

d. Data jurusan

Data jurusan yang dimasukkan administrator adalah nama jurusan, kode jurusan dan keterangan tentang jurusan tersebut.

e. Data materi.

Untuk data materi ini ada dua jenis, yaitu bagian untuk memasukkan data materi baru yang mencakup informasi tentang nama materi dan jumlah session.

Bagian yang kedua adalah untuk membuat tabel baru yang digunakan untuk menampung data-data siswa dan materi yang di tempuh oleh siswa dari kelas tertentu. Informasi yang dimasukkan adalah nama materi, instruktur, assisten 1, assisten 2, nama kelas, jumlah session, mulai masuk, jam masuk dan hari masuk.

Selain itu seorang administrator juga dapat mengganti passwordnya sendiri.

(18)

Hak akses administrator yang ke dua adalah melihat dan mengamati perkembangan siswa dalam proses belajar, yaitu meliputi nilai harian, nilai tugas, nilai tengah semester, nilai semester yang dimasukkan oleh Instrukturnya. Data yang ke dua adalah data absensi atau keaktifan siswa tersebut dalam mengikuti pelajaran.

Selain itu seorang Administrator juga dapat mencetak laporan nilai dan keaktifan siswa tiap kelas atau materi yang ditempuh. 9. Instruktur / Karyawan

Instruktur adalah karyawan yang bertugas mengajar materi-materi tertentu dalam proses belajar mengajar. Dalam sistem ini seorang instruktur mempunyai hak akses untuk memberikan laporan nilai siswa dan laporan keaktifan siswa dalam menempuh pelajaran.

10. Siswa

Siswa dalam program ini hanya memiliki hak akses untuk melihat nilai dan data keaktifan siswa tersebut. Jadi siswa tidak dapat melihat nilai dan data keaktifan siswa lain walaupun sama-sama satu kelas dan menempuh materi pelajaran yang sama.

11. Orang tua siswa / Wali siswa

Orang tua siswa atau wali siswa dalam sistem ini berperan sebagai subyek yang mengontrol anaknya yang telah menempuh pelajaran dalam lembaga ini. Orang tua siswa dapat melihat perkembangan anaknya dengan melihat data yang ada dalam program ini dengan menggunakan fasilitas userID dan password yang diberikan oleh administrator.

(19)

TARGET DAN SASARAN PENGGUNAKAN

SISTEM INFORMASI MANAJEMEN

PENDIDIKAN ONLINE

Setiap program yang dibuat dan digunakan pasti memiliki target yang ingin dicapai dan juga memiliki sasarnan yang dituju.

Adapun target dan sasaran yang ingin dicapai adalah:

1. Dengan menggunakan program ini diharapkan aktifitas administrasi pada sebuah lembaga pendidikan dapat tercatat dengan rapi dan efisien baik media, waktu dan tenaga.

2. Target yang kedua diharapkan dengan adanya sistem yang dijalankan ini akan memperkecil tindak keteledoran dalam bentuk kurang ketelitian seorang instruktur untuk mengecek absensi dan juga menuliskan nilai siswa yang dibimbingnya. 3. Tagert yang ingin dicapai yang ke tiga adalah memacu siswa

untuk lebih rajin belajar dan lebih giat mengikuti pelajaran. 4. Orang tua siswa ikut aktif mengawasi anaknya yang sedang

menempuh pelajaran di lembaga pendidikan dengan melihat perkembangan dan nilai siswa yang bersangkutan melalui internet dengan membuka halaman web yang berisi tentang informasi perkembangan pendidikan anaknya dengan fasilitas UserID dan password.

STRUKTUR DAN ALUR SISTEM INFORMASI

MANAJEMEN PENDIDIKAN

Untuk memperjelas gambaran sistem informasi manajemen pendidikan berbasis website yang akan dibuat ini akan digambarkan sebuah struktur dan alur sistem di bawah ini:

Alur data dan aktivitas yang dilakukan oleh administrator Proses / alur input data

(20)

Gambar 2.1. Struktur / alur input data oleh administrator Keterangan:

Masing-masing data dapat dimasukkan pada satu database dengan tabel yang berbeda-beda sesuai dengan jenis data yang dimasukkan. Untuk tabel kelas_1, kelas_2, kelas_3, kelas_n1,n2 … adalah tabel baru yang akan dibuat secara otomatis oleh program apabila ada kelas baru. Tabel tersebut dibuat mengacu pada nama kelas yang dimasukkan pada tabel kelas. Artinya setiap ada data kelas baru yang dimasukkan pada tabel kelas, maka pada database juga akan di buatkan tabel baru dengan nama kelas_n ( n adalah nomor id dari data kelas dari tabel kelas ).

Proses / alur membuat materi baru dari kelas yang sudah terdaftar Tabel karyawan Data karyawan Data siswa Data untuk materi baru Data jurusan Data materi baru Tabel siswa Tabel Data_materi Tabel jurusan Tabel Data_materi Tabel kelas Tabel Kelas_n1,n2,.. Kelas kelas Input data

(21)

Gambar 2.2. Struktur / alur membuat materi pelajaran untuk kelas yang sudah terdaftar oleh administrator

Keterangan:

Yang dimaksud dengan membuat materi baru pada kelas yang sudah terdaftar adalah proses mendaftarkan siswa pada kelas tertentu kedalam tabel kelas_n tersebut. Proses ini dilaksanakan berdasarkan data-data yang sudah ada. Untuk materi baru ini membutuhkan beberapa data, yang pertama adalah data kelas yang menempuh materi tersebut. Yang ke dua adalah nama materi diambil dari tabel data_materi, kemudian juga nama-nama siswa dari kelas tersebut dengan membaca tabel siswa. Yang terakhir adalah membaca tabel

Materi kelas baru Proses buat materi kelas untuk pelajaran baru Data kelas dari tabel kelas Data materi dari tabel data_materi Data siswa dari tabel siswa Data instruktur dari tabel karyawan Tabel kelas_n

(22)

karyawan untuk mengambil nama instruktur sebagai pembimbing kelas dengan materi tersebut.

Data-data tersebut kemudian dimasukkan ke dalam tabel kelas_n tersebut, sehingga dapat diakses dengan mudah oleh administrator, instruktur, siswa dan juga orang tua siswa.

(23)

Gambar 2.3. Struktur / alur membuat laporan kehadiran dan nilai siswa oleh administrator Formulir untuk login cocok Proses Login

(cek password) tidak Data

administrator

Baca tabel materi dan kelas tabel materi tabel kelas Baca tabel kelas_n berdasarkan data materi dan

kelas tabel kelas_n Tampilan cetak data nilai Tampilan cetak data absensi Hasil cetak data nilai Hasil cetak data abseni

(24)

Keterangan:

Salah satu tugas administrator adalah mencetak arsip yang dibutuhkan adalah data nilai siswa dan data absensi siswa. Untuk mencetak data tersebut dibutuhkan beberapa urutan tingkatan. Yang pertama administrator harus melakukan login untuk mauk ke dalam sistem. Apabila userid dan password sesuai maka sistem akan membaca data materi dan kelas. Apabila password tidak sesuai maka sistem akan membawa administtrator ke halaman login kembali. Data materi dan kelas yang telah dibaca kemudian digunakan untuk membaca data kelas_n yang berisikan tentang siswa, nilai siswa, kehadiran siswa, data instruktur. Data tersebut kemudian ditampilkan dalam bentuk tampilan cetak yang kemudian dapat dicetak oleh administrator sebagai arsip manual.

Alur data dan aktivitas yang dilakukan oleh instruktur Proses / alur mengisi data absensi dan nilai siswa.

(25)

Tabel kelas Formulir untuk login cocok Proses Login

(cek password) tidak Data

karyawan

Membaca data kelas dan materi

Tabel materi Membaca data siswa berdasarkan materi tertentu Tabel Kelas_n Formulir ubah data kehadiran siswa berdasar session Tampilan data absensi / nilai

Proses ubah data absensi / nilai

(26)

Gambar 2.4. Struktur / alur mengisi data kehadiran dan nilai siswa oleh instruktur

Keterangan:

Tugas dari instruktur dalam sistem ini adalah mengisi formulir kehadiran dan nilai siswa untuk laporan ke bagian administrasi / administrator. Tahap yang pertama instruktur harus melakukan login pada halaman formulir untuk login. Apabila data password yang diisikan sesuai dengan data password yang ada dalam tabel karyawan, maka sistem akan membaca tabel kelas dan materi. Apabila password yang dimasukkan tidak sesuai dengan data password yang ada pada tabel karyawan, maka akan dialihkan ke halaman formulir login kembali untuk mengulaginya.

Data yang dibaca dari tabel kelas dan data materi yang dibaca dari tabel materi tersebut digunakan untuk membaca data siswa yang ada di tabel kelas tertentu yang telah mengikuti materi tertentu tersebut. Data siswa akan ditampilkan menjadi dua halaman yaitu data kehadiran siswa dan data nilai siswa. Kedua jenis data tersebut dapat diubah nilainya oleh instruktur. Hasil perubahan tersebut akan dikirim kembali ke tabel kelas_n tersebut. Setelah proses selesai maka akan diarahkan kembali pada halaman tampilan data kehadiran maupun nilai siswa.

Alur data dan aktivitas yang dilakukan oleh siswa untuk melihat data nilai dan kehadiran siswa tersebut.

(27)

Gambar 2.4. Struktur / alur melihat data kehadiran dan nilai siswa oleh siswa

Keterangan:

Karena siswa hanya mempunyai hak akses melihat data saja, maka alur data dalam sistem juga lebih sederhana dari pada alur data yang dijalankan oleh administrator atau instruktur.

Formulir untuk login

cocok Proses Login

(cek password) tidak Data siswa Membaca data siswa berdasarkan materi tertentu Tabel Kelas_n Tampilan data absensi Tampilan data nilai keluar

(28)

Yang pertama siswa harus login melalui formulir login. Apabila data password yang dimasukkan sesuai dengan data password yang ada dalam database, maka akan dibuka halaman siswa yang menginformasikan tentang data pribadi siswa, data kehadiran siswa dan data nilai siswa.

Alur data dan aktivitas yang dilakukan oleh wali siswa untuk melihat data nilai dan kehadiran siswa.

(29)

Gambar 2.4. Struktur / alur melihat data kehadiran dan nilai siswa oleh wali siswa

Keterangan:

Wali siswa atau orang tua siswa dalam sistem ini aktivitasnya hanya melihat data nilai dan kehadiran anaknya. Jadi alur data dan sistemnya tidak jauh berbeda dengan alur data yang dilakukan oleh

Formulir untuk login

cocok Proses Login

(cek password) tidak Data Wali siswa Membaca data siswa berdasarkan materi tertentu Tabel Kelas_n Tampilan data absensi Tampilan data nilai keluar

(30)

siswa. Bedanya pada alur data yang dilakukan oleh siswa membaca tabel siswa terlebih dahulu, tetapi alur data untuk wali siswa membaca data wali siswa terlebih dahulu.

MEMBUAT DATABASE

Untuk menyimpan semua data yang ada dalam sistem informasi manajemen pendidikan ini dibutuhkan sebuah database yang dibuat dalam MySQL. Database ini diberi nama pendidikan.

Database pendidikan dibuat menggunakan script php yang disimpan pada sebuah file dan dijalankan dibrowser yang sebelumnya disimpan pada web server.

Script php yang digunakan untuk membuat database tersebut adalah: <?php $host="localhost"; $userdb="root"; $passdb=""; $sambung=mysql_connect($host,$userdb,$passdb); mysql_create_db("pendidikan",$sambung);

echo"Database pendidikan berhasil dibuat."; ?>

Keterangan:

Sebelum membuat sebuah database dibutuhkan script yang berfungsi untuk melakukan koneksi dengan Mysql, yaitu menggunkan fungsi mysql_conect() dengan hosting localhost, userid root dan password dalam kasus ini tidak ada. Kemudian untuk membuat database baru menggunakan fungsi mysql_create_db(“pendidikan”, $sambung);.

(31)

MEMBUAT TABEL

Tabel adalah bagian dari database yang berfungsi untuk menyimpan data-data tertentu. Pada program ini dibutuhkan banyak tabel, karena jenis data yang akan dimasukkan juga bermacam-macam. Dengan menggunakan tabel akan memudahkan seorang pembuat program dalam mengatur dan merancang struktur program. Tabel yang akan dibuat untuk program sistem informasi manajemen pendidikan ini dibuat berdasarkan jenis data yang akan dimasukkan.

TABEL KARYAWAN

Tabel karyawan digunakan untuk menampung data-data yang berhubungan dengan karyawan. Berikut adalah field-field yang dibuat dalam tabel karyawan:

Tabel 2.1 struktur tabel karyawan

Field name Type Field

Size Keterangan

Id int 2 Nomor id karyawan /

instruktur (primary key, index)

Nama varchar 30 Nama karyawan

Alamat varchar 100 Alamat karyawan Ttl varchar 200 Tempat tanggal lahir

Agama varchar 15 Agama karyawan

telepon varchar 15 Telepon karyawan Pendidikan varchar 50 Pendidikan terakhir Perkawinan varchar 30 Status perkawinan Stt_jabatan varchar 30 Status jabatan Jabatan varchar 20 Jabatan karyawan Mulai varchar 30 Mulai menjadi karyawan

Masa varchar 30 Masa kerja

Userid varchar 10 User id kaeyawan

(32)

Untuk membuat tabel karyawan tersebut menggunakan script php sebagai berikut: <?php $host="localhost"; $userdb="root"; $passdb=""; $sambung=mysql_connect($host,$userdb,$passdb); mysql_select_db($namadb,$sambung);

$buat_tabel=mysql_query(“CREATE TABLE karyawan ( idINT(2)NOTNULLAUTO_INCREMENTPRIMARYKEY, namaVARCHAR(30)NOTNULL,

alamatVARCHAR(100)NOTNULL, ttlVARCHAR(200)NOTNULL, agamaVARCHAR(15)NOTNULL, telepon VARCHAR(15)NOTNULL, pendidikanVARCHAR(50)NOTNULL, perkawinanVARCHAR(30)NOTNULL, stt_jabatan VARCHAR(30)NOTNULL, jabatanVARCHAR(20)NOTNULL, mulaiVARCHAR(30)NOTNULL, masa VARCHAR(30)NOTNULL, useridVARCHAR(10)NOTNULL, passwordVARCHAR(10)NOTNULL )”);

If($buat_tabel){

Echo”Tabel karyawan berhasil dibuat”; }else{

Echo”Tabel karyawan gagal dibuat”; }

(33)

TABEL SISWA

Tabel 2.2 Struktur tabel siswa

Field name Type Field

Size Keterangan

Id int 2 Nomor id siswa (primary

key, index)

nama varchar 30 Nama siswa

sex varchar 10 Jenis kelamin

alamat varchar 200 Alamat siswa tempat_lahir varchar 20 Tempat lahir siswa tgl_lahir int 30 Tanggal lahir siswa

agama varchar 20 Agama siswa

telepon varchar 15 Nomor telepon siswa pendidikan varchar 30 Pendidikan terakhir siswa asal_sekolah varchar 50 Asal sekolah siswa orang_tua varchar 50 Nama orang tua siswa pekerjaan varchar 100 Pekerjaan orang tua

masuk int 20 Mulai masuk

kelas varchar 20 Kelas

userid varchar 50 Userid siswa

password varchar 10 Password siswa

status int 1 Status keaktifan

Script untum membuat tabel siswa tersebut adalah sebagai berikut: <?php $host="localhost"; $userdb="root"; $passdb=""; $sambung=mysql_connect($host,$userdb,$passdb); mysql_select_db($namadb,$sambung);

(34)

id int(4) NOT NULL auto_increment, nama varchar(30) NOT NULL default '', sex varchar(10) NOT NULL default '', alamat varchar(200) NOT NULL default '', tempat_lahir varchar(20) NOT NULL default '', tgl_lahir int(30) NOT NULL default '0',

agama varchar(20) NOT NULL default '', telepon varchar(15) NOT NULL default '', pendidikan varchar(30) NOT NULL default '', asal_sekolah varchar(50) NOT NULL default '', orang_tua varchar(50) NOT NULL default '', pekerjaan varchar(100) NOT NULL default '', masuk int(20) NOT NULL default '0',

kelas varchar(20) NOT NULL default '', userid varchar(50) NOT NULL default '', password varchar(10) NOT NULL default '', status int(1) NOT NULL default '1',

PRIMARY KEY (id) )”);

If($buat_tabel){

Echo”Tabel siswa berhasil dibuat”; }else{

Echo”Tabel siswa gagal dibuat”; }

TABEL KELAS

Tabel kelas digunakan untuk menampung data-data nama kelas. Filed-field yang digunakan adalah:

Tabel 2.3 Struktur tabel kelas

Field name Type Field

Size Keterangan

Id int 3 Nomor id kelas (primary

key, index)

nama varchar 15 Nama kelas

(35)

status varchar 10 Status kelas

Script php yang digunakan untuk membuat tabel kelas tersebut adalah: <?php $host="localhost"; $userdb="root"; $passdb=""; $sambung=mysql_connect($host,$userdb,$passdb); mysql_select_db($namadb,$sambung);

$buat_tabel=mysql_query(“CREATE TABLE kelas ( id int(3) NOT NULL auto_increment,

nama varchar(15) NOT NULL default '', jenis varchar(10) NOT NULL default '', status varchar(10) NOT NULL default '', PRIMARY KEY (id)

)”);

If($buat_tabel){

Echo”Tabel kelas berhasil dibuat”; }else{

Echo”Tabel kelas gagal dibuat”; }

TABEL JURUSAN

Tabel jurusan ini khusus digunakan untuk menampung data-data nama materi. Filed-field yang digunakan adalah:

Tabel 2.4 Struktur tabel jurusan

Field name Type Field

Size Keterangan

(36)

key, index)

kode varchar 10 Kode jurusan

nama varchar 255 Nama jurusan

keterangan varchar 255 Keterangan jurusan

Script php yang digunakan untuk membuat tabel jurusan tersebut adalah: <?php $host="localhost"; $userdb="root"; $passdb=""; $sambung=mysql_connect($host,$userdb,$passdb); mysql_select_db($namadb,$sambung);

$buat_tabel=mysql_query(“CREATE TABLE jurusan ( id int(3) NOT NULL auto_increment,

kode varchar(10) NOT NULL default '', nama varchar(255) NOT NULL default '', keterangan varchar(255) NOT NULL default '', PRIMARY KEY (id)

)”);

If($buat_tabel){

Echo”Tabel jurusan berhasil dibuat”; }else{

Echo”Tabel jurusan gagal dibuat”; }

TABEL MATERI

Berikut ini adalah struktur tabel materi yang akan digunakan untuk menampung data materi:

(37)

Field name Type Field

Size Keterangan

Id int 3 Nomor id materi (primary

key, index)

nama varchar 15 Nama materi

kelas int 2 id kelas

instruktur varchar 30 Id karyawan Assisten1 Varchar 30 Id karyawan Assisten2 Varchar 30 Id karyawan

Jml_session Int 2 Jumlah pertemuan

Mulai Varchar 15 Waktu mulai pelajaran Jam_masuk Varchar 15 Jam masuk pelajaran Hari_masuk Varchar 200 Hari masuk pelajaran

Status Int 1 Status pelajaran

Script php yang digunakan untuk membuat tabel materi tersebut adalah: <?php $host="localhost"; $userdb="root"; $passdb=""; $sambung=mysql_connect($host,$userdb,$passdb); mysql_select_db($namadb,$sambung);

$buat_tabel=mysql_query(“CREATE TABLE materi ( id int(3) NOT NULL auto_increment,

nama varchar(15) NOT NULL default '', kelas int(2) NOT NULL default '0',

instruktur varchar(30) NOT NULL default '', assisten1 varchar(30) NOT NULL default '', assisten2 varchar(30) NOT NULL default '', jml_session int(2) NOT NULL default '0', mulai varchar(15) NOT NULL default '', jam_masuk varchar(15) NOT NULL default '', hari_masuk varchar(200) NOT NULL default '', status int(1) NOT NULL default '1',

(38)

)”);

If($buat_tabel){

Echo”Tabel materi berhasil dibuat”; }else{

Echo”Tabel materi gagal dibuat”; }

TABEL DATA_MATERI

Tabel data_materi ini berbeda dengan tabel materi. Tabel data_materi ini berisikan data materi saja. Berikut adalah field-field yang ada pada tabel data_materi tersebut:

Tabel 2.6 Struktur tabel data_materi

Field name Type Field

Size Keterangan

Id int 3 Nomor id materi (primary

key, index)

nama varchar 200 Nama materi

session int 2 Jumlah session

Script php yang digunakan untuk membuat tabel data_materi tersebut adalah: <?php $host="localhost"; $userdb="root"; $passdb=""; $sambung=mysql_connect($host,$userdb,$passdb); mysql_select_db($namadb,$sambung);

$buat_tabel=mysql_query(“CREATE TABLE data_materi ( id int(3) NOT NULL auto_increment,

nama varchar(200) NOT NULL default '', session int(2) NOT NULL default '0', PRIMARY KEY (id)

(39)

)”);

If($buat_tabel){

Echo”Tabel data_materi berhasil dibuat”; }else{

Echo”Tabel data_materi gagal dibuat”; }

TABEL WALISISWA

Tabel walisiswa digunakan untuk menampung data walisiswa, seperti nama, userid dan password. Berikut adalah filed-field yang ada dalam tabel walisiswa:

Tabel 2.7 Struktur tabel walisiswa

Field name Type Field

Size Keterangan

Id int 4 Nomor id wali siswa

(primary key, index)

Id_siswa varchar 4 ID siswa

Nama_siswa varchar 30 Nama siswa

nama varchar 50 Nama wali siswa

userid varchar 10 Userid wali siswa password varchar 10 Password wali siswa Script php yang digunakan untuk membuat tabel walisiswa tersebut adalah: <?php $host="localhost"; $userdb="root"; $passdb=""; $sambung=mysql_connect($host,$userdb,$passdb); mysql_select_db($namadb,$sambung);

(40)

id int(4) NOT NULL auto_increment, id_siswa int(4) NOT NULL default '0',

nama_siswa varchar(30) NOT NULL default '', nama varchar(50) NOT NULL default '', userid varchar(10) NOT NULL default '', password varchar(10) NOT NULL default '', PRIMARY KEY (id)

)”);

If($buat_tabel){

Echo”Tabel walisiswa berhasil dibuat”; }else{

Echo”Tabel walisiswa gagal dibuat”; }

TABEL ADMINISTRATOR

Tabel administrator digunakan untuk menampung data untuk administrator / administrasi, seperti nama, userid dan password. Berikut adalah filed-field yang ada dalam tabel administrator: Tabel 2.8 Struktur tabel administrator

Field name Type Field

Size Keterangan

Id int 4 Nomor id administrator

(primary key, index)

nama varchar 20 Nama Administrator

userid varchar 8 Userid administrator password varchar 8 Password administrator Script php yang digunakan untuk membuat tabel administrator tersebut adalah:

<?php

$host="localhost"; $userdb="root"; $passdb="";

(41)

$sambung=mysql_connect($host,$userdb,$passdb); mysql_select_db($namadb,$sambung);

$buat_tabel=mysql_query(“CREATE TABLE administrator ( id int(2) NOT NULL auto_increment,

userid varchar(8) NOT NULL default '', password varchar(8) NOT NULL default '', nama varchar(20) NOT NULL default '', PRIMARY KEY (id)

)”);

If($buat_tabel){

Echo”Tabel administrator berhasil dibuat”; }else{

Echo”Tabel administrator gagal dibuat”; }

(42)

PENGERTIAN SCRIPT PENDUKUNG

Setiap program yang dibuat dengan terstruktur dan sistematis pasti mengandung banyak file yang berisikan script-script dengan fungsi yang berbeda-beda. Pada bagian fungsi-fungsi tertentu dalam program kadang membutuhkan script yang mempunyai kegunaan yang sama, misalkan script yang difungsikan sebagai koneksi parogram dengan database MySQL. Jadi setiap file yang akan membaca database selalu menggunakan script ini di awal script program untuk melakukan koneksi kedatabase terlebih dahulu. Agar program efektif dan efisien tarhadap banyaknya file yang akan diakses, maka untuk fungsi yang sering digunakan secara berulang-ulang ditulis dan disimpan pada file pendukung dan dapat dipanggil dari file lain yang menbutuhkan menggunakan fungsi include ”nama_file.php”;.

SCRIPT PENDUKUNG

Script pendukung dalam file ini ada beberapa yang akan dibuat. Script tersebut akan disimpan ke dalam file, sehingga file tersebut dapat dipanggil oleh file lain yang membutuhkannya.

(43)

SCRIPT KONEKSI DATABASE

Script ini digunakan untuk melakukan koneksi dengan database. Jadi setiap ada file yang akan membaca data pada database akan memanggil file ini terlebih dahulu. Berikut adalah script koneksi database: <?php // sambung.php $host="localhost"; $userdb="root"; $passdb=""; $sambung=mysql_connect($host,$userdb,$passdb); mysql_select_db($namadb,$sambung); ?>

MEMBUAT DATA TANGGAL DAN JAM SEKARANG

Pada halaman-halaman tertentu ditampilkan data tangga atau data jam pada saat file tersebut diakses oleh user. Halaman-halaman tersebut tentunya lebih dari satu. Untuk meringkas script yang harus ditulis berulang-ulang, maka lebih efektif jika script tersebut disimpan pada file tersendiri dan dapat dipanggil oleh script yang membutuhkan. Berikut adalah script untuk membaca tanggal dan jam sekarang:

<?php

// tanggal.php $y=date("Y"); $d=date("d"); $m=date("M");

$bln=array('Januari', 'Pebruari', 'Maret', 'April', 'Mei', 'Juni', 'Juli', 'Agustus', 'September', 'Oktober', 'Nopember',

(44)

'Desember');

$bulan=$bln[$m+1]; $tahun="$y"; $jam= date("H:i:s"); $hari_ini="$d $bulan $y"; ?>

Keterangan:

Pada script ini menggunakan beberapa fungsi, yang pertama adalah fungsi date() yang digunakan untuk membaca data waktu sekarang pada server. Kemudian untuk mendeklarasikan data bulan dalam bahasa Indnesia, maka harus diterjemahkan sendiri menggunakan fungsi array() yang memiliki data nama-nama bulan dalam bahasa Indonesia.

SCRIPT CEK SESSION

Script ini digunakan untuk memeriksa data sesi, apakah sudah terdaftar apa belum. Setiap halaman yang diakses melalui formulir login oleh user anggota harus diperiksa terlebih dahulu, apakah melalui halaman login atau melalui “jalan pintas” artinya menuliskan langsung lokasi file pada bagian address pada browser. <? session_start(); if(!session_is_registered("password ")){ header("location:../index.php"); exit; } ?> Keterangan:

(45)

Script ini berisi dua fungsi utama yaitu fungsi if dan dan fungsi session_is_registerd(). Fungsi ini memeriksa keberadaan data sesi yang terdaftar. Apabila data sesi tidak terdaftar maka pengunjung akan dialihkan ke halaman index.php.

MENGHAPUS SESSION

Script ini berfungsi untuk menghapus data sesi. Apabila seorang user atau anggota meninggal halaman anggota, agar data sesi dihapus maka data sesi harus dihapus. Hal ini dilakukan agar kemanan data terjaga karena pengunjung lain tidak dapat mengakses halaman anggota tanpa melakukan login terlebih dahulu. Script yang digunakan untuk menghapus data sesi ini adalah sebagai berikut:

<? session_start(); session_destroy(); header("location:index.php"); ?> Keterangan:

Fungsi yang digunakan untuk menghapus data sesi adalah session_destroy();. Setelah data sesi terhapus maka pengunjung akan dialihkan ke halaman index.php menggunakan fungsi header();.

(46)

Halam utama dalam sebuah program berbasis web disebut juga dengan nama halaman index. Halaman ini adalah halaman yang akan diakses pertama kali oleh user. Biasanya halaman ini diberi nama index.php, index.htm, index.html dan juga dapat diberi nama index.asp.

Halaman index ini biasanya memiliki pintu-pintu yang menghubungkan ke halaman yang lain. Pintu yang menghubungkan halaman satu dengan yang lain dinamakan link. Link dalam halaman web ini dapat berupa obyek / gambar atau tulisan ditandakan dengan perubahan cursor dari gambar panah menjadi tangan menunjuk apabila melintasi sebuah link. Berikut adalah salah satu tampilan halaman index dan link yang ada di dalamnya.

(47)

Gambar 4.1 Halaman Index dan link.

Halaman utama / index ini disusun menggunakan bahasa pemrograman HTML. Untuk mendesain halaman index ini dapat menggunakan software Frontpage, dreamweaver dan masih ada beberapa lagi software sejenis.

Yang perlu diperhatikan dalam mendesain halaman web adalah: 1. Menentukan ukuran halaman web.

Ukuran standard dari halaman web adalah 800 X 600 pixel. Namun tidak ada ketentuan tentang ukuran website tersebut. Yang harus diperhatikan adalah tujuan mendesain halaman website ini salah satunya adalah memudahkan pengunjung. Dengan menggunakan ukuran standard monitor yang sering digunakan pengujung, maka pengunjung tidak perlu lagi menggerser scrol ke kanan atau ke kiri pada browser.

(48)

Pewarnaan dalam mendesain halaman web biasanya disesuaikan dengan topik atau isi dari website tersebut. Usahakan dengan menggunakan warna yang sesuai dengan misi dari website dan enak untuk dipandang.

3. Perhatikan keseimbangan dari isi halaman web tersebut, misalkan apabila disebelah kanan mengandung obyek, maka disebelah kiri juga imbangi dengan obyek atau pewarnaan yang berbeda. Hal ini dimaksudkan untuk menyeimbangkan pandangan dari pengunjung yang mengunjungi website tersebut. 4. Periksa setiap pembuatan link.

Adanya link terputus akan merugikan pengelola website, karena pengunjung akan kebingungan dan akan kehilangan informasi pada halaman-halaman yang dain dalam website Anda.

Berkut adalah salah satu contoh bentuk link yang dibuat dengan bahasa HTML:

<a href="http://localhost/siswa/administrator/index.php"> administrator</a>

Keterangan:

Setiap tag-tag HTML selalu diawali dengan tanda “<” dan diakhiri dengan “>”. Jadi karakter yang ada diantara kedua tanda tersebut dianggap sebagai tag HTML. Perhatikan pada tag html diatas yaitu tag html dengan nama link. Tag link diawali dengan huruf a href=. Karekter setelah tanda samadengan adalah nilai dari link tersebut. Nilai dari link adalah lokasi dan nama file yang akan dituju jika link tersebut diklik. Berikutnya diikuti teks “administrator” yang akan ditampilkan dihalaman website sebagai link. Yang terakhir tag link di tutup dengan tanda </a> sebagai penutup tag link.

(49)

Pada program sistem informasi manajemen pendidikan ini dibagi-bagi menjadi beberapa dibagi-bagian berdasarkan hak akses dari masing-masing user. Yang akan dibahas pertama kali adalah bagian program yang mengolah data dari user dengan hak akses paling luas, yaitu administrator atau admonistrasi. Dalam pembahasan buku ini pada masing-masing script, akan ditampilkan bagian-bagian yang perlu penjelasan saja. Untuk mencoba dan mempelajari program sepenuhnya, Anda dapat menggunakan listing program dari buku ini.

HALAMAN LOGIN

Halaman login adalah halaman paling awal yang akan diakses oleh pengujung dengan atribut sebagai administrator. Pada halaman ini memiliki beberapa obyek formulir, yaitu action, kotak teks untuk userid, kotak teks untuk password dan tombol submit untuk login. Berikut adalah tampilan halaman login untuk administrator:

(50)

Gambar 5.1 Halaman login administrator.

Halaman login administrator ini dibuat menggunakan tag-tag HTML, sehingga dapat ditampilkan di browser. Berikut adalah tag-tag HTML yang membentuk halaman login tersebut:

<table border="0" width="100%" cellspacing="0" cellpadding="0" background="../images/img_07.gif" id="table1">

<tr>

<td width="182" valign="top">&nbsp;</td> <td valign="top">

<form method="POST" action="login.php"> <hr width="95%">

<?

if($error){

(51)

Password yang Anda masukkan salah.<br> Silakan ulangi lagi.</font></p>";}

?>

<p align="center">User ID<br>

<input type="text" name="userid_admin" size="20" style="font-family: Arial; font-size: 10pt; color: #000080"></p>

<p align="center">Password<br>

<input type="password" name="password_admin" size="20" style="font-family: Arial; font-size: 10pt; color: #000080"></p> <p align="center">

<input type="submit" value="L O G I N" name="login" style="color: #000080; font-size: 10pt; font-weight: bold"></p> <hr width="95%">

</form>

<p align="left" style="margin-right: 5px">&nbsp;</td> </tr>

</table> Keterangan:

Yang perlu diperhatikan dalam membuat formulir dari tag HTML adalah obyek-obyek yang ada di dalamnya. Pada tag-tag di atas ada beberapa bagian yang harus diperhatikan. Tag formulir diawali dengan tanda <form action= …> dan iawali dengan </form>.

Tag formulir di atas memiliki beberapa obyek, yang pertama adalah kotak teks yang digunakan untuk menuliskan userid berikut <input type="text" name="userid_admin" size="20" style="font-family: Arial; font-size: 10pt; color: #000080">. Yang kedua adalah kotak teks yang digunakan untuk menuliskan password tag-nya adalah <input type="password" name="password_admin" size="20" style="font-family: Arial; font-size: 10pt; color: #000080">. Kemudian yang terakhir adalah tombol dengan tipe submit yang digunakan untuk

(52)

mengirim data userid dan password apabila diklik. Data tersebut akan dikirimkan ke file login.php sebagai script untuk memeriksa dan mencocokkan data dari formulir login dengan data yang dibaca dari tabel administrasi.

SCRIPT AUTORISASI USERID DAN

PASSWORD ADMINISTRATOR

Script yang digunakan untuk memeriksa apakah data userid dan password sesuai dengan data administrator dari tabel administrator ini disimpan ke dalam sebuah file dengan nama login.php. Berikut adalah script yang ada dalam file login.php:

<?

session_start();

include"../sambung.php";

$data=mysql_query("select * from administrator where userid='$userid_admin'"); $user=mysql_fetch_array($data); if($userid_admin ==""){ header("Location:./index.php?error=1"); }else{ if($password_admin=="$user[password]"){ $id_admin="$user[id]"; session_register("id_admin"); session_register("userid_admin"); session_register("password_admin"); header("Location:./admin.php"); }else{ header("Location:./index.php?error=1");

(53)

}} ?>

Keterangan:

Script di atas diawali dengan fungsi start_session(), Fungsi ini digunakan untuk mendeklarasikan bahwa pada file ini memiliki data sesi. Fungsi strat_session() harus dituliskan pada awal script. Apabila dituliskan pada tengah atau akhir script, fungsi ini tidak akan berjalan dan dianggap sebuah kesalahan.

Fungsi berikutnya adalah include, Fungsi ini digunakan memanggil file lain yang dibutuhkan pada script ini. Nilai dari fungsi include ini adalah “../sambung.php”, artinya pada script di file ini membutuhkan script yang ada pada file sambung.php, yaitu untuk melakukan koneksi ke database. Setelah melakukan konesi dengan database menggukanan file sambung.php, berikutnya dalah membaca data yang ada dalam tabel administrator, yaitu bagian script pada:

$data=mysql_query("select * from administrator where userid='$userid_admin'");

$user=mysql_fetch_array($data);

Langkah berikutnya adalah membuat script yang berfungsi untuk memeriksa data masukan dari formulir login yaitu userid dan password. Jika data userid yang dimasukkan kosong maka akan dialihkan kembali pada halaman login. Kemudian apabila data yang dimasukkan lengkap, maka script akan mencocokkan data userid dan password yang dikirim dari formulir login dengan data administrator yang dibaca oleh script sebelumnya seperti pada potongan script dibawah ini: if($userid_admin ==""){ header("Location:./index.php?error=1"); }else{ if($password_admin=="$user[password]"){ $id_admin="$user[id]"; session_register("id_admin"); session_register("userid_admin");

(54)

session_register("password_admin"); header("Location:./admin.php"); }else{

header("Location:./index.php?error=1"); }}

Apabila data userid dan password cocok dengan data yang dibaca dari database, maka script akan mendaftarkan id_admin, userid_admin dan password_admin ke dalam data sesi, kemudian administrator akan diarahkan ke halaman admin.php menggunakan fungsi header(). Apabila data userid dan data password tidak sesuai dengan data yang ada dalam database, maka administrator akan dialihkan ke halaman login kembali.

HALAMAN ADMIN

Halaman admin ini adalah halaman yang akan tampil apabila administrator telah login. Pada halaman ini akan menampilkan beberapa data yang ada dalam database dan juga pilihan menu berupa link untuk mengakses data-data tertentu, seperti data siswa, data karyawan, data kelas dan lain-lain.

Berikut adalah script yang digunakan untuk membaca database dan menampilkan data pada halaman admin dengan nama file admin.php tersebut:

<table border="0" width="100%" cellspacing="0" cellpadding="0" background="../images/img_07.gif" id="table1">

<tr>

<td width="182" valign="top"><p style="left: 10px; margin-right: 20px; margin-top: 2px; margin-bottom: 2px" align="left"> <font size="2">TAMBAH DATA</font></p>

<p style="margin-left: 10px; margin-right: 20px; margin-top: 2px; margin-bottom: 2px" align="left">

(55)

// Bagian untuk menampilkan menu link

?>

<font size="2"><a href="admin.php">Utama</a></font></p> <p style="margin-left: 10px; margin-right: 20px; margin-top: 2px; margin-bottom: 2px" align="left"><font size="2"><a

href="admin.php?menu=karyawan">Data

karyawan</a></font></p><p style="margin-left: 10px; margin-right: 20px; margin-top: 2px; margin-bottom: 2px" align="left">

<font size="2"><a href="admin.php?menu=siswa">Data siswa</a></font></p>

<p style="margin-left: 10px; margin-right: 20px; margin-top: 2px; margin-bottom: 2px" align="left">

<font size="2"><a href="admin.php?menu=kelas">Data kelas</a></font></p>

<p style="margin-left: 10px; margin-right: 20px; margin-top: 2px; margin-bottom: 2px" align="left">

<font size="2"><a href="admin.php?menu=jurusan">Data jurusan</a></font></p>

<p style="margin-left: 10px; margin-right: 20px; margin-top: 2px; margin-bottom: 2px" align="left">

<font size="2"><a href="admin.php?menu=materi">Data

materi</a></font><p style="margin-left: 10px; margin-right: 20px; margin-top: 2px; margin-bottom: 2px" align="left">&nbsp;<p style="margin-left: 10px; margin-right: 20px; margin-top: 2px; margin-bottom: 2px" align="left">

<font size="2"><a href="admin.php?menu=password">Ganti password</a></font><p style="margin-left: 10px; margin-right: 20px; margin-top: 2px; margin-bottom: 2px" align="left"> <font size="2"><a href="../keluar.php">Keluar</a></font></td> <td valign="top">

(56)

//batas awal if(isset($menu)){ include"$menu.php"; }else{

// membaca data pada database

include"../sambung.php";

$data1=mysql_query("select * from karyawan"); $t_karyawan=mysql_num_rows($data1);

$data2=mysql_query("select * from siswa"); $t_siswa=mysql_num_rows($data2);

$data3=mysql_query("select * from kelas"); $t_kelas=mysql_num_rows($data3);

$data4=mysql_query("select * from jurusan"); $t_jurusan=mysql_num_rows($data4);

$data5=mysql_query("select * from materi"); $t_materi=mysql_num_rows($data5);

//Ditampilkan pada tabel dengan tag-tag HTML.

?>

<table border="1" width="98%" cellspacing="0" cellpadding="0" id="table3">

<tr>

<td align="center" bgcolor="#93CDF5">Keterangan</td> <td width="183" align="center" bgcolor="#93CDF5"> Jumlah Data</td>

</tr> <tr>

(57)

<td>

<p style="margin-left: 5px; margin-right: 5px"> <font size="2">Jumlah data karyawan</font></td>

<td width="183"><p style="margin-left: 5px; margin-right: 5px"> <font size="2"><?=$t_karyawan?> orang</font></td>

</tr> <tr>

<td><p style="margin-left: 5px; margin-right: 5px"><font size="2">Jumlah data siswa</font></td>

<td width="183"><p style="margin-left: 5px; margin-right: 5px"> <font size="2"><?=$t_siswa?> siswa</font></td>

</tr>

<tr><td><p style="margin-left: 5px; margin-right: 5px"> <font size="2">Jumlah data kelas</font></td>

<td width="183"><p style="margin-left: 5px; margin-right: 5px"> <font size="2"><?=$t_kelas?> kelas</font></td>

</tr>

<tr><td><p style="margin-left: 5px; margin-right: 5px"> <font size="2">Jumlah data jurusan</font></td>

<td width="183"><p style="margin-left: 5px; margin-right: 5px"> <font size="2"><?=$t_jurusan?> jurusan</font></td>

</tr>

<tr><td><p style="margin-left: 5px; margin-right: 5px"> <font size="2">Jumlah data materi</font></td>

<td width="183"><p style="margin-left: 5px; margin-right: 5px"> <font size="2"><?=$t_materi?> materi</font></td>

(58)

</tr> </table> <? } ?> </td></tr></table> Keterangan:

Ada beberapa bagian yang perlu diperhatikan dalam script di atas. Yang pertama adalah pada saat membuat menu link. Pada masing-masing menu link memiliki variabel dengan nama menu dan memiliki nilai yang berbeda-beda sesuai nama link. Contohnya adalah seperti pada potongan script di bawah ini:

<a href="admin.php?menu=siswa">Data siswa</a>

Perhatikan tag HTML yang membentuk link di atas, nilai dari link tersebut adalah admin.php?menu=siswa. Artinya apabila link diklik, maka pengunjung akan diarahkan ke file admin.php yaitu file itu sendiri dengan variabel menu yang memiliki nilai siswa yang akan membedakan data tampilannya.

Yang kedua adalah bagian script if(isset($menu)){

include"$menu.php"; }else{

// membaca data pada database

include"../sambung.php";

$data1=mysql_query("select * from karyawan"); $t_karyawan=mysql_num_rows($data1);

(59)

awal script menggunakan fungsi if dengan memeriksa keberadaan variabel menu. Artinya jika pengunjung mengakses file admin.php dari menu link maka memiliki variabel menu, maka script akan membaca file lain menggunakan fungsi include yaitu include"$menu.php";. Jika nilai variabel menu adalah siswa maka script tersebut akan membaca file siswa.php.

Apabila variabel menu tidak ditemukan, maka script akan membaca data keseluruhan dari database seperti pada bagian

include"../sambung.php";

$data1=mysql_query("select * from karyawan"); $t_karyawan=mysql_num_rows($data1);

Berikut adalah tampilan halaman admin:

Gambar 5.2 Tampilan halaman admin

Yang perlu diperhatikan pada halaman admin ini adalah menu link yang ada disebelah kiri. Di sini ada beberapa pilihan menu, diantaranya data karyawan, data siswa, data kelas, data jurusan dan data materi. Setiap akan mengakses halaman data tertentu seorang

(60)

administrator harus menekan menu link tersebut. Untuk lebih jelasnya perhatikan gambar 5.3 berikut:

Gambar 5.3 tampilan pilihan menu link.

HALAMAN DATA KARYAWAN

Halaman ini digunakan untuk mengakses dan menampilkan data karyawan yang ada dalam database. Pada program halaman ini tidak berdiri sendiri, namun akan dipanggil dari file lain yaitu file admin.

Menu untuk melihat data karyawan

Menu untuk melihat data siswa Menu untuk melihat

data kelas

Menu untuk melihat data jurusan

Menu untuk melihat data materi

(61)

Halaman data karyawan diberi nama karyawan.php, akan muncul apabila dipanggil menggunakan menu link yang ada pada halaman

atau file admin.php dengan alamat / nilai

admin.php?menu=karyawan.

Berikut adalah script yang digunakan untuk membaca dan menampilkan data karyawan:

<?

include"../sambung.php"; if($act=="edit"){

$data1=mysql_query("select * from karyawan where id='$id_data'");

$d=mysql_fetch_array($data1); }

if(!isset($act)){

$data=mysql_query("select id from karyawan order by id desc limit 1"); $userbaru=mysql_fetch_array($data); $baru=101+$userbaru[0]; $userid="KAR-$baru"; }else{ $userid="$d[userid]"; } ?>

<table border="1" width="98%" cellspacing="0" cellpadding="0" id="table4">

<tr>

<td align="center" bgcolor="#93CDF5" colspan="2">Tambah Data Karyawan</td></tr><form method="POST"

(62)

action="proses_tambah.php">

<tr><td width="25%"><p style="margin-left: 5px; margin-right: 5px">

<font size="2">Nama</font></td>

<td width="74%"><input type="text" name="nama" size="73" style="color: #000080; font-size: 10pt; font-family: Arial; border: 1px solid #FFFFFF; left: 4px; right: 4px; padding-top: 1px; padding-bottom: 1px" value="<?=$d[nama]?>"></td> </tr>

<tr>

<td width="25%">

<p style="margin-left: 5px; margin-right: 5px"><font size="2">Alamat</font></td><td width="74%">

<input type="text" name="alamat" size="73" style="color: #000080; font-size: 10pt; font-family: Arial; border: 1px solid #FFFFFF; padding-left: 4px; padding-right: 4px; padding-top: 1px; padding-bottom: 1px" value="<?=$d[alamat]?>"></td>

</tr>

<tr><td width="25%"><p style="margin-left: 5px; margin-right: 5px">

<font size="2">Tempat tanggal lahir</font></td><td width="74%"> <input type="text" name="ttl" size="73" style="color: #000080; font-size: 10pt; font-family: Arial; border: 1px solid #FFFFFF; left: 4px; right: 4px; top: 1px; padding-bottom: 1px" value="<?=$d[ttl]?>"></td>

</tr>

<tr><td width="25%">

<p style="margin-left: 5px; margin-right: 5px"> <font size="2">Agama</font></td><td width="74%">

Figur

Memperbarui...

Referensi

Memperbarui...

Related subjects :