A-AA+then

ช่วยดูโค๊ตให้อีกทีคับ

1,319
     $sql="select a.mon_th, a.Total_bg1, b.mon_th and b.Total_bg2 from (SELECT month(date) AS mon_th , sum(money) AS Total_bg1 FROM data where idaccount='1' and idsubject='$idsubject' and idtype='$idtype' GROUP BY month(date)) a left join (SELECT month(date) AS mon_th, sum(money) AS Total_bg2 FROM data where idaccount='2' and idsubject='$idsubject' and idtype='$idtype' GROUP BY month(date)
) b on a.mon_th = b.mon_th order by a.mon_th";

  
    $table=mysql_query($sql,$Conn) or die ("ไม่สามารถเรียกดูข้อมูลในเทเบิล  ได้");

    $number=mysql_num_rows($table);
    $no=1;
    if($number<>0){
    echo"
    <p><strong>รายการ</strong></p>
    <table border=1>
        <tr BGCOLOR=#E8E8E8>
            <td><center><b>ลำดับที่</b></center></td>
            <td><center><b>เดือน</b></center></td>
            <td><center><b>รายรับ</b></center></td>
            <td><center><b>รายจ่าย</b></center></td>
            <td><center><b>คงเหลือ</b></center></td>
            </tr>";
   
   
    while($row=mysql_fetch_array($table)){   
   
   
   //$r = mysql_fetch_array($table1);
   
       
        $iddata=$row[iddata];
        $m=$row[mon_th];
        $money=$row[money];
        $note=$row[note];
        $idtype=$row[idtype];
        $idaccount=$row[idaccount];
        $total_bg1 = $row["Total_bg1"];
        $total_bg2 = $row["Total_bg2"];
        $date_m=array ("","มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม ","สิงหาคม","กันยายน","ตุลาคม","พฤษจิกายน","ธันวาคม");
    ;
        $total=$total_bg1-$total_bg2;
   
echo "
            <tr>
            <td>$no</td>
            <td>$date_m[$m]</td>
            <td>$total_bg1</td>
            <td>$total_bg2</td>
            <td>$total </td>
   
        </tr>";
        $no++;
   
    }
   
    echo "</table>";


ไม่รู้ว่าผิดตรงไหน
ตรงช่องรายจ่ายมันไม่แสดงข้อมูลอ่ะคับ

2 ความคิดเห็น

น่าจะ error นะ เอาโค้ดไปทดสอบกับ phpmyadmin ดู

ถ้ายังไม่ได้นะ แล้วสามารถ query ทีละชนิดได้ ก็ให้ query ทีละชนิดออกมา แล้ววนลูปเอาข้อมูล ใส่ array ก่อนเอา array ไปแสดงผล ตัวอย่างนะ

<?php
  $sql = query รายรับ
  while($row=mysql_fetch_array($table)){   
   // วนลูปรายรับ
    $datas[วันที่][recive] = $row;
 }
  $sql = query รายจ่าย
 
while($row=mysql_fetch_array($table)){   
    // วนลูปรายรับ
    $datas[วันที่][pay] = $row;
 }

 // วนลูปแสดงผลทีละวันที่ (ใช้วันที่เป็น key)
 foreach($datas AS $date => $value) {
   echo $date,$value[recive][sum],$value[pay][sum];
 }
?>


ผมเขียนให้ดูคร่าวๆ คงต้องเอาตัวอย่างไปดัดแปลงดู ให้พยายามทำควา มเข้าใจกับสิ่งที่ผมเขียนก่อน เพื่อที่จะได้ดัดแปลงได้ถูกต้อง
1

ขอบคุงคับ

ขอลองดูก่อนน่ะคับ
2
^