Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > ขอความช่วยเหลือดึงข้อมูลสินค้ามาแล้วแต่จำนวนคงเหลือไม่แสดง



 

ขอความช่วยเหลือดึงข้อมูลสินค้ามาแล้วแต่จำนวนคงเหลือไม่แสดง

 



Topic : 129565



โพสกระทู้ ( 150 )
บทความ ( 0 )



สถานะออฟไลน์




ขอความช่วยเหลือดึงข้อมูลสินค้ามาแล้วแต่จำนวนคงเหลือไม่แสดง ฐานข้อมูลที่เก็บเป็นแบบนี้ครับ
database

โดยเมื่อรัน PHP แล้ว จำนวนสินค้าไม่แสดง ดังรูป
notshow

ไม่รู้ว่า CODE ผิดตรงไหน ช่วยแนะนำด้วยครับ

Code
<html>
<head>
<title>SunZan-Desgin.Com</title>
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'>
<style>
.number{ text-align : right;}
.number div{
    background: #91F7A4;
    color : #ff0000;
}
#test_report th{ background-color : #21BBD6; color : #ffffff;}
#test_report{
    border-right : 1px solid #eeeeee;
    border-bottom : 1px solid #eeeeee;
}
#test_report td,#test_report th{
    border-top : 1px solid #eeeeee;
    border-left : 1px solid #eeeeee;
    padding : 2px;
}
#txt_year{ width : 70px;}
.fail{ color : red;}
</style>
</head>
<body>

<?php

//เปิดการเชื่อมต่อฐานข้อมูล bpworld_opencart

mysql_connect("localhost","bpworld_root","root");
mysql_select_db("bpworld_opencart");
mysql_query("SET NAMES UTF8");
//ดึงข้อมูลsize
$sizeshow = array();
$strSQL = "SELECT ProductName,size FROM `testproduct` WHERE ProductName='2028' ";
$qry = mysql_query($strSQL) or die('ไม่สามารถเชื่อมต่อฐานข้อมูลได้ Error : '. mysql_error());
while($row = mysql_fetch_assoc($qry)){
    $sizeshow[$row['size']] = $row['size'];
}
//ดึงข้อมูลcolor
$allcolor = array();
$strSQL = "SELECT color FROM `testproduct`  WHERE ProductName='2028' ";
$qry = mysql_query($strSQL) or die('ไม่สามารถเชื่อมต่อฐานข้อมูลได้ Error : '. mysql_error());
while($row = mysql_fetch_assoc($qry)){
    $allcolor[$row['color']] = $row['color'];
}
//เรียกข้อมูล qty,size,color เพื่อแสดงจำนวน
$qtyshow = array();
$strSQL = "SELECT qty,size,color FROM `testproduct` ";
$strSQL.= "WHERE ProductName='2028' ";
$qry = mysql_query($strSQL) or die('ไม่สามารถเชื่อมต่อฐานข้อมูลได้ Error : '. mysql_error());
while($row = mysql_fetch_assoc($qry)){
    $qtyshow[$row['size']][$row['color']] = $row['qty'];

}
echo "<table border='0' id='test_report' cellpadding='0' cellspacing='0'>";
echo '<tr>';//เปิดแถวใหม่ ตาราง HTML
echo '<th>รายชื่อพนักงาน</th>';

//สร้างหัวตารางแสดงสีที่มี
foreach($allcolor as $color=>$color){
    echo '<th width="50">' . $color . '</th>';
}



echo "</tr>";
foreach($sizeshow as $sizecolor=>$psize){
    echo '<tr>';//เปิดแถวใหม่ ตาราง HTML
     
    echo '<td>'. $psize .'</td>';
     
    //เรียกข้อมูลเพื่อแสดง qty,size,color
    foreach($qtyshow as $sizecolor=>$psize){
		
        $qty = isset($qtyshow[$sizecolor][$j]) ? '<div>'.$qtyshow[$sizecolor][$j].'</div>' : 0;
        echo "<td class='number'>", $qty, "</td>";
    }
     
    echo '</tr>';//ปิดแถวตาราง HTML
}
echo "</table>";
mysql_close();//ปิดการเชื่อมต่อฐานข้อมูล
?>




Tag : PHP, MySQL







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2017-11-24 07:55:31 By : sranuwat View : 819 Reply : 4
 

 

No. 1



โพสกระทู้ ( 432 )
บทความ ( 1 )



สถานะออฟไลน์
Blogger

งงเนาะเขียนระบบวนไปวนมา และ ไม่เอา ID มาด้วย
เอามาเป็นแบบ array แต่ไม่มี ID มาด้วย ใน Code SELECT
----------------------------------
เขียนที่เดียวก็ได้
SQL :: SELECT * From testproduct
LEFT JOIN ............... testproduct.SizeID
.....
WHERE ProductName ='$ProductName'

mysql_fetch_assoc
--------------------------------
Size = new table
Color = new table






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-11-24 08:37:19 By : Hararock
 


 

No. 2

Guest


$strSQL = "SELECT ProductName,size,color,qty FROM `testproduct` WHERE ProductName='2028' ";

$qry = mysql_query($strSQL) or die('ไม่สามารถเชื่อมต่อฐานข้อมูลได้ Error : '. mysql_error());

while($row = mysql_fetch_assoc($qry)){
$data[] = $row;
}

echo '<pre>';
var_dump($data);
echo '</pre>';


ยังงี้มันจะสั่นกว่าไหมครับ เวลาจะเรียกใช้ก็ไปวนเอาออกมากจาก $data [ไม่ได้ลองรัน]
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-11-24 17:00:50 By : Fennecfox
 

 

