Mohon maaf, mungkin terdapat beberpa artikel yang contohnya tidak ada dan tidak dapat didownload bahkan sudah tidak dapat diterapkan. Hal ini dikarenakan artikel tersebut ditulis babaerapa tahun lalu (jadul).

28 November 2010

Menyimpan Pilihan Tanggal ComboBox ke MySQL

Nah, setelah beberapa waktu lalu saya menulis artikel mengenai tanggal dengan combobox yang fungsinya yaitu memilih tanggal, bulan dan tahun dengan combobox, maka kali ini saya akan menuliskan artikel bagaimana cara menyimpan pilihan tanggal tersebut ke database. Dalam hal ini kita akan menyimpan ke database MySQL. Masih menggunakan bahasa pemrograman PHP.

Dalam kasus ini, kita akan menggunakan coding sebelumnya yang dapat dilihat pada artikel filter pilihan tanggal pada combobox. Ok, langsung saja kita bahas coding tersebut. Pertama-tama kita akan membuat table database terlebih dahulu dengan asumsi bahwa database sudah terbuat dan bernama blog.
CREATE TABLE `tanggal` (
`id` int(5) NOT NULL auto_increment,
`terpilih` date NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
Setelah database terbentuk, sekarang kita membuat beberapa coding yang fungsinya berbeda namun masih berada pada satu file. Coding yang pertama ini merupakan koneksi antara PHP dengan database.
<?php
$server = "nama_server";
$username = "nama_user_server";
$password = "pasword_user";
$database = "nama_database_yang_digunakan";

// Koneksi dan memilih database di server
mysql_connect($server,$username,$password) or die("Koneksi gagal");
mysql_select_db($database) or die("Database tidak bisa dibuka");
?>
  • nama_server adalah server database yang digunakan. Secara default adalah localhost.
  • nama_user_server adalah nama user yang dapat mengakses database tersebut. Secara default adalah root.
  • password_user adalah password user yang dapat mengakses database. Secara default kosong.
  • nama_database_yang_digunakan adalah nama database yang digunakan. Pada kasus kali ini, database yang digunakan bernama blog.
Setelah itu, letakkan coding berikut di bawah coding koneksi. Coding ini untuk menampilkan pilihan tanggal pada combobox
<form 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=1 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" name="pilih"/>
</form>
Setelah itu, tambahkan lagi beberapa baris coding yang berfungsi sebagai proses untuk menyimpan ke database MySQL. Letakkan coding berikut ini di bawah coding untuk pilihan tanggal dengan combobox
<?php
//jika tombol pilih di klik
if($_POST[pilih]=="Pilih"){
$bulan=$_POST[bulan];$tanggal=$_POST[tanggal];$tahun=$_POST[tahun];
//filter pilihan tanggal
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>";
}
}
//jika pilihan benar maka proses simpan dalam database
else{
mysql_query("insert into tanggal(terpilih) values ('$tahun-$bulan-$tanggal')");

echo "Berhasil disimpan";
echo "<meta http-equiv='refresh' content='3;url=index.php'>";

}
}
?>
Pada intinya, ketiga coding di atas, diletakkan dalam satu file. Mudah bukan? Selamat mencoba nyengir. Sebagai contoh hasil, silahkan buka halaman ini http://xinthinx.us/demo/save-date/.

download

8 comments:

  1. bos kalau misal input ke tabel mysSQl : nama, alamat, dan tanggal lahir dengan php yg berbeda bagaimana caranya?

    misal : form input di input.php
    perintah insertnya di insertdata.php

    mohon batuannya kalau panjang kirim via email aja bos ke joy.link7@gmail.com

    thanks

    ReplyDelete
  2. problem solved ya gan dengan chatingan tadi :)

    ReplyDelete
  3. gan kalo misalnya kita mau nyimpen tanggal di table yg udah kita buat sebelumnya gimana?misalnya saya bikin tabel namanya customer nah didalem customer itu kan ada field salah 1nya tanggal, nah cara nyimpennya gimana?

    ReplyDelete
  4. kan pake insert query biasa aja gan, gini aja

    mysql_query("insert into nama_tabel(nama_field) values ('$tahun-$bulan-$tanggal')");

    lalu values-nya pada contoh di atas kan ngambil:
    - tahun = $tahun
    - bulan = $bulan
    - tanggal = $tanggal

    terus klo digabungin jadinya gini gan $tahun-$bulan-$tanggal

    contoh diatas itu klo tipe data pada field adalah 'date', jadi disesuaikan gitu deh biar formatnya gak bentrok.

    ReplyDelete
  5. Anonymous29/9/12 18:19

    maaf gan mau nanya klo ingin menampilkan dua tanggal gimana,,???tolong bantuannya soalnya lagi garap TA kok kejanggal dengan scrip tanggal nii,,

    misal tgl chekin dan chekout ,trus cara pengurangannya buat lama menginapnya gimana gan ???

    ReplyDelete
  6. Anonymous15/8/13 18:35

    Gan, kalo dibalik gini gimana gan.. Menampilkan data dari combobox yang dipilih user?

    Jadi user pilih tanggal, tar, data pada tanggal itu yang dimunculkan..

    ReplyDelete
  7. matur tengkiyu sekali ilmunya mass..

    ReplyDelete