Di pagi yang cerah ini dan pada hari raya nyepi ini saya ingin bagi-bagi ilmu mengenai cara menampilkan data dari database berdasarkan bulan dan tahun, dimana yang sering kita lihat seperti di blog, wordpress dan lain-lain, tentunya menampilkan data berdasarkan bulan dan tahun sangat lah penting di dalam pemrograman apa saya, oke mula kalian harus buat database name sebagai berikut:
name: db_blog
DATABASE `db_blog`;
Kemudian kalian harus buat table database nya sebagai berikut:
name: tb_news
use `db_blog`;# MySQL returned an empty result set (i.e. zero rows).
CREATE TABLE tb_news(
id_news int(11) auto_increment,
title_news varchar(100),
content_news text,
author_news varchar(100),
category_news int(11),
postdate_news date,
PRIMARY KEY (id_news)
)# MySQL returned an empty result set (i.e. zero rows).
setelah itu kalian insertkan data-data sebagai berikut untuk contoh:
INSERT INTO `tb_news` VALUES (NULL, 'Testin tahun dan bulan', 'isi berita', 'depri', '1', '2009-01-13');
INSERT INTO `tb_news` VALUES (NULL, 'Testin tahun dan bulan', 'isi berita', 'depri', '1', '2009-02-13');
INSERT INTO `tb_news` VALUES (NULL, 'Testin tahun dan bulan', 'isi berita', 'depri', '1', '2009-03-13');
INSERT INTO `tb_news` VALUES (NULL, 'Testin tahun dan bulan', 'isi berita', 'depri', '1', '2009-04-13');
INSERT INTO `tb_news` VALUES (NULL, 'Testin tahun dan bulan', 'isi berita', 'depri', '1', '2009-05-13');
Nah jika semua yang di perlukan sudah beres sekarang tinggal scripts dalam menampilkan bulan dan tahun sebagai berikut:
SELECT DISTINCT date_format(postdate_news, '%M %Y') as bulantahun FROM tb_news
SELECT DISTINCT date_format(postdate_news, '%d %M %Y') as tglbulantahun FROM `tb_news`
Note: DISTINCT adalah pengambilan salah satu data dari sekian data yang duplikat contoh jika dalam database ada nama double seperti (depri,depri) maka dia hanya mengambil satu untuk di tampilkan.Kemudian kita buatkan file listdata.php dan copy scrips php nya berikut:
<?php
mysql_connect("localhost", "root", "");
mysql_select_db("db_blog");
$query = "SELECT DISTINCT date_format(postdate_news, '%M %Y') as bulantahun FROM tb_news";
$hasil = mysql_query($query);
echo '<form method="POST" action="data.php">';
echo '<select name="bulantahun">';
while ($data = mysql_fetch_array($hasil))
{
echo '<option value="'.$data['bulantahun'].'">'.$data['bulantahun'].'</option>';
}
echo '<input type="submit" name="submit" value="submit"></select>';
echo '</form>';
?>
Oke, sekarang kita tinggal buat file data.php dan silakan copy scripts berikut:
<?php
if(isset($_POST[submit])){
$blnth = $_POST['bulantahun'];
mysql_connect("localhost", "root", "");
mysql_select_db("db_blog");
$query = "SELECT * FROM tb_news WHERE date_format(postdate_news, '%M %Y') = '$blnth'";
$hasil = mysql_query($query);
while ($data = mysql_fetch_array($hasil))
{
echo "<h1>".$data['title_news']."</h1>";
echo "<p>Penulis : ".$data['author_news']."</p>";
echo "<p>Diposting pada tanggal : ".$data['postdate_news']."</p>";
echo "<p>".$data['content_news']."</p>";
}
}
?>
Baiklah Sekian dulu tutorial untuk Menampilkan data berdasarkan bulan dan tahun, Sekarang kalian tinggal jalankan di browser deh, jreng-jreg jadi deh list data berdasarkan bulan dan tahun :)
Salam hangat,
Depri Pramana
14 komentar
Bagus banget tutorialnya. Boleh tanya mas, saya pemula. Kalo mau menampilkan data dengan menggunakan combobox hasil isian form sebelumnya berdasarkan primary key bagaimana ya?
Bisa gan, select aja data dari table nya, kalo bisa coba sertakan table yg mw di tampilkan.
bagus banget & bermanfaat banget ane lagi butuh ini... izin sedot ilmunya gan. oh ya gan... kalau dibuat per 3 bulan / 1 semester gimana tu ?
bisa gan, bikin aja interval data tanggal yang mw di tampilkan gan.
contoh nya date startnya 1 january 2013 dan date endnya 1 april 2013
jadi data yang ada dalam rentang itu akan di tampilkan semua gan.
mantaf gan
@yuda. Thanks Gan, Selalu berkunjung gan..
thx yu bgd gan , ini yang ak cari, ijin dikembangkan
warna scripnya tak nampak gan.. sakit mata liatnya
warna scripnya tak nampak gan.. sakit mata liatnya
sudah saya perbaiki mas. thanks infonya
mas kalo sortirnya pertanggal gimana mas dari database? jadi comple ada pertanggal perbulan dan pertahun
Mas Adi. Bisa mengunakan ini tambahkan pada scripts %d SELECT DISTINCT date_format(create_at, '%d %M %Y') as bulantahun FROM `contents`
mantaps gan, nih yg dibutuhkan.
GImana klo misalnya data yg diambil dalam kurun 1 bulan itu. misalkan dalam 1 hari ada 3 query data sama dalam 1 date, nah ingin langsung dijumlahkan.
contoh tgl 1. ada 3 inputan dengan 1 item, nah Quantitynya mau langsung di sum aja, jadi muncul dianggal tanggal 1 (1 x) tidak muncul tgl 1 3x. mhn infonya..
Query Database untuk menampilkan data berdasar Tahun
Facebook Twitter Google Whatsapp
php_developmentScript PHP Query Database untuk menampilkan data berdasar tahun. Pada kesempatan yang lalu saya sudah membahasa Script PHP Query Database untuk menampilkan data berdasar bulan. Masih berhubungan dengan artikel yang kemaren, Mungkin Anda sedang membuat sebuah aplikasi atau sistem yang ada filter data atau mempunyai fasilitas laporannya berdasar tahun? Pada kesempatan kali ini saya akan membagikan Query Database untuk menampilkan data berdasar tahun.
Ikuti Social Media Kami
Query nya adalah sebagai berikut:
[php]$sql = "select * from table where year(field)='$tahun'";[/php]
Contoh penggunaan scriptnya adalah sebagai berikut:
[php]$sql = "select * from orderbarang where year(tanggalorder)='2014'";[/php]
Penjelasannya adalah:
orderbarang : nama tabel
year : untuk mengambil data tahun saja
tanggalorder : kolom tabel
2014 : tahun yang ditampilkan
Silakan Berikan Komentar anda yang bisa mendukung blog ini, komentar anda saya harapkan, terima kasih
EmoticonEmoticon