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,027

HOME > PHP > PHP Forum > สอบถาม การดึงข้อมูลมาโชว์ เป็นกลุ่ม ครับ ผมดึงมาได้แล้ว แต่ ยังไม่ตรงความต้องการเท่าไหร่ ครับ



 

สอบถาม การดึงข้อมูลมาโชว์ เป็นกลุ่ม ครับ ผมดึงมาได้แล้ว แต่ ยังไม่ตรงความต้องการเท่าไหร่ ครับ

 



Topic : 097943



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



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




ผมดึงมาโชว์ได้แล้ว คับ แต่ไม่ค่อยตรงความต้องการเท่าไหร่
ในกรอบสีแดง แสดงถูกแล้ว คับ ส่วนในกรอบสีเขียว ยังไม่ถูก ครับ คืออยากให้แถวนั้นแสดงข้อมูลเฉพาะชุดนั้นครับ 2013-12 ทั้งหมด ส่วน ในกรอบสีเหลือง ให้ ดึงลงมาข้างล้าง ครับ เพื่อจะได้เป็นเซ็ตเดียวกัน
รบกวนดูให้ที ครับ
Code (PHP)
  <?php
	// SELECT     DATE_FORMAT(Date,'%Y-%m') As MyDate FROM audit WHERE DATE_FORMAT(Date,'%m-%d') = '07-01'
