Masino Sinaga

Web Development and PHPMaker

Anda di sini: Beranda / PHPMaker / Mengetahui Tanggal Akhir dari Tanggal Awal Ditambah Sekian Hari di PHPMaker
Begini Mudahnya Menampilkan DatePicker JSCalendar di Custom Files PHPMaker
Supaya Modal Dialog Edit Tetap Terbuka Setelah Proses Edit Record di PHPMaker

Mengetahui Tanggal Akhir dari Tanggal Awal Ditambah Sekian Hari di PHPMaker

Jum, 23 Desember 2016 oleh Masino Sinaga 19 Komentar

Sebagai Web Developer, pernahkah Anda mengalami kesulitan ketika ingin mengetahui nilai Tanggal Akhir berdasarkan nilai Tanggal Awal yang ditambahkan dengan nilai sekian hari pada Aplikasi Web yang Anda buat?

Jika ya, maka trik pada artikel ini akan membuktikan kepada Anda bahwa dengan menggunakan PHPMaker, kita dapat mengetahuinya dengan sangat cepat, mudah, dan menyenangkan.

Misalkan nilai Tanggal Awal adalah 23 Desember 2016 pukul 12:38:50, lalu ditambahkan dengan nilai 12 hari, maka nilai Tanggal Akhir adalah 4 Januari 2017 pukul 12:38:50. Artinya, ketika Pengguna memilih nilai Tanggal Awal, lalu memasukkan nilai jumlah hari, maka nilai Tanggal Akhir akan otomatis terbentuk di sisi browser Pengguna.

Baiklah, supaya tidak semakin penasaran, langsung saja ikuti langkah-langkah berikut ini dengan teliti. Jangan sampai ada yang telolet, eh… terlewat, ya! 😀

Pertama sekali, buatlah sebuah Database di MySQL, lalu jalankan script SQL berikut untuk membuat satu buah table di dalamnya:

