ช่วยดูเงื่อนไข ค่าวันที่ปัจจุบัน มากว่า ค่าที่ได้ให้เอาค่า WHERE DATE1 > DATE2

ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา ช่วยดูเงื่อนไข ค่าวันที่ปัจจุบัน มากว่า ค่าที่ได้ให้เอาค่า WHERE DATE1 > DATE2

ช่วยดูเงื่อนไข ค่าวันที่ปัจจุบัน มากว่า ค่าที่ได้ให้เอาค่า WHERE DATE1 > DATE2
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Untitled Document</title>
<?php
 
?>
</head>

<body>
<?php
$objConnect = mysql_connect("localhost","cad_account","cad_admin") or die("Error Connect to Database");
$objDB = mysql_select_db("member");
$strSQL = "SELECT * FROM t_contract_due ";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
?>
<table width="800" border="1">
  <tr>
    <th width="115" align="center"> dueid </th>
    <th width="123" align="center"> duedate </th>
    <th width="142" align="center">contractid </th>
    <th width="146" align="center"> dueamt </th>
    <th width="106" align="center"> isstatus </th>
    <th width="128" align="center">สถานะ</th>
  </tr>
<?php
while ($objResult = mysql_fetch_array( $objQuery )) { 
        $id = $objResult["dueid"]; 
	    $hn = ( $objResult["duedate"]  ); 
		$pname = ( $objResult["contractid"]  ); 
		$name = ( $objResult["dueamt"]  ); 
		$lname = ( $objResult["isstatus"]  ); 
		$ymd1=date("Y-m-d");
  	    $ymd2 = "$hn"; 
	    $date1="$ymd1";
		
	    $date2="$ymd2"; 
?>
  <tr>
    <td align="center"><?php echo $id;?></td>
    <td align="center"><?php echo $ymd2;?></td>
    <td align="center"><?php echo $pname;?></td>
    <td align="center"><?php echo $name;?></td>
    <td align="center"><?php echo $lname;?></td>
    <td align="center"><? if($date1 >= $date2){
	    echo" ค้างชำระ";
	    }else{
	    echo" ยังไม่ครบกำหนด";}?></td>
  </tr>
<?php
}
?>
</table>

<?
   
    $objConnect = mysql_connect("localhost","cad_account","cad_admin") or die("Error Connect to Database");
    $objDB = mysql_select_db("member");
    $sql = "SELECT SUM(dueamt) AS total_amt FROM t_contract_due  WHERE ($date1 > $date2) and isstatus='W'";
	$result=mysql_query($sql) or die(mysql_error());
    while($row = mysql_fetch_array($result)){
	echo "&nbsp;จำนวนมียอดค้างชำระ  ". $row['total_amt'] ."&nbsp;บาท ";
	echo "<br />";
}
   
?>

<?php
mysql_close($objConnect);
?>
</body>
</html>

 จำนวนยอดค้างชำระคำนวณได้ 6000 บาท
ตามหลังต้องการให้ได้ 4000 บาท
เพราะการค้นหา หาค่าที่มี isstatus=W และวันที่ปัจจุบันต้องมากกว่า duedate ก็ได้ 2 แถวครับช่วยแนะนำหน่อยครับ


Panyaadd 10-09-2015 22:26:08

คำแนะนำ และการใช้งาน

สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก


  • ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
  • เปลี่ยน


    ( หรือ เข้าใช้งานผ่าน Social Login )

 ความคิดเห็นที่ 1
แบบนี้หรือเปล่า

SELECT SUM(dueamt) AS total_amt FROM t_contract_due  
WHERE isstatus='W' 
AND CURRENT_DATE()>duedate


ninenik 10-09-2015
 ความคิดเห็นที่ 2
ขอบคุณครับคุณ Ninenik ผมลองหาวิธีมา 2 วันละครับ


panyaadd 11-09-2015 07:01
 ความคิดเห็นที่ 3
ขอเพิ่มเติมหน่อยครับ

ขอมูลเป็น DBF ครับ


panyaadd 15-09-2015 21:41
 ความคิดเห็นที่ 4
ประมาณว่าให้แสดงรวมที่ละ ID ที่ค้างชำระครับ


panyaadd 15-09-2015 21:49
 ความคิดเห็นที่ 5
ลองต่อด้วย GROUP BY memberid ดู 


ninenik 15-09-2015
1






เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