Cara Membuat Form Input Tanggal Otomatis di PHP

By | Maret 12, 2020

Kita dapat menginput nilai didalam sebuah form. Misalnya ada field nama, alamat, tanggal dan lainnya. Nilai dapat kita input pada setiap field yang tersedia. Namun dalam beberapa kasus misalnya untuk mendapat nilai tanggal sekarang kita tidak bisa membuatnya secara manual harus otomatis dari sistem yang membuatnya, dengan cara mengambil tanggal sekarang pada server lokal komputer kita. Bagaimana cara membuat form input tanggal otomatis dengan php? Simak pembahasannya disini.

Sebelumnya saya sudah pernah membahas tentang format tanggal dan waktu di php. Pada artikel tersebut saya membahas bagaimana penggunaan fungsi date() untuk membuat dan mengatur format tanggal di php. Sebaiknya teman-teman membaca terlebih dahulu agar punya gambaran tentang penggunaan fungsi date() tersebut.

Karena kita ingin membuat tanggal otomatis sebaiknya field tanggal pada isian form tidak perlu ditampilkan. Kita bisa menggunakan tipe “hidden” pada tag inputnya. Ketika pengguna submit form ke server setelah itu baru kita tampilkan tanggal (saat ini) yang telah dibuat.

Contoh Form Input dengan Tanggal Otomatis

Berikut ini adalah contoh form input sederhana untuk membuat tanggal otomatis di php, Silahkan kalian copy dan coba jalankan pada localhost komputer kalian.

<!DOCTYPE HTML>  
<html>
<head>
</head>
<body>  

<h2>Contoh Form Input Tanggal Otomatis PHP</h2>

<form method="post" action="<?php echo $_SERVER["PHP_SELF"];?>">  
	Nama: <input type="text" name="nama">
	<br><br>
        <input type="hidden" name="tanggal" value="<?php echo date("d-m-Y"); ?>">
	<input type="submit" name="submit" value="Submit">  
</form>
    <?php
    $name = "";
    $tanggal = "";

    if ($_SERVER["REQUEST_METHOD"] == "POST") {
        $name = $_POST["nama"];
        $tanggal = $_POST["tanggal"];

        echo "<h2>Hasil:</h2>";
	echo "Nama : ".$name;
        echo "<br>";
        echo "Tanggal Sekarang : ".$tanggal;
    }
    ?>

</body>
</html>

Ada 3 tag input pada form diatas yang pertama nama dengan tipe text, tanggal dengan tipe hidden dan tag input tipe submit untuk membuat button submit form. nantinya yang akan tampil pada interface pengguna hanyalah field nama dan tombol submit, field tanggal tersembunyi (hidden).

 <input type="hidden" name="tanggal" value="<?php echo date("d-m-Y"); ?>">

coba perhatikan pada baris sintak untuk tanggal, pada bagian atribut value (nilai) diambil dari fungsi date() untuk menampilkan tanggal sekarang dengan format (d-m-Y) yang artinya tanggal-bulan-tahun. Format tanggal seperti ini secara umum digunakan di Indonesia namun di luar negeri format yang biasa digunakan adalah tahun-bulan-tanggal (Y-m-d). Nantinya kita bisa manipulasi string tanggal dengan bantuan fungsi strtotime .

Form diatas saya membuat action-nya pada file itu sendiri, sehingga kita tidak perlu membuat file atau halaman lainnya untuk menerima kiriman nilai dari form tersebut.

Jika dijalankan maka hasilnya seperti pada gambar berikut:

contoh form input tanggal otomatis

Bekerja dengan Database MySQL

Tutorial yang kedua kita akan coba membuat form input tanggal otomatis yang nantinya akan di simpan kedalam database mysql. Sebelum itu persiapkan dulu databasenya ya.

Membuat Database

create database tes;

Membuat Tabel

create table contoh (
  nama varchar(50),
  tanggal date
);
deskripsi tabel

Disini saya membuat sebuah database dengan nama ‘tes‘ dan tabel contoh yang didalamnya terdapat field nama dan tanggal. Nama menggunakan tipe data varchar dan tanggal menggunakan date. Perlu diperhatikan bahwa format tanggal di mysql adalah ‘Y-m-d’ yaitu tahun-bulan-tanggal. Oleh sebab itu nantinya pada fungsi date() format tanggal yang digunakan juga harus disesuaikan.

Baca artikel : Cara menampilkan tanggal dari database

<!DOCTYPE HTML>  
<html>
<head>
</head>
<body>  

<h2>Contoh Form Input Tanggal Otomatis PHP</h2>

	<form method="post" action="<?php echo $_SERVER["PHP_SELF"];?>">  
	    Nama: <input type="text" name="nama">
	    <br><br>
        <input type="hidden" name="tanggal" value="<?php echo date("Y-m-d"); ?>">
	    <input type="submit" name="submit" value="Submit">  
	</form>
    <?php
    $name = "";
    $tanggal = "";

    if ($_SERVER["REQUEST_METHOD"] == "POST") {
        $kon = mysqli_connect("localhost","root","","tes");
        if (!$kon){
            die("Koneksi gagal:".mysqli_connect_error());
        }

        $name = $_POST["nama"];
        $tanggal = $_POST["tanggal"];

        $sql="insert into contoh (nama,tanggal) values ('$name','$tanggal')";

        $hasil=mysqli_query($kon,$sql);

        if ($hasil){
            echo "Berhasil Input ke database";
        }else {
            echo "Gagal Input";
        }
    }
    ?>

</body>
</html>

Contoh hasil output:

contoh form input kedua

Ketika kita cek di database nama yang kita input melalu form telah tersimpan beserta dengan tanggal saat form itu dikirim.

hasil di database

Sekian pembahasan sederhana kali ini mengenai form input tanggal otomatis di PHP, semoga bermanfaat dan dapat membantu teman-teman yang sedang belajar.