Halaman Utama Berbasis Website

4.2.2. Berbasis Website

Penggunaan sarana website sebagai antar muka sistem dikarenakan sistem penyajian data ini ditujukan untuk menjadi website dari www.smaululalbababsensi.sch.id yang merupakan website utama SMA Ulul Albb. Website ini terdiri atas dua halaman yaitu Halaman User, Halaman Administrator. Halaman User adalah halaman yang pertama kali diakses oleh pengunjung website yang merupakan inti dari sistem penyajian data ini. Sedangkan Halaman Administrator adalah halaman bagi administrator website untuk mengelola content website. Halaman Administrator diakses melalui back-end.

4.2.2.1. Halaman Utama

Halaman Utama memiliki tampilan seperti yang ditunjukkan pada Gambar 4.1 berikut ini. Gambar 4.6. Halaman Utama head meta http-equiv=Content-Type content=texthtml; charset=UTF- 8 title ULUL ALBB LOGINtitle link rel=stylesheet type=textcss href=cssjqueryjquery.ui.all.css media=screen link rel=stylesheet type=textcss href=csstable_data.css media=screen link rel=stylesheet type=textcss href=csslightboxstyle.css media=screen link rel=stylesheet type=textcss href=cssstyle.css title=style_blue media=screen link rel=alternate stylesheet type=textcss href=cssstyle_green.css title=style_green media=screen link rel=alternate stylesheet type=textcss href=cssstyle_red.css title=style_red media=screen link rel=alternate stylesheet type=textcss href=cssstyle_purple.css title=style_purple media=screen --[if IE]script type=textjavascript src=jsexcanvas.jsscript[endif]-- script type=textjavascript src=jsjquery- 1.4.2.jsscript script type=textjavascript src=jsjquery-ui- 1.8.2.jsscript script type=textjavascript src=jsjquery.fancybox- 1.3.2.jsscript script type=textjavascript src=jsjquery.validate.js script script type=textjavascript src=jsjquery.wysiwyg.js script script type=textjavascript src=jsjquery.dataTables.jsscript script type=textjavascript src=jsjquery.flot.jsscript script type=textjavascript src=jsjquery.flot.stack.jsscript script type=textjavascript src=jsstyleswitch.jsscript script type=textjavascript src=jscustom.jsscript head body div id=wrapper ul id=topbar lia class=button white fl title=preview href=index.phpspan class=icon_single previewspanali li class=s_1li li class=logostrongLUL ALBBstrong LOGIN userli ul div id=content-login div class=logodiv h2 class=header-loginForm Login h2 form id=box-login action=cek_login.php method=postp label class=req username label br input type=text name=username value= id=username p p label class=req password label br input type=password name=password value= id=password p p class=fl input type=checkbox name=remember value=1 id=remember label class=rem Remember me label p p class=fr input type=button value=Error test class=button black id=error input type=submit value=Login class=button themed id=login p div class=cleardiv form a class=forgot href= Forgot password? a span class=message errorError Test strongUsernamestrong andor strongPasswordstrong are wrongspan span class=message informationhanya tekan strongLoginstrong atau strongError Teststrongspan div div div id=footer p class=copy flCopyright 2010strong ULUL ALBB strongLOGIN user. All rights reserved.p ul class=button language_button white fr li class=icon_single language flli li class=clearli ul body html } Ketika tombol Login ditekan, maka sesuai dengan action form Login di atas, inputan user akan dikirim dengan metode POST, kemudian akan akan diperiksa dengan skrip di bawah ini. ?php include configkoneksi.php; include configfungsi_anti_injeksi.php; ifempty_POST[username] OR empty_POST[password] headerlocation:index.php?warning=1; elseifstrlen_POST[password]4 headerlocation:index.php?warning=2; elseifctype_alnum_POST[username] OR ctype_alnum_POST[password] headerlocation:index.php?warning=3; else { username=anti_injection_POST[username]; cari_username=mysql_querySELECT FROM user WHERE kode_user=username; ketemu_username=mysql_num_rowscari_username; ifketemu_username0 { password=md5anti_injection_POST[password]; verifikasi=mysql_querySELECT FROM user WHERE kode_user=username AND password_user=password; cocok=mysql_num_rowsverifikasi; ifcocok0 { r=mysql_fetch_arrayverifikasi; ifr[blokir_user]==N { session_start; _SESSION[login_date] =dated-m-Y; _SESSION[login_time] =dateH:i:s; _SESSION[kode_user] =r[kode_user]; _SESSION[nama_user] =r[nama_user]; _SESSION[password_user] =r[password_user]; _SESSION[level_user] =r[level_user]; session_regenerate_id; id_session=session_id; _SESSION[session_user] =id_session; mysql_queryUPDATE user SET session_user=id_session WHERE kode_user=r[kode_user]; headerlocation:usermedia.php?module=home; } else headerlocation:index.php?warning=4; } else headerlocation:index.php?warning=5; } else headerlocation:index.php?warning=6; } ? inputan user tadi akan diperiksa dulu, apakah berupa huruf atau angka, inputan disaring lagi dengan fungsi anti_injeksi yang penulis tambah. Fungsi ini mengandung fungsi-fungsi bawaan PHP, seperti mysql_real_escape_string, stripslashes, strip_tags dan htmlspecialchars yang berguna untuk menyaring setiap karakter atau tag membahayakan yang terkandung dalam inputan user. Setelah lolos dari filter, barulah username yang dimasukkan oleh user tadi diperiksa apakah ada atau tidak di dalam database. Proses pemeriksaan ini sekaligus mengambil semua data user dari database, yang apabila proses login ini berhasil, semua data tersebut akan langsung didaftarkan pada session untuk memberikan hak akses pada user. Selain username dan password, proses login juga memeriksa status user di blokir atau tidak, sebelum memberikan hak akses. Untuk lebih jelasnya dapat dilihat pada potongan script berikut ini: Statement header location:usermedia.php?module=home; di dalam potongan script di atas menandakan apabila user berhasil melakukan proses Login, maka dia akan diarahkan pada halaman lain yang merupakan Halaman User.