Kondisi IF

Rintaka Jayadi Brata · Dec 18, 2012
Permisi suhu..
Mau bertanya lagi nih..
Ini potongan scriptnya..
$where = "";
$tgl_awal = $_GET['tgl_awal'];
$tgl_akhir = $_GET['tgl_akhir'];
$nama = $_GET['keyw'];

If(!isset($tgl_awal)&&!isset($tgl_akhir)&&!isset($nama)){
	
		$where .="";}
	elseif(!isset($nama)){
		$where .= " WHERE tanggal BETWEEN '".$tgl_awal."' AND '".$tgl_akhir."' ";}
	elseif(!isset($tgl_awal)&&!isset($tgl_akhir)){
		$where .= " WHERE nama LIKE '%".$nama."%' ";}

$result = mysql_query("SELECT * FROM absen ".$where."ORDER BY log_absen DESC") or die('Query failed!');

Hasil yang keluar selalu SELECT * FROM Absen ORDER BY log_absen DESC..
Meskipun saya memcoba berbagai cara untuk bisa masuk ke kondisi 1 atau 2, tetap saja hasil dari $where itu = " "..
Kira2 ada yang salah g dari codingan gw?

Terima kasih atas bantuannya..
Silahkan login untuk menjawab!
0
Loading...
Ellyx Christian · Dec 18, 2012 · 0 Suka · 0 Tidak Suka
fungsi isset itu digunakan untuk mengecek apakah sebuah variable sudah diset atau belum, di kodemu, variable sudah diset, tapi tetap kamu cek dengan isset, makanya tidak akan pernah memenuhi kondisi if
$where = " WHERE 1=1 ";
$tgl_awal = $_GET['tgl_awal'];
$tgl_akhir = $_GET['tgl_akhir'];
$nama = $_GET['keyw'];
if($nama){
	$where .= " AND nama LIKE '%".$nama."%'";
}
if($tgl_awal){
	$where .= " AND tanggal >= '$tgl_awal'";
}
if($tgl_akhir){
	$where .= " AND tanggal <= '$tgl_akhir'";
}
$result = mysql_query("SELECT * FROM absen ".$where."ORDER BY log_absen DESC") or die('Query failed!');
0
Loading...
Rintaka Jayadi Brata · Dec 18, 2012 · 0 Suka · 0 Tidak Suka
Ouwh begitu y suhu..

Wah,manteb nih penjelasannya..

Btw, itu tanggalnya seperti date range suhu.. G bisa dipisah..

berarti g usah pake isset.. Langsung aja gitu yah??

Terima kasih atas bantuannya..
0
Loading...
Rintaka Jayadi Brata · Dec 18, 2012 · 0 Suka · 0 Tidak Suka
Udah gw edit codingnya..
Tapi tulisannya malah <br /><b>Notice</b>: Undefined variable: tgl_awal ..<br /><b>Notice</b>: Undefined variable: tgl_akhir ...ri. WHERE nama LIKE '%.ri.%'

Ini coding setelah gw edit..
$where = "";
	$tgl_awal = $_GET['tgl_awal'];
	$tgl_akhir = $_GET['tgl_akhir'];
	$nama = $_GET['keyw'];
	
	echo $tgl_awal;echo $tgl_akhir;echo $nama;
	
	If($nama){
		$where .=" WHERE nama LIKE '%".$nama."%'";}
	elseif($tgl_awal && $tgl_akhir){
		$where .= " WHERE tanggal BETWEEN '".$tgl_awal."' AND '".$tgl_akhir."' ";}
	else{
		$where .= "";}

$result = mysql_query("SELECT * FROM absen ".$where."ORDER BY log_absen DESC") or die('Query failed!');
0
Loading...
Rintaka Jayadi Brata · Dec 19, 2012 · 0 Suka · 0 Tidak Suka
Setelah mencari wangsit kemana2 gw coba edit lagi coding gw..
Jadi seperti ini..
$where = "";
		
	If(isset($_GET['keyw'])){
		
		$nama = $_GET['keyw'];
		
		$where .= " WHERE nama LIKE '%$nama%' ";}
	Elseif(isset($_GET['tgl_awal'])||isset($_GET['tgl_akhir'])){
		$tgl_awal= $_GET['tgl_awal'];
		$tgl_akhir= $_GET['tgl_akhir'];
						
		$where .= " WHERE tanggal BETWEEN '$tgl_awal' AND '$tgl_akhir' ";}
	else{
		$where .= "";}
	
	
	echo $where;
	$flag = false;
	$query = "SELECT * FROM absen" .$where."ORDER BY log_absen DESC";
	$result = mysql_query($query) or die('Query failed!');

Tetapi hasilnya meskipun ada yang di download, tapi tabel tidak keluar.
Undefined variable.

Di form yang menjadi sasaran GET di form ini codingnya seperti ini..
<center><font size="1" face="Arial">export to</font><br><a href="tes_excel4.php?keyw=<?php echo "$nama";?>&tgl_awal=<?php echo '$tgl_awal';?>&tgl_akhir=<?php echo '$tgl_akhir';?>"><img src="image/excel.png"></img></a></center>

Mohon pencerahannya suhu..

Terima kasih..
0
Loading...
Ellyx Christian · Dec 20, 2012 · 0 Suka · 0 Tidak Suka
$where = " WHERE 1=1 ";
 
if(isset($_GET['keyw'])){
	$nama = $_GET['keyw'];
	$where .= " AND nama LIKE '%$nama%' ";
}
if(isset($_GET['tgl_awal'])){
	$tgl_awal= $_GET['tgl_awal'];
	$where .= " AND tanggal >= '$tgl_awal'";
}
if(isset($_GET['tgl_akhir'])){
	$tgl_akhir= $_GET['tgl_akhir'];
	$where .= " AND tanggal <= '$tgl_akhir'";
}


echo $where;
$flag = false;
$query = "SELECT * FROM absen" .$where." ORDER BY log_absen DESC";
$result = mysql_query($query) or die('Query failed!');
kemudian di form
<center><font size="1" face="Arial">export to</font><br><a href="tes_excel4.php?keyw=<?php echo $nama;?>&tgl_awal=<?php echo $tgl_awal;?>&tgl_akhir=<?php echo $tgl_akhir;?>"><img src="image/excel.png"></img></a></center>