Pernahkan menyimpan tanggal di database dengan format integer? seperti di bawah ini? Bagaimana cara mengubah format agar bisa menjadi date? Mari kita simak tulisan berikut. Dikondisikan : nama table : tbl_article Field tanggal artikel : inputdate 1. Back up table terlebih dahulu Select * into tbl_article_20130730 from tbl_article 2. Buat field baru nama field : temp_date Alter table tbl_article Add temp_date datetime 3. Update field yang telah dibuat dengan format tanggal dengan value diambil dari field tanggal dengan tipe integer set temp_date = DATE_FORMAT(FROM_UNIXTIME(posting_date), '%d-%m-%Y') 4. Pastikan field temp_date diisi dengan data yang benar, setelah itu ganti format field inputdate menjadi datetime Alter table tbl_article Modify inputdate datetime 5. Update field inputdate dengan data yang tersimpan di field temp_date Update tbl_article Set posting_date = temp_date semoga tutorial singkat ini bisa bermanfaat untuk anda yang bingung dan untuk anda yang lupa bisa mengingat kembali cara mengubah timezone sesuai dengan tempat kita berada di XAMPP. Selamat mencoba dan selamat belajar. Secara default tanggal database yang ditampilkan di file / situs PHP akan membentuk format tanggal US misalnya 2017-05-29, tapi format tanggal tersebut dapat diubah menjadi format tanggal negara lain misalnya Indonesia seperti ini: 29-05-2017 atau 29 Mei 2017 atau bahkan menampilkan harinya seperti Senin 29 Mei 2017. Struktur Kolom TanggalJika ingin mengambil data tanggal yang ada di database, pastikan kolom tanggal di database tersebut diatur Jenis nya menjadi DATETIME. Silahkan buka kembali database nya misalnya di phpMyAdmin kemudian buka kolom tanggal yang bersangkutan didalam table database dan atur Jenis / Type menjadi DATETIME kemudian lanjutkan tutorial ini. ads by posciety Mengatur Timezone DefaultFormat tanggal dapat disesuaikan bagaimana kalian ingin menampilkannya yang terpenting pastikan tanggal yang ditampilkan menunjukkan tempat tinggal / base kalian misalnya di Jakarta maka pada file / situs PHP yang menampilkan tanggal silahkan berikan kode <?php ob_start(); session_start(); include "includes/config.php"; include "includes/head.php"; date_default_timezone_set("ASIA/JAKARTA"); ?> Kode timezone tersebut merupakan penentu tanggal default untuk file PHP yang bersangkutan yaitu ASIA/JAKARTA (+7), jadi setiap tanggal yang ditampilkan akan mengacu pada waktu Jakarta (+7). Baca Juga: Apa Itu memory_limit dan Bagaimana Cara Mengaturnya di cPanel ? Cara Mengatur max_input_time di cPanel Cara Mengatur max_execution_time di cPanel Cara Aktifkan php-mbstring di VPS (WHM panel) Gak tau berapa UTC Timezone wilayah saya saat ini ? Lihat disini untuk mengetahui timezone UTC. Bagaimana cara penulisannya jika saya bukan berasal dari Timezone +7 (ASIA/JAKARTA) ? Lihat disini untuk mengganti ASIA/JAKARTA misalnya menjadi ASIA/BRUNEI atau yang lainnya. Sampai sini, sekarang tanggal yang ditampilkan akan mengikuti tanggal terbit data tersebut dan mengacu ke Timezone yang ditentukan, jadi ketika dibuka di wilayah lain tetap akan mengacu pada Timezone Default diatas. Mengganti Format TanggalBiasanya ketika menampilkan tanggal dari database cukup seperti ini Dengan begitu maka tanggal sekarang akan menampilkan tanggal yang ada di kolom date pada table database dengan mengacu pada Timezone +7 seperti yang diatur diatas, untuk merubah formatnya maka ganti menjadi seperti ini: Silahkan ganti format d-F-Y dengan format yang diinginkan, tidak hanya posisinya saja yang dapat digeser (misalnya jadi F-d-Y) tapi bisa juga mengganti besar kecilnya huruf. Lihat daftar dibawah ini: KarakterHasilDeskripsid01, 02, 03, 12, 30Menampilkan tanggal berupa angka Gunakanlah kode pemformatan diatas untuk menentukan tanggal, hari, bulan dan tahun. Mengganti Bahasa Tanggal & Bulan Jika diperhatkan pada hasil contoh diatas sudah memiliki format yang diinginkan tapi masih menggunakan bahasa English US, untuk menerjemahkan nama hari dan bulan ini kita dapat menerjemahkannya menggunakan function. Salin kode berikut: <?php function tgl_indonesia($date){ /* ARRAY u/ hari dan bulan */ $Hari = array ("Minggu", "Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu",); $Bulan = array ("Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "Oktober", "November", "Desember"); /* Memisahkan format tanggal bulan dan tahun menggunakan substring */ $tahun = substr($date, 0, 4); $bulan = substr($date, 5, 2); $tgl = substr($date, 8, 2); $waktu = substr($date,11, 5); $hari = date("w", strtotime($date)); $result = $Hari[$hari].", ".$tgl." ".$Bulan[(int)$bulan-1]." ".$tahun." ".$waktu." WIB"; return $result; } /* by RioBermano.Com */ ?> Tempelkan di file baru atau di file yang menampilkan tanggal, jika membuat file baru silahkan save file baru tersebut dengan nama yang diinginkan jangan lupa ekstensi file nya berupa .php (misalnya function.php) kemudian panggil file tersebut di dalam file yang menampilkan tanggal menggunakan include seperti contoh code diatas bagian terdapat include di barisan ke 5 (lima) & 6 (enam).
Pada function ini diberi nama tgl_indonesia, nama function ini akan sangat berarti dalam penerapan tanggal seperti tadi dan menerjemahkannya ke bahasa Indonesia atau bahasa yang telah diatur didalam file function ini. Pada barisan ke-14 ada tulisan WIB itu hanya tambahan saja ketika menampilkan waktu (menit/jam) akan ditambahkan WIB dibelakangnya, silahkan ganti dengan waktu lokal kalian atau hapus saja. Kembali ke tempat dimana menampilkan tanggal, silahkan ganti cara menampilkan tanggal tadi menjadi seperti ini: |