$select_date=mysql_query("SELECT  distinct  order_date,   count(order_generation)    AS    V_TOTAL_new1   , SUM(size_new)   AS   V_TOTAL_new , DATE_FORMAT(order_date,'%Y-%m')   AS  Mydate   , check_status  , order_generation    AS    V_TOTAL2_
FROM  `genneration_size`    
Group by   DATE_FORMAT(order_date,'%Y-%m')  ,   order_generation");	
?>
 <table width="100%" border="1" align="left" cellpadding="5" cellspacing="0">
  <tr>
  <?
  $i=1;
	while($row_qu=mysql_fetch_array($select_date)){
?>
    <th width="91"> <div align="center"><?=$date_3[]=$row_qu[Mydate]  ?>
    </div></th>
<?
if($i % 9==0) // ขึ้นแถวไหม่ เมื่อครบ9
{
echo"</tr>";
}
$i++;
}
?>
</tr>
 </table>

47



Tag : PHP, MySQL, HTML/CSS, JavaScript, jQuery









ประวัติการแก้ไข
2013-07-17 18:42:35
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2013-07-17 17:43:25 By : 031130 View : 4303 Reply : 12
 

 

No. 1



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



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

เพิ่มส่วนของการเช็กว่าขึ้นเดือนปีใหม่รึยังเข้าไป

ก่อนเริ่มลูปให้เป็นค่าว่าง

$oldDate = "" [while......]
if( ($i % 9)==0 || $row_qu[Mydate] != $oldDate){
    echo"</tr>";
}
$oldDate = $row_qu[Mydate];
[loop]







แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-07-17 21:10:36 By : {Cyberman}
 


 

No. 2



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



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


พี่ครับ ผมลองทำตามที่พี่บอก ผลลัพธ์เป็นแบบนี้ ครับ ยังออกไม่ตรงอยู่ดี รบกวนอีกทีครับ
Code (PHP)
 <?
  $i=1;
  $oldDate=" ";
	while($row_qu=mysql_fetch_array($select_date)){
?>
        <th width="95" class="sfs"><?=$date_3[]=$row_qu[Mydate]  ?></th>
        <?
if(($i % 9==0) || $row_qu[Mydate] != $oldDate) // ขึ้นแถวไหม่ เมื่อครบ9
{
echo"</tr>";
}
$oldDate = $row_qu[Mydate];
$i++;
}
?>

44
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-07-18 09:23:30 By : 031130
 

 

No. 3



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



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


ช่วยแนะนำเพิ่มเติม หน่อย คับ ถ้า ไม่ได้อยู่ในกลุ่ม เดือน เดียวกัน ให้ ตัดขึ้นบรรทัดใหม่ ครับ ตอนนี้เเหมือนยัง ปนกัน อยู่
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-07-19 13:29:13 By : 031130
 


 

No. 4



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



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

Code (PHP)
if( ($i % 9)==0 || $row_qu[Mydate] != $oldDate){
    echo"</tr>";
    $i = 0;
}
$oldDate = $row_qu[Mydate];



เคลียร์ค่า $i ให้เป็น 0 ครับ
เมื่อเจอ $i++ ด้านล่าง $i จะมีค่าเป็น 1 อีกครั้ง
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-07-19 13:47:00 By : {Cyberman}
 


 

No. 5



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



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


ผลลัพธ์ ได้ออกมาแบบนี้ ครับ ผมแก้ หรือใส่ผิดรึเปล่า ครับ

Code (PHP)
 <table   width="1000" border="0" align="center" cellpadding="5" cellspacing="0">
  <tr>
    <td width="488" align="center" valign="top"><table   style="padding:0px;margin:0px" width="95" border="1" align="center" cellpadding="5" cellspacing="0"   bordercolor="#CCCCCC">
      <tr>
<?
  $oldDate=""; 
  $i=1;
	while($row_qu=mysql_fetch_array($select_date)){
?>
        <th width="95" class="sfs">$date_3[]=$row_qu[Mydate]  ?></th>
 <?
 if( ($i % 9)==0 || $row_qu[Mydate] != $oldDate){
    echo"</tr>";
    $i = 0;
$oldDate = $row_qu[Mydate];
 }
$i++;
}
?>
      </tr>
    </table>

ผลลัพธ์จากโค๊ด ครับ
898
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-07-19 14:40:56 By : 031130
 


 

No. 6



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



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

if(($i % 9==0) || ($row_qu[Mydate] != $oldDate && $oldDate != '')) // ขึ้นแถวไหม่ เมื่อครบ9

ลองแก้แล้วรันอีกทีครับ
ค่อยๆ แก้ทีละนิด
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-07-19 17:16:38 By : {Cyberman}
 


 

No. 7



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



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


แก้ตามพี่บอก ลองรันแล้ว คับ ไม่อยู่ในกลุ่มเหมือนเดิม ครับ

Code (PHP)
<?
  $i=0;
  $oldDate=''; 
	while($row_qu=mysql_fetch_array($select_date)){
?>
        <th width="95" class="sfs"><?=$date_3[]=$row_qu[Mydate] </th>
 <?
if(($i % 9==0) || ($row_qu[Mydate] != $oldDate  &&  $oldDate != '')){ // ขึ้นแถวไหม่ เมื่อครบ9
    echo"</tr>";
	$i=0;
}
$oldDate = $row_qu[Mydate];

$i++;
}
?>


22


ประวัติการแก้ไข
2013-07-19 18:21:21
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-07-19 18:20:43 By : 031130
 


 

No. 8



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



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

Code (PHP)
 <?
    $i=1;
    $oldDate="";
    while($row_qu=mysql_fetch_array($select_date)){
?>
        <th width="95" class="sfs"><?=$date_3[]=$row_qu['Mydate']?></th>
<?
    if( ($i % 9) ==0 || (  $oldDate != "" && $row_qu['Mydate'] != $oldDate) ) // ขึ้นแถวไหม่ เมื่อครบ9
    {
        echo"</tr><tr>";
        $i=1;
    }else{
        $i++;
    }
    $oldDate = $row_qu['Mydate'];
}
?>


ลองแก้ดูอีกทีครับ มองไม่ออกว่าพลาดตรงไหน


ประวัติการแก้ไข
2013-07-19 20:04:03
2013-07-19 20:04:52
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-07-19 20:03:23 By : {Cyberman}
 


 

No. 9



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



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

Final

Code (PHP)
	$i=1;
    $oldDate="";
	while($row_qu=mysql_fetch_array($select_date)){
		if($oldDate != "" && $oldDate != $row_qu['Mydate'] ) 
		{
			//ถ้าเดือนเปลี่ยนไปแล้ว ให้ขึ้นบรรทัดใหม่ก่อน แล้วค่อยแสดง
			echo"</tr><tr>";
			echo '<th width="95" class="sfs">'. $row_qu['Mydate'] . '</th>';
			
		}else if(($i % 9) ==0){// ขึ้นแถวไหม่ เมื่อครบ9
			//ถ้าครบกำหนด ให้แสดงข้อมูลก่อน แล้วค่อยขึ้นแถวใหม่
			echo '<th width="95" class="sfs">'. $row_qu['Mydate'] . '</th>';
			echo"</tr><tr>";

		}else{
			//ถ้ายังไม่ครบจำนวนที่ต้องเปลี่ยนบรรทัดให้แสดงเรื่อยๆ
			echo '<th width="95" class="sfs">'. $row_qu['Mydate'] . '</th>';
		}
		$i++;
		$oldDate = $row_qu['Mydate'];

	}


นั่งแกะอยู่เกือบชั่วโมง ไม่คาดคิดว่าจะต้องมีการตรวจสอบว่า
1. ให้แสดงข้อมูลก่อน แล้วขึ้นบรรทัดใหม่
2. ขึ้นบรรทัดใหม่ก่อน แล้วค่อยแสดงข้อมูล
3. ถ้ายังไม่ครบกำหนดก็แสดงตามปกติ


ประวัติการแก้ไข
2013-07-19 20:53:18
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-07-19 20:51:15 By : {Cyberman}
 


 

No. 10



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



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


ขอบคุณมาก ครับพี่ชาย เกือบสมบูรณ์ แล้วคับ เหลือ ตรงส่วน กรอบสีเขียว เท่านั้น ครับ
77
Code (PHP)
<?php
$select_date=mysql_query("SELECT  DISTINCT  order_date,  count(order_generation)    AS    V_TOTAL_new1   , SUM(size_new)   AS   V_TOTAL_new , DATE_FORMAT(order_date,'%Y-%m')   AS   Mydate   , check_status  , order_generation    AS    V_TOTAL2_
FROM  `genneration_size`    
Group by      DATE_FORMAT(order_date,'%Y-%m')   DESC ,   order_generation");	
?>  
<?
  $oldDate=""; 
  $i=1;
	while($row_qu=mysql_fetch_array($select_date)){
?>
<?
 if($oldDate != "" && $oldDate != $row_qu['Mydate'] ) 
	{
		//ถ้าเดือนเปลี่ยนไปแล้ว ให้ขึ้นบรรทัดใหม่ก่อน แล้วค่อยแสดง
		echo"</tr><tr>";
		echo '<th width="95" class="sfs">'. $row_qu['Mydate'] . '</th>';
		
	}else if(($i % 9) ==0){// ขึ้นแถวไหม่ เมื่อครบ9
		//ถ้าครบกำหนด ให้แสดงข้อมูลก่อน แล้วค่อยขึ้นแถวใหม่
		echo '<th width="95" class="sfs">'. $row_qu['Mydate'] . '</th>';
		echo"</tr><tr>";

	}else{
		//ถ้ายังไม่ครบจำนวนที่ต้องเปลี่ยนบรรทัดให้แสดงเรื่อยๆ
		echo '<th width="95" class="sfs">'. $row_qu['Mydate'] . '</th>';
	}
	$i++;
	$oldDate = $row_qu['Mydate'];

}
?>



ประวัติการแก้ไข
2013-07-20 10:28:27
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-07-20 10:25:13 By : 031130
 


 

No. 11



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



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

เอาส่วน else if(($i % 9) ==0) บล็อกนี้ออกไปก็น่าจะใช้ได้ ไม่ต้องให้ขึ้นบรรทัดใหม่ เมื่อครบ 9

ลบบรรทัดที่ 18 - 22 ออกไปครับ


ประวัติการแก้ไข
2013-07-20 12:24:18
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-07-20 12:23:36 By : {Cyberman}
 


 

No. 12



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



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


ขอบคุณ มาก ๆ ครับ พี่ชาย นี่คือ โค๊ดทั้งหมด ครับ เอาไว้ให้ เผื่อมีใคร ทำแบบผม จะได้เป็นแนวทางครับ เพราะเห็นคนก็ถามเกี่ยวกับแบบนี้ เยอะเหมือนกันคับ ^____^
ccd

<?php
$select_date=mysql_query("SELECT DISTINCT order_date, count(order_generation) AS V_TOTAL_new1 , SUM(size_new) AS V_TOTAL_new , DATE_FORMAT(order_date,'%Y-%m') AS Mydate , check_status , order_generation AS V_TOTAL2_
FROM `genneration_size`
Group by DATE_FORMAT(order_date,'%Y-%m') DESC , order_generation");
?>
<?
$oldDate="";
$i=1;
while($row_qu=mysql_fetch_array($select_date)){
?>
<?
if($oldDate != "" && $oldDate != $row_qu['Mydate'] )
{
//ถ้าเดือนเปลี่ยนไปแล้ว ให้ขึ้นบรรทัดใหม่ก่อน แล้วค่อยแสดง
echo"</tr><tr>";
echo '<th width="95" class="sfs">'. $row_qu['Mydate'] . '</th>';

}else{
//ถ้ายังไม่ครบจำนวนที่ต้องเปลี่ยนบรรทัดให้แสดงเรื่อยๆ
echo '<th width="95" class="sfs">'. $row_qu['Mydate'] . '</th>';
}
$i++;
$oldDate = $row_qu['Mydate'];

}
?>
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-07-20 13:15:51 By : 031130
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
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 อัตราราคา คลิกที่นี่