Menampilkan data berdasarkan range tanggal

Assalamu'alaikum... Selamat Pagi.

Saya ingin menampilkan data / mencetak data berdasarkan range tanggal. Namun saat ini saya hanya bisa menampilkan data / mencetak data berdasarkan bulan dan tahun. Ex : Saya mempunyai data dari tgl 05 April sampai dengan 02 Juli 2019, Saya ingin mencetak data dari tanggal 26 April sampai dengan 25 Juni. Saya menggunakan framework Codeigniter. Adapun script dari view, model dan controller pada sistem yg sedang berjalan saat ini adalah sebagai berikut :

View :

<form method="post"  action="<?php echo base_url('admin/cetakbulan') ?>">
<div class="form-group col-md-3"><b>
Bulan</b>
<select class="form-control" id="bulan" name="bulan">
<option value="01">Januari</option>
<option value="02">Februari</option>
<option value="03">Maret</option>
<option value="04">April</option>
<option value="05">Mei</option>
<option value="06">Juni</option>
<option value="07">Juli</option>
<option value="08">Agustus</option>
<option value="09">September</option>
<option value="10">Oktober</option>
<option value="11">November</option>
<option value="12">Desember</option>
</select>
</div>

<div class="form-group col-md-3"><b>
<div class="input-group date" data-provide="datepicker" data-date-format="yyyy-mm-dd">
   <label class="control-label" for="tgl_mulai">Tgl_Mulai</label><br>
   <input type="text" class="form-control" name="tgl_mulai" id="tgl_mulai" required>
            <div class="input-group-addon">
                 <span class="glyphicon glyphicon-th"></span>
            </div>
</div>
</div></b>

<div class="form-group col-md-3"><b>
<div class="input-group date" data-provide="datepicker" data-date-format="yyyy-mm-dd">
  <label class="control-label" for="tgl_kembali">Tgl_Akhir</label><br>
  <input type="text" class="form-control" name="tgl_akhir" id="tgl_akhir" required>
     <div class="input-group-addon">
         <span class="glyphicon glyphicon-th"></span>
     </div>
</div>
</div></b>

<div class="form-group col-md-3"><b>Tahun</b>
	<select class="form-control" id="tahun" name="tahun">
		<?php
			$mulai= date('Y') - 50;
			for($i = $mulai;$i<$mulai + 100;$i++)
			  {
    		    $sel = $i == date('Y') ? ' selected="selected"' : '';
    		    echo '<option value="'.$i.'"'.$sel.'>'.$i.'</option>';
			  }
		?>
 	</select>
</div>

<div class="form-group col-md-12"><b>TRIWULAN</b>
    <select class="form-control" name="triwulan">
        <option value="">-- Silahkan Pilih --</option>
           <option>Triwulan 1</option>
           <option>Triwulan 2</option>
           <option>Triwulan 3</option>
           <option>Triwulan 4</option>
    </select>
</div>

<input type="submit" name="btnKirim" class="btn btn-primary" style="float:left; margin-left:15px; margin-bottom:15px;" value="Preview"/>
<hr>
</form>

avatar pramadians
@pramadians

26 Kontribusi 0 Poin

Diperbarui 4 tahun yang lalu

2 Jawaban:

Controller :

