สอบถามในการ query ในฐานข้อมูลครับ ให้ข้อมูลออกมาตาม รูปภาพครับ
group by nId_payment แล้วไป loop เอาอยากได้แนวนอนแนวตั้ง
Date :
2018-08-16 12:38:06
By :
DK
ขอบคุณครับ เดียวจะไปลองดูครับ
ประวัติการแก้ไข 2018-08-16 13:16:30
Date :
2018-08-16 13:14:24
By :
weekung072
Code (PHP)
$sql_nId = "
SELECT tb_payment_detail.nId_payment
FROM tb_payment_detail
GROUP BY
tb_payment_detail.nId_payment
ORDER BY
tb_payment_detail.nId_payment
";
$data = $db->select($sql_nId);
foreach($data as $value){
$nId_payment = $value['nId_payment'];
echo"
<tr class='font-grey-gallery'>
<td class='valigntop'>$nId_payment</td>
";
$sql_detail = "
SELECT * FROM tb_payment_detail
WHERE nId_payment = '{$nId_payment}'
ORDER BY nId_payment_detail
";
$res = $db->select($sql_detail);
$DetailArray = [];
foreach($res as $val){
$cDetail_payment = $val['cDetail_payment'];
echo"
<td class='valigntop'>$cDetail_payment</td>
</tr>
";
$count++;
}
}
ทำยังไงต่อดีครับ ไปไม่ถูกแล้วครับ ทำให้ต่อเป็น แนวนอนครับ
ประวัติการแก้ไข 2018-08-16 14:13:12
Date :
2018-08-16 14:04:05
By :
weekung072
ตอนนี้ต่อแนวนอนได้แล้วแต่อยากให้ อยู่ใน ช่องเดียวกับ รายละเอียด ต้องทำยังไงหรอครับ
Code (PHP)
$count = 1;
$sql_nId = "
SELECT
dbo.tb_payment.nId_payment,
dbo.tb_payment.ID_payment,
dbo.tb_payment.cName_sup,
dbo.tb_payment_pdf.cPayment_pdf
FROM
dbo.tb_payment_detail
LEFT JOIN dbo.tb_payment ON dbo.tb_payment_detail.nId_payment = dbo.tb_payment.nId_payment
LEFT JOIN dbo.tb_payment_pdf ON dbo.tb_payment_detail.nId_payment = dbo.tb_payment_pdf.nId_payment
WHERE
tb_payment.nId_payment IS NOT NULL
AND tb_payment.nId_kong = '5'
$all_filter
GROUP BY
dbo.tb_payment_detail.nId_payment,
dbo.tb_payment.nId_payment,
dbo.tb_payment.cName_sup,
dbo.tb_payment.ID_payment,
dbo.tb_payment_pdf.cPayment_pdf,
tb_payment.dPayment_date
ORDER BY tb_payment.dPayment_date ASC
";
$data = $db->select($sql_nId);
foreach($data as $value){
$nId_payment = $value['nId_payment'];
$ID_payment = $value['ID_payment'];
$cName_sup = $value['cName_sup'];
$cPayment_pdf = $value['cPayment_pdf'];
if($cPayment_pdf != null){
$disabled = "disabled";
$hidden = "";
}else{
$disabled = "";
$hidden = "hidden";
}
echo"
<tr class='font-grey-gallery'>
<td class='valigntop'>$count</td>
<td class='valigntop'>$ID_payment</td>
<td class='valigntop'>$cName_sup</td>
";
$sql_detail = "
SELECT * FROM tb_payment_detail
WHERE nId_payment = '{$nId_payment}'
ORDER BY nId_payment_detail
";
$res = $db->select($sql_detail);
$DetailArray = [];
foreach($res as $val){
$cDetail_payment = $val['cDetail_payment'];
echo"
<td class='valigntop'>$cDetail_payment</td>
";
}
echo"
<td class='text-center'><a href='../../../../pdf/pdf_Payment.php?nId_payment=$nId_payment' target='_blank'><i class='fa fa-print'></i><a/></td>
<td class='valigntop'><a href='upload.php?nId_payment=$nId_payment'><button class='btn btn-success' $disabled>Upload</button></a></td>
<td><a href='$cPayment_pdf' target='_blank' $hidden><i class='fa fa-file-pdf-o'></i><a/></td>
<td><a href='../cashcheck.php?nId_payment=$nId_payment&action=edit' target='_blank'><i class='fa fa-edit'></i></a></td>
</tr>
";
$count++;
}
Date :
2018-08-16 14:36:30
By :
weekung072
เอา ข้อมูลที่ได้จากการ group by มาดูหน่อยครับ
เช่น
[
[0] => ['id' => 'xxx'],
[1] => ['id' => 'xxx'],
]
ขี้เกียจอ่านโค๊ด
Date :
2018-08-16 14:50:59
By :
DK
แล้วก็ ใน loop ผมว่าน่าจะได้ข้อมูลจากที่คุณ คิวรี่ครั้งแรกครบแล้วไม่ใช่หรือ ทำไมในไป query หา detail อีกอ่ะ
Date :
2018-08-16 14:53:36
By :
DK
ครับ ข้อมูลที่ Group by ออกมาครับ
Date :
2018-08-16 14:59:26
By :
weekung072
ข้อมูลยังไม่ครบครับ ต้องการ detail ครับ เพราะ ในบางรหัส มี รายละเอียดมากกว่า 1 รายการครับ
Date :
2018-08-16 15:04:33
By :
weekung072
Load balance : Server 00