Filter Pilihan Tanggal pada ComboBox

Share/Bookmark

Pada jauh sebelumnya, saya pernah menuliskan artikel bagaimana Membuat pilihan tanggal dengan ComboBox pada PHP. Nah, sekarang saya akan memberikan contoh, bagaimana cara mem-filter dari pilihan tangal tersebut. Sebelumnya saya akan menjelaskan dulu apa sih yang di maksud filter di sini? bingung Filter ini adalah penyaring dari suatu data yang dipilih pengguna. Dalam contoh kali ini, pengguna akan memilih tanggal yang diinginkan. Misalnya saja pemilihan tanggal lahir.

Nah, di sini yang akan saya bahas, bagaimana bila pengguna melakukan pemilihan tanggal lahir 31 April? mikir Lalu bagaimana jika ada yang melakukan pemilihan 31 Februari? kaget Jelas tidak ada kan? Ok, sekarang langsung saja kita mulai. Dengan memanfaatkan script yang sudah ada, maka kita tinggal tambahkan fungsi form.
<form action="#" method="POST">
<?php
//array yang digunakan pada ComboBox bulan
$bln=array(1=>"Januari","Februari","Maret","April","Mei",
"Juni","July","Agustus","September","Oktober",
"November","Desember");

//membuat tanggal 1-31 pada ComboBox
echo "Tanggal:<select name=tanggal>
<option value=01 selected>01</option>";
for($tgl=2; $tgl<=31; $tgl++){
$tgl_leng=strlen($tgl);
if ($tgl_leng==1)
$i="0".$tgl;
else
$i=$tgl;
echo "<option value=$i>$i</option>";}
echo "</select>";

//membuat bulan ComboBox
echo "<select name=bulan>
<option value=Januari selected>Januari</option>";
for($bulan=2; $bulan<=12; $bulan++){
echo "<option value=$bulan>$bln[$bulan]</option>";}
echo "</select>";

//Membuat tahun 1900 sampai sekarang pada ComboBox
$now=date("Y");
echo "<select name=tahun>
<option value=1900 selected>1900</option>";
for($thn=1901; $thn<=$now; $thn++){
echo "<option value=$thn>$thn</option>";}
echo "</select>";
?>
<br><input type="submit" value="Pilih"/>
</form>

Tulisan yang berwarna biru di atas, merupakan tambahan fungsi form yang perlu di tambahkan. Setelah itu, Letakkan kode berikut ini di bawah script di atas.
<?php
$bulan=$_POST[bulan];$tanggal=$_POST[tanggal];$tahun=$_POST[tahun];
if(((($bulan==4)||($bulan==6)||($bulan==9)||($bulan==11))&&($tanggal==31))||
(($bulan==2)&&($tahun%4==0)&&(($tanggal==30)||($tanggal==31)))||
(($bulan==2)&&($tahun%4!=0)&&(($tanggal==29)||($tanggal==30)||($tanggal==31)))){
if((($bulan==4)||($bulan==6)||($bulan==9)||($bulan==11))&&($tanggal==31)){
echo "<table bgcolor='#FFFF99' width='100%'><tr>
<td>&#8226; Penulisan Tanggal 31 tidak sesuai dengan bulan.</td>
</tr></table>";
}
if(($bulan==2)&&($tahun%4==0)&&(($tanggal==30)||($tanggal==31))){
echo "<table bgcolor='#FFFF99' width='100%'><tr>
<td>&#8226; Pengaturan februari kabisat.</td>
</tr></table>";
}
if(($bulan==2)&&($tahun%4!=0)&&(($tanggal==29)||($tanggal==30)||($tanggal==31))){
echo "<table bgcolor='#FFFF99' width='100%'><tr>
<td>&#8226; Pengaturan februari bukan kabisat.</td>
</tr></table>";
}
if(($bulan=="bulan")||($tanggal=="tanggal")||($tahun=="tahun")){
echo "<table bgcolor='#FFFF99' width='100%'><tr>
<td>&#8226; Belum di pilih.</td>
</tr></table>";
}
}
else{
echo "Sukses";
}
?>

Beri nama file tersebut sesuai dengan keinginan anda, asalkan menggunakan extensi *.php. Untuk lebih jelasnya, anda bisa melihat halaman http://xinthinx.us/demo/filter-combo/. Selamat mencoba nyengir Untuk file lengkapnya, download link di bawah ini.

download

1 Komentar:


Komentar anda sangat berguna bagi kemajuan blog ini.
Anonymous said...

klo ingin menampilkan 2 tanggal gimana mas ,?contoh kasus ,ingin menampilkan tgl penyewaan dan pengembalian/tgl cekin dan cekout,,trus cara menyimpannya ke database gimana mas??mohon petunjuknya mass,,

Post a Comment

Xinthinx Blog Tutorial © 2008 Template by Dicas Blogger, emoticon from Yahoo! and KASKUS.

TOPO