CREATE TABLE `table1` (
  `Kode` char(3) NOT NULL,
  `Tanggal_Awal` datetime NOT NULL,
  `Nilai_Tambah` int(11) NOT NULL,
  `Tanggal_Akhir` datetime NOT NULL,
  PRIMARY KEY (`Kode`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

Kedua, buatlah sebuah project PHPMaker baru, lalu arahkan ke Database tadi. Pada panel Database, pastikan Anda sudah memberi tanda centang dan memilih object table1.

Ketiga, aktifkan extension JSCalendar dari menu Tools -> Extensions.

Keempat, klik tab Fields lalu klik field Tanggal_Awal, pastikan dari panel Edit Tag, Anda sudah memilih Date dari bagian Validation -> Validate. Pastikan juga pilihan Use date/time picker dan Required sudah ada tanda centangnya. Setelah itu, pada panel View Tag, pastikan Anda sudah memilih Date/Time dari property Format, dan juga sudah memilih YmdHis dari property Date/Time named format.

Kelima, lakukan hal yang sama seperti langkah keempat tadi untuk field Tanggal_Akhir.

Keenam, klik tab Code (Server Events, Client Scripts and Custom Templates), lalu lompat ke lokasi Client Scripts -> Global -> Pages with header/footer -> Global Code, kemudian salin function Javascript berikut ke editor kode tersebut:

function addDays(date, days) {
	var tt = date;
	var time = "";
	if (tt.toString().length > 8) {
		time = tt.substring(11);
	} else {
		time = "";
	}
	var begin_date = new Date(date);
	var newdate = new Date(begin_date);
	newdate.setDate(newdate.getDate() + days);
	var dd = newdate.getDate();
	if (dd.toString().length == 1) dd = "0" + dd;
	var mm = newdate.getMonth() + 1;
	if (mm.toString().length == 1) mm = "0" + mm;
	var y = newdate.getFullYear();
	var sFormattedDate = "";
	sFormattedDate = y + EW_DATE_SEPARATOR + mm + EW_DATE_SEPARATOR + dd;
	return sFormattedDate + ' ' + time;
}

Ketujuh, salin kode jQuery berikut ke dalam lokasi Client Scripts -> Table-Specific -> Add/Copy Page -> Startup Script:

$(document).ready(function() {
	$("#x_Tanggal_Awal").change(function() {
		var sTgl = $("#x_Tanggal_Awal").val();
		var iVal = parseInt($("#x_Nilai_Tambah").val());
		if ($("#x_Nilai_Tambah").val() != "")
		$("#x_Tanggal_Akhir").val(addDays(sTgl, iVal));
	});
	$("#x_Nilai_Tambah").keyup(function(event) {
		var sTgl = $("#x_Tanggal_Awal").val();
		var iVal = parseInt($("#x_Nilai_Tambah").val());
		if (iVal > 0) {
			$("#x_Tanggal_Akhir").val(addDays(sTgl, iVal));
		} else {
			$("#x_Tanggal_Akhir").val("");
		}
	});
});

Kedelapan, lakukan hal yang sama seperti langkah ketujuh tadi pada lokasi Client Scripts -> Table-Specific -> Edit Page -> Startup Script.

Kesembilan, generate semua file script menggunakan PHPMaker, seperti biasa.

Setelah proses generate selesai, sekarang jalankan Aplikasi Web dari browser favorit Anda. Cobalah menambah data dengan mengklik tombol Add (+), lalu pilih tanggal pada bagian Tanggal Awal, masukkan nilai yang Anda inginkan di bagian Nilai Tambah, lalu perhatikan di bagian Tanggal Akhir, nilai tanggal akan otomatis terisi berdasarkan nilai Tanggal Awal ditambah nilai jumlah hari pada Nilai Tambah.

Misalkan kita menggunakan contoh di atas. Nilai pada bagian Tanggal Awal terisi 2016-12-23 12:38:50, lalu Anda memasukkan atau mengetikkan nilai 12 pada bagian Nilai Tambah, maka nilai pada Tanggal Akhir akan terisi menjadi 2017-01-04 12:38:50.

Dalam hal ini, maka disarankan untuk selalu menggunakan format data Tanggal dengan urutan: Tahun, Bulan, Tanggal, Jam, Menit, dan Detik.

Hanya dengan menambahkan sedikit kode itu saja, dan juga mengatur beberapa property dari bagian Field Setup project PHPMaker, kita sudah dapat menghasilkan fitur seperti itu. Selebihnya akan ditangani oleh PHPMaker.

Betapa mudah, cepat, dan menyenangkan sekali menggunakan PHPMaker, bukan? 😉

Ditempatkan di bawah: PHPMaker Ditag dengan:Belajar PHPMaker, Client Scripts, PHPMaker Indonesia, Startup Script, Tutorial PHPMaker

Masino Sinaga

Web Developer pengguna PHPMaker untuk membangun Aplikasi Web sejak tahun 2004. Sampai sekarang masih aktif dan rajin membagikan pengalamannya menggunakan PHPMaker melalui situs masinosinaga.com, ilovephpmaker.com, dan phpmakerprojects.com.

Begini Mudahnya Menampilkan DatePicker JSCalendar di Custom Files PHPMaker
Supaya Modal Dialog Edit Tetap Terbuka Setelah Proses Edit Record di PHPMaker

Komentar

  1. joul mengatakan

    Ming, 15 Januari 2017 pada 5:46 pm

    Apakah Pengaturan check duplikat yang terdapat di pengaturan-
    (Field / Edit Tag Attributes / Check duplicate )
    Bisa di custom ?
    Misalnya:
    Saya Punya satu buah tabel ‘cicilan’ detilnya seperti ini :
    ============================
    CREATE TABLE `cicilan` (
    `IdCicilan` int(11) NOT NULL AUTO_INCREMENT,
    `Kd_Member` int(11) DEFAULT NULL,
    `TglBayar` date DEFAULT NULL,
    `ForBulan` char(2) DEFAULT NULL COMMENT ‘Pembayaran ke salah satu bulan (1 s/d 12)’,
    PRIMARY KEY (`IdCicilan`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
    =============================

    Bagaimana Cara Menerapkan check duplicate ‘ForBulan’ Hanya Dalam satu Tahun Untuk tiap member.
    dan jika di klik (Add) akan Muncul Pesan Misalnya:

    (kode member CCL001 telah melunasi cicilan untuk bulan 01 2017)
    saya harap pak masino mengerti yang saya tanyakan.

    Balas
    • Masino Sinaga mengatakan

      Sen, 16 Januari 2017 pada 9:59 am

      Gunakan server event Row_Inserting dengan cara menjalankan SQL SELECT sesuai kondisi yang Anda inginkan. Kembalikan nilai FALSE jika kondisi yang Anda inginkan sesuai, untuk membatalkan proses penambahan.

      Baca topik Server Events and Client Scripts dari menu Help PHPMaker untuk info lebih lanjut.

      Balas
  2. indra mengatakan

    Sab, 2 September 2017 pada 2:01 am

    Salam Kenal Mas Masino,
    Mohon Pencerahan mengenai cara menghitung umur secara otomatis berdasarkan tanggal lahir dengan phpmaker, saya adalah pengguna baru yang masih butuh bantuan mas masino.
    semoga berkenan membantu. Terima Kasih

    Balas
    • Masino Sinaga mengatakan

      Sab, 2 September 2017 pada 9:51 am

      Salam kenal kembali. Sudah pernah dibahas di artikel ini: Menghitung Selisih Hari dari Dua Buah Tanggal dengan Javascript dari PHPMaker.

      Balas
      • indra mengatakan

        Sab, 2 September 2017 pada 12:20 pm

        terima kasih mas feedbacknya, sukses selalu

        Balas
        • Masino Sinaga mengatakan

          Sen, 4 September 2017 pada 2:05 pm

          Sama-sama.

          Balas
  3. Dani mengatakan

    Sab, 23 September 2017 pada 11:05 pm

    Selamat malam pak. Bagaimana jika ingin mengetahui jumlah hari kalender dari tanggal awal dan akhir yang kita input. Terimakasih

    Balas
    • Masino Sinaga mengatakan

      Sel, 26 September 2017 pada 6:10 pm

      Selamat malam. Sudah pernah dibahas di artikel Menghitung Selisih Hari dari Dua Buah Tanggal dengan Javascript dari PHPMaker.

      Balas
  4. usman mengatakan

    Sel, 26 Desember 2017 pada 8:08 am

    bagaimana cara agar tanggal sekarang bisa otomatis terisi di setiap kita klik add atau edit di phpmaker tanpa menggunakan autoaupdate value, kemudian bagaimana cara memamnggil tanggal tersebut untuk penomoran otomatis

    Balas
    • Masino Sinaga mengatakan

      Kam, 28 Desember 2017 pada 9:38 pm

      Gunakan server event Row_Rendered untuk mengisi nilai pada suatu field saat menampilkan form Add dan/atau Edit.

      Baca topik Server Events and Client Scripts dari menu Help PHPMaker.

      Balas
  5. agus mengatakan

    Rab, 20 Maret 2019 pada 12:28 am

    Bang bagaimana caranya mengisi field usia secara otomatis saat tanggal lahir diisi? jika gunakan script tolong kasih contoh scriptnya.

    Terimaksih. JBU

    Balas
    • agus mengatakan

      Rab, 20 Maret 2019 pada 12:30 am

      Nambah pertanyaan: bagaiman usia tersebut akan bertambah otomatis saat tahun bertambah

      Balas
      • Masino Sinaga mengatakan

        Rab, 20 Maret 2019 pada 4:08 pm

        Tidak bisa otomatis, Anda harus tetap menghitung ulang pada tahun yang bertambah itu.

        Balas
    • Masino Sinaga mengatakan

      Rab, 20 Maret 2019 pada 4:06 pm

      Sudah pernah dibahas di artikel Menghitung Selisih Hari dari Dua Buah Tanggal dengan Javascript dari PHPMaker. Silahkan Anda modifikasi kode tersebut supaya mengembalikan nilai dalam satuan Tahun.

      Balas
      • Agus mengatakan

        Rab, 20 Maret 2019 pada 5:52 pm

        Terimakasih informasinya. Saya coba ..

        Balas
        • Masino Sinaga mengatakan

          Kam, 21 Maret 2019 pada 12:14 pm

          Sama-sama.

          Balas
  6. Slavan mengatakan

    Kam, 24 September 2020 pada 4:37 pm

    Apakah JSCalender extension tidak ada lagi di PHPMaker 2020 ?

    Balas
    • Masino Sinaga mengatakan

      Sen, 28 September 2020 pada 11:39 am

      PHPMaker 2020 tidak menggunakan JSCalendar lagi, tapi Tempus Dominus Bootstrap4 (https://tempusdominus.github.io/bootstrap-4/).

      Balas

Trackbacks

  1. Menampilkan Tanggal Akhir dari Tanggal Awal Plus Sekian Hari di PHPMaker 2021 – Masino Sinaga berkata:
    Kam, 29 April 2021 pukul 10:51 am

    […] Selalu menarik untuk mencoba ulang kode-kode yang sudah pernah kita gunakan pada versi-versi major PHPMaker sebelumnya. Salah satunya tentang cara menampilkan tanggal akhir berdasarkan tanggal awal yang ditambah sekian hari, yang pernah saya tulis sekitar 5 tahun lalu pada artikel berikut: Mengetahui Tanggal Akhir dari Tanggal Awal Ditambah Sekian Hari di PHPMaker. […]

    Balas

Tinggalkan Balasan Batalkan balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses

Pos-pos Terbaru

  • Cara Menampilkan Tombol Close di Footer Modal buat Custom File yang SkipHeaderFooter-nya Bernilai True
  • Solusi Buat Field Lookup Table yang Bermasalah di Server Hosting
  • Hati-Hati Meredirect Pengguna Setelah Login di PHPMaker 2025
  • Ini Alasan Mengapa Kalian Harus Selalu Pakai PHPMaker versi Terakhir
  • Masino Extensions for PHPMaker 2025 Now Changed!

Menu

  • Siapa Saya?
  • Web Development
  • PHPMaker
  • Umum
  • Syarat dan Ketentuan
  • Sitemap (Peta Situs)
  • Komentar

Komentar Terbaru

  • Masino Sinaga pada Cara Menampilkan Tombol Close di Footer Modal buat Custom File yang SkipHeaderFooter-nya Bernilai True
  • Charly pada Menonaktifkan Field Tertentu Saat Data Diubah pada Aplikasi Web dari PHPMaker
  • Nanda pada Cara Menampilkan Tombol Close di Footer Modal buat Custom File yang SkipHeaderFooter-nya Bernilai True
  • Nanda pada Mudahnya Menghitung Saldo per Transaksi di Aplikasi Web dari PHPMaker
  • Masino Sinaga pada Menonaktifkan Field Tertentu Saat Data Diubah pada Aplikasi Web dari PHPMaker

Situs Terkait

  1. I Love PHPMaker
  2. Situs Resmi PHPMaker
  3. Forum Diskusi PHPMaker
  4. PHPMaker di IlmuKomputer.com
  5. PHPMaker Projects
  6. PHPMaker Learning

Baru di PHPMaker?

Baca ini terlebih dulu ...

  1. Ayo Menjadi Web Developer yang Cerdas!
  2. PHPMaker: PHP Code Generator + PHP Framework
  3. Pertanyaan-Pertanyaan yang Paling Sering Diajukan Seputar PHPMaker
  4. Tips buat Anda Pemula yang Baru Mengenal dan Menggunakan PHPMaker
  5. Bacalah Help, Bacalah Help, dan Bacalah Help di PHPMaker!

(c) Masino Sinaga 2009 - 2025 | WordPress | Catat masuk | Kembali ke atas