ช่วยดู code ให้หน่อยว่าผมต้องการให้ค่าช่วง ลำดับที่ ถึงหัวข้อ 2.2.2.2 ร้อยละ ออกแค่บบรรทัดเดียวครับ
Code (PHP)
<?php
include("db_connect.php"); // เรียกใช้ไฟล์ ตั้งค่า และฟังก์ชั่น เกี่ยวกับฐานข้อมูล
$mysqli = connect(); // สร้าง ตัวแปร mysqli instance สำหรับเรียกใช้งานฐานข้อมูล
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>2</title>
<link rel="stylesheet" href="css/bootstrap.min.css">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css">
<!--
.style1 {font-size: 9px}
.style2 {
font-family: TH SarabunPSK;
font-size: 16px;
}
-->
</style>
</head>
<body>
<br>
<table width="98%" border="1" align="center" cellpadding="0" cellspacing="1" class="style2">
<thead>
<tr class="bg-success">
<td rowspan="4" align="center" bgcolor="#FFCCCC">ลำดับ</td>
<td rowspan="4" align="center" bgcolor="#FFCCCC"><span class="style2">ชื่อสหกรณ์</span></td>
<td rowspan="4" align="center" bgcolor="#FFCCCC">รหัส</td>
<td rowspan="4" align="center" bgcolor="#FFCCCC">รับฝากทั้งสิ้น </td>
<td colspan="2" align="center" bgcolor="#CCCCFF">1. รับฝากจากสมาชิก </td>
<td colspan="7" align="left" bgcolor="#FFFF99"> 2. สหกรณ์อื่น / เอกชน</td>
</tr>
<tr class="bg-success">
<td rowspan="3" align="center" bgcolor="#CCFFCC">1.1 จำนวนเงิน </td>
<td rowspan="3" align="center" bgcolor="#CCFFCC">1.2 ร้อยละ</td>
<td colspan="7" align="left" bgcolor="#FFCCCC"> 2.1 ประเภทสหกรณ์</td>
</tr>
<tr class="bg-success">
<td rowspan="2" align="center" valign="middle" bgcolor="#66FFFF"> 2.1.1จำนวน</td>
<td colspan="2" align="center" bgcolor="#66FFFF">2.1.2 จำนวนเงินรวมที่รับฝากจากสหกรณ์</td>
<td rowspan="2" align="center" bgcolor="#FFFFCC">2.1.3 ลำดับ</td>
<td rowspan="2" align="center" bgcolor="#FFFFCC">2.1.4 รายชื่อที่นำเงินมาฝาก</td>
<td rowspan="2" align="center" bgcolor="#FFFFCC">2.1.5 รหัส</td>
<td rowspan="2" align="center" bgcolor="#FFFFCC">2.1.6 จำนวนเงิน</td>
</tr>
<tr class="bg-success">
<td align="center" bgcolor="#66FFFF">2.1.2.1 จำนวนเงิน</td>
<td align="center" bgcolor="#66FFFF">2.2.2.2 ร้อยละ</td>
</tr>
<?php
$q="SELECT
tpr_data.coop_name,
tpr_data.coop_id,
tpr_data.data4,
sum(tpr_data.data5)AS_SUM5,
sum(tpr_data.data4+tpr_data.data5)AS_SUM45
FROM tpr_data
WHERE coop_id='180'
group by coop_id ";
$qr=$mysqli->query($q);
$ii=0;
while($rs=mysqli_fetch_array($qr)){
$x1=$rs['coop_name'];
$temp_data2=$rs['coop_id'];
$temp_data3=$rs['data4'];
$temp_data4=$rs['AS_SUM5'];
$temp_data5=$rs['AS_SUM45'];
}
$ii++;
$q2="SELECT
tpr_data.code_name,
tpr_data.code_id,
tpr_data.data5
FROM
tpr_data
WHERE tpr_data.coop_id = '180' AND type_code ='1' AND data5 <>0 ";
$qr2=$mysqli->query($q2);
$row_cnt = $qr2->num_rows;
$i=0;
while($rs2=mysqli_fetch_array($qr2)){
$data1=$rs2['code_name'];
$data2=$rs2['code_id'];
$data3=$rs2['data5'];
$i++;
?>
<tr >
<td align="center"><?=$ii;?></td>
<td>
<?php if($x3==1){?> <?=$x1?><?php } ?></td>
<td align="center"><?=$temp_data2?></td>
<td align="right"><?=number_format($temp_data5,2)?>
</td>
<td align="right"><?=number_format($temp_data3,2)?>
</td>
<td align="right"><?=number_format($temp_data3*100/$temp_data5,2)?>
</td>
<td align="center"><?=$row_cnt?></td>
<td align="right"><?=number_format($temp_data4,2)?>
</td>
<td align="right"><?=number_format($temp_data4*100/$temp_data5,2)?>
</td>
<td align="center"><?=$i;?></td>
<td align="left"> <?=$rs2['code_name'];?></td>
<td align="center"><?=$rs2['code_id'];?></td>
<td align="right"><?=number_format($data3,2)?>
</td>
</tr>
<?
}
?>
<tr class="bg-info">
<td colspan="3" align="center" bgcolor="#FFCCFF"> </td>
<td align="right" bgcolor="#FFCCFF"> </td>
<td align="right" bgcolor="#FFCCFF"> </td>
<td align="right" bgcolor="#FFCCFF"> </td>
<td align="right" bgcolor="#FFCCFF"> </td>
<td align="right" bgcolor="#FFCCFF"> </td>
<td align="right" bgcolor="#FFCCFF"> </td>
<td align="right" bgcolor="#FFCCFF"> </td>
<td align="right" bgcolor="#FFCCFF"> </td>
<td align="center" bgcolor="#FFCCFF">รวม</td>
<td align="right" bgcolor="#FFCCFF"><?=number_format($temp_data5,2)?>
</td>
</tr>
</table>
</body>
</html>
ตอนนี้ผมได้แบบนี้ครับ
ผมต้องการในส่วนนี้ให้ออกแค่ 1 บรรทัดต้องทำอย่างไงครับ
Tag : PHP, MySQL, HTML, CSS
Date :
2017-07-25 07:54:11
By :
panyaadd
View :
862
Reply :
8
distinct
/// ใส่ คำสั่งนี้ดู ครับ distinct
SELECT
distinct
tpr_data.coop_name,
tpr_data.coop_id,
tpr_data.data4,
sum(tpr_data.data5)AS_SUM5,
sum(tpr_data.data4+tpr_data.data5)AS_SUM45
FROM tpr_data
WHERE coop_id='180'
group by coop_id
Date :
2017-07-25 08:35:52
By :
Bouasavanh HararRock
ตอบความคิดเห็นที่ : 2 เขียนโดย : panyaadd เมื่อวันที่ 2017-07-25 10:24:24
รายละเอียดของการตอบ ::
distinct
/// ใส่ คำสั่งนี้ดู ครับ distinct
ตอนที่ q2 ก็ลองใส่ เช้าไปอีก
- และดุที่ เงื่อนไข q2 ดีๆครับ ไม่น่าจะยาก
- ใช้ LEFT JOIN ลองดู
- แนวคิดวิธีของผมเฉยๆ เอามาให้ดูครับ
SQL /// SELECT ข้อมูลออกมาก่อน
SELECT distinct bill_out.BillNo,
bill_out.ProductID,
bill_out.Name,
bill_out.NameLao,
bill_out.QTY,
bill_out.Price,
bill_out.Result,
IF(bill_out.CurrencyID=1,bill_out.Result,0) AS KIP,
IF(bill_out.CurrencyID=2,bill_out.Result,0) AS BATH,
IF(bill_out.CurrencyID=3,bill_out.Result,0) AS USD,
bill_id.Date,
bill_id.AdminID,
bill_id.DeptID,
bill_id.DivisionID,
bill_id.Sno,
type.TypeID,
type.TypeName,
admin.CodeID,
admin.AdminID,
admin.AdminName,
administrator.administrator_id,
administrator.administrator_name
FROM stock_d.bill_out
LEFT OUTER JOIN stock_d.bill_id ON bill_out.BillNo = bill_id.BillNo
LEFT OUTER JOIN stock_d.type ON type.TypeID = bill_out.TypeID
LEFT OUTER JOIN stock_d.admin ON bill_id.AdminID = admin.AdminID
LEFT OUTER JOIN stock_d.administrator ON bill_id.AdminID = stock_d.administrator.AdminID
WHERE (bill_id.Date BETWEEN '$DateStart1' AND '$DateEnd1')
AND (bill_id.Sno = '$Sno')
AND (bill_id.StatusBill = 'Y')
ORDER BY bill_id.BillNo,bill_out.ProductID,type.TypeName,bill_id.AdminID ASC
/////////
SQL // SUM ขั้นตอนสุดท้าย
SELECT SUM(bill_out.QTY) AS TotalOut,
Format(SUM(IF(bill_out.CurrencyID=1,bill_out.Result,0)),0) AS SKIP,
Format(SUM(IF(bill_out.CurrencyID=2,bill_out.Result,0)),0) AS SBTH,
Format(SUM(IF(bill_out.CurrencyID=3,bill_out.Result,0)),0) AS SUS,
bill_id.Date
FROM stock_d.bill_out
LEFT JOIN stock_d.bill_id ON ( bill_out.BillNo = bill_id.BillNo )
WHERE (bill_id.Date BETWEEN '$DateStart1' AND '$DateEnd1')
AND (bill_id.Sno = '$Sno')
AND (bill_id.StatusBill = 'Y')
Date :
2017-07-25 11:10:57
By :
Bouasavanh HararRock
น่าจะติดตรงลูปที่สองนี่ละครับ ถ้าจะทำแบบบ้านๆคงต้องใช้ if เข้ามาช่วย
Code (PHP)
<tr >
<td align="center"><?=$ii;?></td>
<td>
<?php if($x3==1){?> <?=$x1?><?php } ?></td>
<td align="center"><?php echo ($ii ==1) ? $temp_data2 : '' ;?></td>
<td align="right"><?php echo ($ii==1) ? number_format($temp_data5,2) : '';?>
</td>
<td align="right"><?=number_format($temp_data3,2)?>
</td>
<td align="right"><?=number_format($temp_data3*100/$temp_data5,2)?>
</td>
<td align="center"><?=$row_cnt?></td>
<td align="right"><?=number_format($temp_data4,2)?>
</td>
<td align="right"><?=number_format($temp_data4*100/$temp_data5,2)?>
</td>
<td align="center"><?=$i;?></td>
<td align="left"> <?=$rs2['code_name'];?></td>
<td align="center"><?=$rs2['code_id'];?></td>
<td align="right"><?=number_format($data3,2)?>
</td>
</tr>
Date :
2017-07-26 12:48:30
By :
ดินทราย
ได้ละครับ ส่วนแรก
Date :
2017-07-26 14:41:41
By :
panyaadd
ส่วนนี้ยังไม่ได้ครับ ต้องออกเหมือน 2.1.1 ถึง 2.1.6
Code (PHP)
<?php
include("db_connect.php"); // เรียกใช้ไฟล์ ตั้งค่า และฟังก์ชั่น เกี่ยวกับฐานข้อมูล
$mysqli = connect(); // สร้าง ตัวแปร mysqli instance สำหรับเรียกใช้งานฐานข้อมูล
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>mis เงินรับฝาก</title>
<style type="text/css">
<!--
.style1 {
font-family: "TH SarabunPSK";
font-weight: bold;
font-size: 16px;
}
-->
</style>
</head>
<body>
<?php
$q="SELECT
Sum(IF(type_code=0,tpr_data.data4,0)+IF(type_code=1,tpr_data.data5,0)+IF(type_code=2,tpr_data.data5,0)+IF(type_code=3,tpr_data.data5,0)+IF(type_code=4,tpr_data.data5,0)+IF(type_code=5,tpr_data.data5,0)) AS S1,
Sum(IF(type_code=0,tpr_data.data4,0)) AS S2,
Sum(IF(type_code=1,tpr_data.data5,0)) AS S3,
Sum(IF(type_code=2,tpr_data.data5,0)+IF(type_code=3,tpr_data.data5,0)) AS S4,
Sum(IF(type_code=4,tpr_data.data5,0)+IF(type_code=5,tpr_data.data5,0)) AS S5,
tpr_data.coop_name,tpr_data.coop_id FROM tpr_data WHERE coop_id='180' GROUP BY coop_name ";
$qr=$mysqli->query($q);
$ii=0;
while($rs=mysqli_fetch_array($qr)){
$x1=$rs['coop_name'];
$temp_data2=$rs['coop_id'];
$temp_data3=$rs['S2'];
$temp_data4=$rs['S3'];
$temp_data5=$rs['S1'];
$temp_data6=$rs['S4'];
$temp_data7=$rs['S5'];
}
$ii++;
$q2="SELECT
IF(type_code=1,tpr_data.code_name,0)AS D1,
IF(type_code=1,tpr_data.code_id,0)AS D2,
IF(type_code=1,tpr_data.data5,0)AS D3
FROM tpr_data WHERE tpr_data.coop_id = '180' AND type_code='1' AND data5 <>0 ";
$qr2=$mysqli->query($q2);
$row_cnt = $qr2->num_rows;
$q3="SELECT
tpr_data.code_name,
tpr_data.code_id,
tpr_data.data5
FROM tpr_data WHERE tpr_data.coop_id = '180' AND type_code='2'";
$qr3=$mysqli->query($q3);
$row_cnt3 = $qr3->num_rows;
$q4="SELECT tpr_data.data5 FROM tpr_data WHERE coop_id='180'AND type_code = '4' ";
$qr4=$mysqli->query($q4);
$row_cnt4 = $qr4->num_rows;
?>
<table width="165%" border="1" cellpadding="0" cellspacing="0" class="style1">
<tr>
<td rowspan="4" align="center" bgcolor="#FFCCFF">ที่</td>
<td rowspan="4" align="center" bgcolor="#FFCCFF">ชื่อสหกรณ์ที่รับฝาก</td>
<td rowspan="4" align="center" bgcolor="#FFCCFF">รหัส<br>สหกรณ์<br>ที่รับฝาก</td>
<td rowspan="4" align="center" valign="middle" bgcolor="#FFCCFF">จำนวนเงินรับ<br>ฝากทั้งสิ้น<br>(ช่อง 1.1 + 2.1.2.1 <br>+ 2.2.2.1 +3.2.1)</td>
<td colspan="2" align="center" bgcolor="#CCFFFF">1. จำนวนเงินรับฝากจากสมาชิก </td>
<td colspan="2" bgcolor="#FFFF66">2. สหกรณ์อื่น / เอกชน</td>
<td bgcolor="#FFFF66"> </td>
<td bgcolor="#FFFF66"> </td>
<td bgcolor="#FFFF66"> </td>
<td bgcolor="#FFFF66"> </td>
<td bgcolor="#FFFF66"> </td>
<td bgcolor="#FFFF66"> </td>
<td bgcolor="#FFFF66"> </td>
<td bgcolor="#FFFF66"> </td>
<td bgcolor="#FFFF66"> </td>
<td bgcolor="#FFFF66"> </td>
<td bgcolor="#FFFF66"> </td>
<td bgcolor="#FFFF66"> </td>
<td colspan="3" rowspan="2" align="center" bgcolor="#FF99CC">3. อื่นๆ (ระบุ) <br>เช่น บุคคลภายนอก</td>
</tr>
<tr>
<td rowspan="3" align="center" valign="top" bgcolor="#CCFFFF">1.1 จำนวนเงิน <br>(ใส่ยอดรวมทั้งสิ้น<br>ของสมาชิกที่ฝากเงิน)</td>
<td rowspan="3" align="center" valign="top" bgcolor="#CCFFFF">1.2 ร้อยละของเงิน<br>รับฝากทั้งสิ้น</td>
<td colspan="2" bgcolor="#FFFFCC">2.1 ประเภทสหกรณ์</td>
<td bgcolor="#FFFFCC"> </td>
<td bgcolor="#FFFFCC"> </td>
<td bgcolor="#FFFFCC"> </td>
<td bgcolor="#FFFFCC"> </td>
<td bgcolor="#FFFFCC"> </td>
<td bgcolor="#FFCC99"> 2.2 ประเภทเอกชน</td>
<td bgcolor="#FFCC99"> </td>
<td bgcolor="#FFCC99"> </td>
<td bgcolor="#FFCC99"> </td>
<td bgcolor="#FFCC99"> </td>
<td bgcolor="#FFCC99"> </td>
<td bgcolor="#FFCC99"> </td>
</tr>
<tr>
<td rowspan="2" valign="top" bgcolor="#FFCCFF">2.1.1 จำนวน <br>สก.ทั้งสิ้น</td>
<td colspan="2" bgcolor="#FFCCFF"> 2.1.2 จำนวนเงินรวมที่รับฝากจากสหกรณ์</td>
<td rowspan="2" align="center" bgcolor="#66FFFF">2.1.3 ลำดับที่ของ<br> สก.ที่นำเงินมาฝาก</td>
<td rowspan="2" align="center" bgcolor="#66FFFF">2.1.4 รายชื่อสหกรณ์<br>ที่นำเงินมาฝาก</td>
<td rowspan="2" align="center" bgcolor="#66FFFF">2.1.5 รหัส<br>สหกรณ์</td>
<td rowspan="2" align="center" bgcolor="#66FFFF">2.1.6 จำนวนเงิน<br>ที่นำมาฝาก</td>
<td rowspan="2" align="center" valign="top" bgcolor="#FF99FF">2.2.1 จำนวนบริษัท<br>/หน่วยงานทั้งสิ้น</td>
<td colspan="2" bgcolor="#FF99FF"> 2.2.2 จำนวนเงินรวมทั้งสิ้น</td>
<td rowspan="2" align="center" bgcolor="#66FFFF">2.2.3 ลำดับที่ของบริษัท<br>/หน่วยงานที่นำเงินมาฝาก</td>
<td rowspan="2" align="center" bgcolor="#66FFFF">2.2.4 รายชื่อบริษัท<br>/หน่วยงานที่นำเงินมาฝาก</td>
<td rowspan="2" align="center" bgcolor="#66FFFF">2.2.5 รหัสบริษัท<br>/หน่วยงาน</td>
<td rowspan="2" align="center" bgcolor="#66FFFF">2.6.6 จำนวนเงิน<br>ที่นำมาฝาก</td>
<td rowspan="2" align="center" valign="top" bgcolor="#FF99FF">3.1 จำนวนราย <br>/หน่วยงาน</td>
<td colspan="2" bgcolor="#FF99FF"> 3.2 จำนวนเงินรวม</td>
</tr>
<tr>
<td align="center" bgcolor="#FFCCFF">2.1.2.1 จำนวนเงิน</td>
<td align="center" bgcolor="#FFCCFF">2.2.2.2 ร้อยละของเงินรับฝาก</td>
<td align="center" bgcolor="#FF99FF">2.2.2.1 จำนวนเงิน</td>
<td align="center" bgcolor="#FF99FF">2.2.2.2 ร้อยละของเงินรับฝากทั้งสิ้น</td>
<td align="center" bgcolor="#FF99FF">3.2.1 จำนวนเงิน</td>
<td align="center" bgcolor="#FF99FF">3.2.2 ร้อยละของเงินรับฝากทั้งสิ้น</td>
</tr>
<?
$i=0;
while($rs2=mysqli_fetch_array($qr2)){
$data1=$rs2['code_name'];
$data2=$rs2['code_id'];
$data3=$rs2['data5'];
$i++;
if($i == 1){
$col1 = $ii;
$col2 = $x1;
$col3 = $temp_data2;
$col4 = number_format($temp_data5,2);
$col5 = number_format($temp_data3,2);
$col6 = number_format($temp_data3*100/$temp_data5,2);
$col7 = $row_cnt;
$col8 = number_format($temp_data4,2);
$col9 = number_format($temp_data4*100/$temp_data5,2);
$col10= number_format($temp_data6,2);
$col11= number_format($temp_data6*100/$temp_data5,2);
$col12 = $row_cnt3;
$col13 = $row_cnt4;
$col14= number_format($temp_data7,2);
$col15= number_format($temp_data7*100/$temp_data5,2);
}else{
$col1 = '';
$col2 = '';
$col3 = '';
$col4 = '';
$col5 = '';
$col6 = '';
$col7 = '';
$col8 = '';
$col9 = '';
$col10 = '';
$col11 = '';
$col12 = '';
$col13 = '';
$col14 = '';
$col15 = '';
}
?>
<tr>
<td align="center" ><?=$col1;?></td>
<td ><?=$col2?></td>
<td align="center"><?=$col3?></td>
<td align="right" ><?=$col4?></td>
<td align="right" ><?=$col5?></td>
<td align="right" ><?=$col6?> </td>
<td align="center"><?=$col7?></td>
<td align="right" ><?=$col8?> </td>
<td align="right" ><?=$col9?> </td>
<td align="center"><?=$i;?></td>
<td align="left" ><?=$rs2['D1'];?></td>
<td align="center"><?=$rs2['D2'];?></td>
<td align="right" ><?=number_format($rs2['D3'],2)?></td>
<td align="center"><?=$row_cnt4?></td>
<td align="center"><?=$col10?></td>
<td align="center"><?=$col11?></td>
<td align="center"><?=$i;?></td>
<td><?=$data31?></td>
<td><?=$data32?></td>
<td><?=$data33?></td>
<td align="center"><?=$col13?></td>
<td align="right"><?=$col14?></td>
<td align="center"><?=$col15?></td>
</tr>
<?
}
?>
<tr>
<td bgcolor="#FFCCFF"> </td>
<td align="center" bgcolor="#FFCCFF"> </td>
<td bgcolor="#FFCCFF"> </td>
<td bgcolor="#FFCCFF"> </td>
<td bgcolor="#CCFFFF"> </td>
<td bgcolor="#CCFFFF"> </td>
<td bgcolor="#FFCCFF"> </td>
<td bgcolor="#FFCCFF"> </td>
<td bgcolor="#FFCCFF"> </td>
<td bgcolor="#66FFFF"> </td>
<td bgcolor="#66FFFF"> </td>
<td align="center" bgcolor="#66FFFF">รวม</td>
<td align="right" bgcolor="#66FFFF"><?=number_format($temp_data4,2)?></td>
<td bgcolor="#FF99FF"> </td>
<td bgcolor="#FF99FF"> </td>
<td bgcolor="#FF99FF"> </td>
<td bgcolor="#66FFFF"> </td>
<td bgcolor="#66FFFF"> </td>
<td align="center" bgcolor="#66FFFF">รวม</td>
<td bgcolor="#66FFFF"> </td>
<td bgcolor="#FF99FF"> </td>
<td bgcolor="#FF99FF"> </td>
<td bgcolor="#FF99FF"> </td>
</tr>
</table>
</body>
</html>
ประวัติการแก้ไข 2017-07-26 14:42:36 2017-07-26 15:42:27
Date :
2017-07-26 14:42:11
By :
panyaadd
น่าจะตรงนี้ (มั้งครับ)
<td align="center"><?=$row_cnt4?></td> -->บรรทัด 179
Date :
2017-07-26 15:33:41
By :
ดินทราย
ยังไม่ได้เลยครับ ทุกท่าน
Date :
2017-08-02 15:35:49
By :
panyaadd
Load balance : Server 04