No. 3



โพสกระทู้ ( 150 )
บทความ ( 0 )



สถานะออฟไลน์


ได้แล้วครับ ขอบคุณทั้ง 2 ท่านเลยนะครับ

ok

ผมแก้โค๊ดเป็นแบบนี่ครับ

Code
<html>
<head>
<title>SunZan-Desgin.Com</title>
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'>
<style>
.number{ text-align : center; width:100;}
.number div{
    background: #91F7A4;
    color : #ff0000;
	
}
#test_report th{ background-color : #21BBD6; color : #ffffff;}
#test_report{
    border-right : 1px solid #eeeeee;
    border-bottom : 1px solid #eeeeee;
}
#test_report td,#test_report th{
    border-top : 1px solid #eeeeee;
    border-left : 1px solid #eeeeee;
    padding : 2px;
}
#txt_year{ width : 70px;}
.fail{ color : red;}
</style>
</head>
<body>

<p>
  <?php

//เปิดการเชื่อมต่อฐานข้อมูล bpworld_opencart

mysql_connect("localhost","bpworld_root","root");
mysql_select_db("bpworld_opencart");
mysql_query("SET NAMES UTF8");
//ดึงข้อมูลsize
$sizeshow = array();
$strSQL = "SELECT ProductName,size ,price FROM `testproduct` WHERE ProductName='2028' ORDER BY size ASC ";
$qry = mysql_query($strSQL) or die('ไม่สามารถเชื่อมต่อฐานข้อมูลได้ Error : '. mysql_error());
while($row = mysql_fetch_assoc($qry)){
    $sizeshow[$row['size']] = $row['size'];
	
}
//ดึงข้อมูลcolor
$allcolor = array();
$strSQL = "SELECT color FROM `testproduct`  WHERE ProductName='2028' ORDER BY color ASC ";
$qry = mysql_query($strSQL) or die('ไม่สามารถเชื่อมต่อฐานข้อมูลได้ Error : '. mysql_error());
while($row = mysql_fetch_assoc($qry)){
    $allcolor[$row['color']] = $row['color'];
}
//เรียกข้อมูล qty,size,color เพื่อแสดงจำนวน
$qtyshow = array();
$strSQL = "SELECT qty,size,color FROM `testproduct` ";
$strSQL.= "WHERE ProductName='2028' GROUP BY  `size` ,  `color`  ";
$qry = mysql_query($strSQL) or die('ไม่สามารถเชื่อมต่อฐานข้อมูลได้ Error : '. mysql_error());
while($row = mysql_fetch_assoc($qry)){
    //$qtyshow=[$row['size']=>$row['color']=>$row['qty']];
	

}
echo "<table border='0' id='test_report' cellpadding='0' cellspacing='0'>";
echo '<tr>';//เปิดแถวใหม่ ตาราง HTML
echo '<th>รูปสินค้า</th>';
echo '<th>รุ่น</th>';
echo '<th>ไซร์</th>';
echo '<th>ราคา</th>';

//สร้างหัวตารางแสดงสีที่มี
foreach($allcolor as $color=>$color){
    echo '<th width="50" align="center">' . $color . '</th>';
}

echo "</tr>";

 echo '<tr>';//เปิดแถวใหม่ ตาราง HTML
echo '<td width="150" align="center" rowspan="3">&nbsp;</td>';
foreach($sizeshow as $sizecolor=>$psize){
   	
    echo '<td width="150" align="center">2028</td>';
    echo '<td width="150" align="center">'. $psize .'</td>';
	    
    //เรียกข้อมูลเพื่อแสดง qty,size,color
	//ดึงข้อมูลcolor
$allsize = array();
$priceshow = array();
$strSQL = "SELECT qty,price FROM `testproduct`  WHERE ProductName='2028' AND size='".$psize."' GROUP BY size,color ORDER BY color ASC";
$qry = mysql_query($strSQL) or die('ไม่สามารถเชื่อมต่อฐานข้อมูลได้ Error : '. mysql_error());
while($row = mysql_fetch_assoc($qry)){
    $allsize[$row['qty']] = $row['qty'];
	$priceshow[$row['price']] = $row['price'];
}
    //show price
	foreach($priceshow as $sizeprice=>$pprice){
		echo '<td width="100" align="center">'. number_format($pprice,0) .'</td>';
		
	}

    foreach($allsize as $color2=>$color2){
		if($color2==''){$sqty='0';} else {$sqty=$color2;}
	echo "<td class='number' >", $sqty , "</td>";
}
     
    echo '</tr>';//ปิดแถวตาราง HTML
}
echo "</table>";
mysql_close();//ปิดการเชื่อมต่อฐานข้อมูล
?>
</p>
<p>&nbsp; </p>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-11-24 17:26:53 By : sranuwat
 


 

No. 4



โพสกระทู้ ( 432 )
บทความ ( 1 )



สถานะออฟไลน์
Blogger

แล้วสี Black Green Pink คุณแค่ SELECT เอามาเฉยๆ คุณจะไม่ Sum(QTY) บ้างหรอ? จะได้รู้ จำนวนที่แท้ จริง
---------------------------
และ Code mysql SELECT ProductName='2028'
--------------------------
ถ้า มีรายการ 2029 เกิดขื้นล่ะ
--------------------------
ลองไปคิดดูครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2017-11-25 08:23:41 By : Hararock
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ขอความช่วยเหลือดึงข้อมูลสินค้ามาแล้วแต่จำนวนคงเหลือไม่แสดง
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 04
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่