<pre> public function cetakBulan() { $this-&gt;_is_admin(); if($this-&gt;input-&gt;post('btnKirim')) { $bulan = $this-&gt;input-&gt;post('bulan'); $tahun = $this-&gt;input-&gt;post('tahun'); $triwulan = $this-&gt;input-&gt;post('triwulan');

	$v_array = $this-&amp;gt;input-&amp;gt;post();

	$data[&#039;tb_laporan1&#039;] = $this-&amp;gt;db-&amp;gt;query(&quot;SELECT * FROM tb_lapreport a 
	JOIN tb_indikator b  ON a.id_indikator=b.id_indikator
	JOIN tb_subprogram c ON c.id_subprogram=a.id_subprogram
	JOIN tb_program d    ON d.id_program   =a.id_program
	JOIN tb_organisasi e ON e.id_organisasi=a.id_organisasi
	JOIN tb_suburusan f  ON f.id_suburusan =a.id_suburusan
	JOIN tb_suburusan2 g ON g.id_suburusan2=a.id_suburusan2
	JOIN tb_suburusan3 h ON h.id_suburusan3=a.id_suburusan3
	JOIN tb_urusan i     ON i.id=a.id
	WHERE MONTH(a.tanggal)=&#039;$bulan&#039; AND YEAR(a.tanggal)=&#039;$tahun&#039; AND a.id_organisasi
	GROUP BY suburusan2 ASC&quot;);
	
	$data[&#039;tb_laporanGroup&#039;] = $this-&amp;gt;db-&amp;gt;query(&quot;SELECT * FROM tb_lapreport a 
	JOIN tb_indikator b  ON a.id_indikator=b.id_indikator
	JOIN tb_subprogram c ON c.id_subprogram=a.id_subprogram
	JOIN tb_program d    ON d.id_program   =a.id_program
	JOIN tb_organisasi e ON e.id_organisasi=a.id_organisasi
	JOIN tb_suburusan f  ON f.id_suburusan =a.id_suburusan
	JOIN tb_suburusan2 g ON g.id_suburusan2=a.id_suburusan2
	JOIN tb_suburusan3 h ON h.id_suburusan3=a.id_suburusan3
	JOIN tb_urusan i     ON i.id=a.id
	WHERE MONTH(a.tanggal)=&#039;$bulan&#039; AND YEAR(a.tanggal)=&#039;$tahun&#039; AND a.id_organisasi
	GROUP BY d.id_program ASC&quot;);

	$data[&#039;tb_laporan&#039;] = $this-&amp;gt;db-&amp;gt;query(&quot;SELECT * FROM tb_lapreport a 
	JOIN tb_indikator b  ON a.id_indikator=b.id_indikator
	JOIN tb_subprogram c ON c.id_subprogram=a.id_subprogram
	JOIN tb_program d    ON d.id_program   =a.id_program
	JOIN tb_organisasi e ON e.id_organisasi=a.id_organisasi
	JOIN tb_suburusan f  ON f.id_suburusan =a.id_suburusan
	JOIN tb_suburusan2 g ON g.id_suburusan2=a.id_suburusan2
	JOIN tb_suburusan3 h ON h.id_suburusan3=a.id_suburusan3
	JOIN tb_urusan i     ON i.id=a.id
	WHERE MONTH(a.tanggal)=&#039;$bulan&#039; AND YEAR(a.tanggal)=&#039;$tahun&#039; AND a.id_organisasi&quot;);

	}
		$data[&#039;nama_bulan&#039;] = $v_array[&#039;bulan&#039;];
		$data[&#039;nama_tahun&#039;] = $v_array[&#039;tahun&#039;];
		$data[&#039;nama_triwulan&#039;] = $v_array[&#039;triwulan&#039;];
	    $this-&amp;gt;load-&amp;gt;view(&#039;template/header-report&#039;,$data);
	    $this-&amp;gt;load-&amp;gt;view(&#039;admin/cetak&#039;,$data);
	    $this-&amp;gt;load-&amp;gt;view(&#039;template/footer-report&#039;,$data);

}

</pre>

avatar pramadians
@pramadians

26 Kontribusi 0 Poin

Dipost 4 tahun yang lalu

Jawaban Terpilih

coba ini <pre> $tgl_mulai = $this-&gt;input-&gt;post('tgl_mulai'); $tgl_akhir = $this-&gt;input-&gt;post('tgl_akhir'); WHERE a.tanggal BETWEEN '$tgl_mulai' AND '$tgl_akhir' </pre>

avatar dianarifr
@dianarifr

642 Kontribusi 316 Poin

Dipost 4 tahun yang lalu

Tanggapan

Terimakasih pencerahan nya.....

Login untuk ikut Jawaban