Postingan lainnya
Menampilkan data selalu munculnya yang else
permisi mau nanya,kenapa ya pada saat mencari data menggunakan tanggal awal dan tanggal akhir, tetapi pada saat di tampilkan selalu yang elsenya saja. pada sudah ada isinya pada tanggal itu. terima kasih sebelumnya
ini sourcodenya
<section class="content-header">
<h1>
Surat Masuk</h1></section>
<section class="content">
<style type="text/css">
.form-group{
margin-top: 15px;
margin-bottom: 0px !important;
}
</style>
<div class="row">
<div class="col-xs-12">
<div class="box">
<div class="box-header">
<form class="form-inline" action="" method="POST" />
<div class="input-group date">
<div class="input-group-addon">
<i class="fa fa-calendar"></i>
</div>
<input type="text" class="form-control pull-right" name="tanggal_awal" id="datepicker1" placeholder="Dari tanggal">
</div>
<div class="input-group date">
<div class="input-group-addon">
<i class="fa fa-calendar"></i>
</div>
<input type="text" class="form-control pull-right" name="tanggal_akhir" id="datepicker2" placeholder="sampai tanggal">
</div>
<button class="btn btn-info" name="tampilkan" type="submit">Tampilkan</button>
</form>
</div>
<?php
if (isset($_POST['tampilkan'])) {
$tgl_awal = $_POST['tanggal_awal'];
$tgl_akhir = $_POST['tanggal_akhir'];
if (empty($tgl_awal) || empty($tgl_akhir)) {
?>
<script language="JavaScript">
alert('Tanggal Awal dan Tanggal Akhir Harap di Isi!');
document.location='?page=agendasuratmasuk';
</script>
<?php
}else{
?>
<i><b>Informasi:</b>Hasil pencarian agenda surat masuk berdasarkan periode tanggal <b><?php echo $_POST['tanggal_awal']; ?></b>s/d <b><?php echo $_POST['tanggal_akhir']; ?></b></i>
<?php
$query = mysql_query(" SELECT * FROM tb_suratmasuk WHERE tgl_input BETWEEN '$tgl_awal' AND '$tgl_akhir'");
}
?>
<div class="box-body table-responsive no-padding">
<table id="datatables" class="table table-bordered table-hover dataTable">
<thead>
<tr>
<th width="5%">No Agenda</th>
<th width="10%">No Surat</th>
<th width="10%">tanggal input</th>
<th>Perihal</th>
<th width="20%">Asal surat</th>
<th>kepada</th>
<th>keterangan</th>
</tr>
</thead>
<tbody>
<?php
while($_POST =mysql_fetch_assoc($query)){
$no_surat = $_POST['no_surat'];
$no_agenda = $_POST['no_agenda'];
$asal_surat = $_POST['asal_surat'];
$perihal = $_POST['perihal'];
$tgl_surat = $_POST['tgl_surat'];
$tgl_input = $_POST['tgl_input'];
$kepada = $_POST['kepada'];
$keterangan = $_POST['keterangan'];
?>
<tr>
<td><?php echo "$no_agenda"; ?></td>
<td><?php echo "$no_surat"; ?></td>
<td><?php echo "$tgl_input"; ?></td>
<td><?php echo "$perihal"; ?></td>
<td><?php echo "$asal_surat"; ?></td>
<td><?php echo "$kepada"; ?></td>
<td><?php echo "$keterangan"; ?></td>
</tr>
<?php } ?>
<tr>
<td colspan="4" align="text-center">
<?php
if (mysql_num_rows($query)==0) {
echo "<font color=red><blink>Pencarian data tidak ditemukan!</blink></font>";
}
?>
</td>
</tr>
</tbody>
</table>
<?php
} else {
unset($_POST['tampilkan']);
}
?>
</div>
</div>
</div>
</div>
</section>
6 Jawaban:
apakah sudah bisa menampilkan data tanpa searching? dan juga kenapa echo variable diantara tanda petik dua padahal ini bakal membuat nama variabel menjadi string?
<tr>
<!-- kenapa echo variable menggunakan '"' ? --!>
<td><?php echo "$no_agenda"; ?></td>
<td><?php echo "$no_surat"; ?></td>
<td><?php echo "$tgl_input"; ?></td>
<td><?php echo "$perihal"; ?></td>
<td><?php echo "$asal_surat"; ?></td>
<td><?php echo "$kepada"; ?></td>
<td><?php echo "$keterangan"; ?></td>
<!-- setahu saya kalau echo variable seperti ini
<?php echo $no_agenda; ?>
--!>
</tr>
@Sopian78 coba di echo Query Sqlnya lalu di test di db hasilnya benar ngga?
Jawaban Terpilih
yupz btul kayak @blackarch bilang buat dulu variable sqlnya. supaya enak debugnya $sql = " SELECT * FROM tb_suratmasuk WHERE tgl_input BETWEEN '$tgl_awal' AND '$tgl_akhir'" echo $sql; $query = mysql_query($sql); kmudian run the sql statement inside the database. kalau data return berarti sqlnya betul sebaliknya no data return, ada salah dengan querynya. munkin type tgl_input nya itu buka timestamp. jadinya betweenya mnkin ngk jalan
Ini masalahnya
$query = mysql_query(" SELECT * FROM tb_suratmasuk WHERE tgl_input BETWEEN '$tgl_awal' AND '$tgl_akhir'");
Cara menggabungkan variable dan stringnya salahnya. Harusnya di 'concat', jadinya seperti ini :
$query = mysql_query(" SELECT * FROM tb_suratmasuk WHERE tgl_input BETWEEN " . $tgl_awal . " AND " . $tgl_akhir );
CMIIW
SOLVED, ternyata yang salah ada di date formatnya hehe. tapi terima kasih buat semuanya yang udah repot-repot mau jawab:)