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 > สอบถามเรื่องการแสดงผลแนวนอนของ PHP Connect MySQL ครับ



 

สอบถามเรื่องการแสดงผลแนวนอนของ PHP Connect MySQL ครับ

 



Topic : 110049



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



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




สอบถามเรื่องการแสดงผลของ PHP MySQL ครับ

ขอบโทษจริงๆครับลองหาแล้ว อ่านแล้วแต่ไม่เข้าใจเพราะประสบการณ์น้อยครับ
ต้องการดึงข้อมูลจาก MySQL มาแสดงผลครับ แบบนี้ครับ
Task Name | Day
-----------------------------------------------------------------
| Mon | Tue | Wed | Thu | Fri | Sat | Sun |
-----------------------------------------------------------------
Check01 | OK | ER | OK | OK | OK | OK | OK |
Check02 | OK | OK | OK | OK | OK | OK | OK |
Check03 | OK | OK | OK | OK | OK | OK | OK |
-----
Check22 | OK | OK | OK | OK | OK | OK | OK |

ต้องการให้แสดงผลการตรวจวัน MON แสดงถึง Check01 - Check22 พอวันอังคารให้ไปขึ้น Column ใหม่ต่อไปครับ

ตอนนี้ Query ออกมาได้ แนวตั้งหมดครับแบบนี้

----------------------------------------------------------------- | Mon | Tue | Wed | Thu | Fri | Sat | Sun | ----------------------------------------------------------------- Check01 | OK | Check02 | ER | Check03 | OK | ----- Check22 | OK | Check01 | OK | Check02 | OK | Check03 | OK | ----- Check22 | OK | Check01 | OK | Check02 | OK | Check03 | OK | ----- Check22 | OK | Check01 | OK | Check02 | OK | Check03 | OK | ----- Check22 | OK |


ผมต้องปรับแก้ยังไงครับ


Source Code

<?php
	function checkvalue_replacestring($checkvalue){
	if( $checkvalue == "Completed")
			{
				echo "<center><font size=3 color=black>";
				echo substr_replace("Completed", "&#x2714;", $checkvalue);
				echo "</font><center>";
			}
			else{
				echo "<center><font color = red size=3>";
				echo substr_replace("Error", "&#x2716;", $checkvalue);
				echo "</font><center>";
			}
	}

$db = new PDO("mysql:host=localhost;dbname=test", 'root', 'admin');

$sql = "SELECT
dtdailycheckvalue.vmonth,
dtdailycheckvalue.vweekno,
dtdailycheckvalue.vday,
dtdailycheckvalue.vdate,
dtdailycheckvalue.vdatestart,
dtdailycheckvalue.vdateend,
dtdailycheckvalue.mcname,
dtdailycheckvalue.valuecheck,
dtdailycheckvalue.vsign,
mtdailycl_maincat.mcname
FROM
	dtdailycheckvalue
	INNER JOIN mtdailycl_maincat ON mtdailycl_maincat.mcid = dtdailycheckvalue.mcname
GROUP BY
	dtdailycheckvalue.vday,
	dtdailycheckvalue.mcname
ORDER BY
	dtdailycheckvalue.vdate ASC,
	dtdailycheckvalue.vmonth ASC,
	dtdailycheckvalue.mcname ASC,
	dtdailycheckvalue.vweekno ASC,
	dtdailycheckvalue.vday ASC,
	dtdailycheckvalue.vdate ASC" ;

$stmt = $db->prepare($sql);
//$stmt->bindParam(':id', $id);
$stmt->execute();

$res_return = $stmt->fetchAll(PDO::FETCH_ASSOC);
?>
<!--  Table +++++++++++++++++++  -->
<table>
<tr><font size=5><u>Check List</u></font></tr>
<tr>
<td><u>Descriptions</u></td>
<td>Mon</td>
<td>Tue</td>
<td>Wed</td>
<td>Thu</td>
<td>Fri</td>
<td>Sat</td>
<td>Sun</td>
</tr>
<?php
foreach($res_return as $row){
?>
<tr>
<td><?php echo $row['mcname'] ; ?></td>
<td><?php echo checkvalue_replacestring($row['valuecheck'] ); ?></td>
</tr>
<?php
}
?>
</table>



ขอบพระคุณมากครับ



Tag : PHP, MySQL, Windows







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2014-07-19 14:33:22 By : itsmenow View : 1864 Reply : 8
 

 

No. 1



โพสกระทู้ ( 9,559 )
บทความ ( 2 )



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


แล้วเราจะแน่ใจยังไงครับว่า record ไหนสำหรับวันอะไร ครับ
หรือว่า มันครบทุกวัน เรียงมาตามลำดับ ไปหลุดครับ
ถ้าเป็นแบบนั้น ก็แบบข้างล่างครับ แต่แสดงในส่วนของ table ครับ

Code (PHP)
<table>
<tr><font size=5><u>Check List</u></font></tr>
<tr>
<td><u>Descriptions</u></td>
<td>Mon</td>
<td>Tue</td>
<td>Wed</td>
<td>Thu</td>
<td>Fri</td>
<td>Sat</td>
<td>Sun</td>
</tr>
<?php
$buffer=array();
foreach($res_return as $row){
	if(!isset($buffer[$row['mcname']])) $buffer[$row['mcname']]=array();
	$buffer[$row['mcname']][]=$row['valuecheck'];
}
foreach($buffer as $key=>$bf){
?>
<tr><td><?php echo $key; ?></td><?php foreach($bf as $k => $vl) echo '<td>'.$vl.'</td>'; ?></tr>
<?php
}
?>
</table>







แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-07-19 16:15:49 By : Chaidhanan
 


 

No. 2



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



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


ได้ละครับขอบคุณพี่ Chaidhanan มากครับ
ในแต่ละ record ของ valuecheck ผมเก็บวัน เดือน สัปดาห์ไว้ครับ ค่อนข้างมั่นใจว่าไม่มีหลุดแน่นอนครับ

จะรบกวนขอคำอธิบาย code ที่เขียนเพิ่มให้หน่อย ได้ไหมครับ ได้เป็นความรู้เพราะดูแล้ว งง ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-07-19 16:31:03 By : itsmenow
 

 

No. 3



โพสกระทู้ ( 9,559 )
บทความ ( 2 )



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


Code (PHP)
<table>
<tr><font size=5><u>Check List</u></font></tr>
<tr>
<td><u>Descriptions</u></td>
<td>Mon</td>
<td>Tue</td>
<td>Wed</td>
<td>Thu</td>
<td>Fri</td>
<td>Sat</td>
<td>Sun</td>
</tr>
<?php
// เร่ิมต้น สร้าง buffer array สำหรับแนวนอนครับ 
$buffer=array();
foreach($res_return as $row){
	// ตรวจเช็ควาตัวแปร ได้ถูกสร้างไว้หรือเปล่า ถ้าไม่ได้สร้าง ใสสร้าง อ้างอิงชื่อ mcname
	if(!isset($buffer[$row['mcname']])) $buffer[$row['mcname']]=array(); 
	// นำค่าเก็บไว้ใน buffer ในรูป array อ้างอิง  mcname
	$buffer[$row['mcname']][]=$row['valuecheck'];
}
// จบส่วนการเก็บค่าในแนวนอน

// เริ่มแสดงผลแนวนอน
foreach($buffer as $key=>$bf){
	// $key =mcname  $bf = array(valuecheckMon, valuecheckTue ... valuecheckSun)
?>
<tr><td><?php echo $key; ?></td><?php foreach($bf as $k => $vl) echo '<td>'.$vl.'</td>'; ?></tr>
<?php
}
?>
</table>



ประวัติการแก้ไข
2014-07-19 17:45:48
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-07-19 17:17:37 By : Chaidhanan
 


 

No. 4



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



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


ขอบคุณอีกครับ run ได้สวยงาม
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-07-19 18:42:59 By : itsmenow
 


 

No. 5



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



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


มีจุดต้องแก้ไขนิดนึงครับผมยังไม่เข้าใจ code ดีพอครับ
คือ เอาค่าที่เก็บใน field dtdailycheckvalue.valuecheck
มาแสดงใน column dtdailycheckvalue.vday คือ (Mon | Tue | Wed | Thu | Fri | Sat | Sun |)

ข้อมูลที่เก็บในDatabase
vday = SUN
checklistdatabase

อันนี้ตอน query run ไม่ตรงวันตาม column
แต่เวลา Quesy ออกมามันไม่ได้สนใจว่าวันอะไรครับ


แก้ไข Code ยังไงครับ

Form เขียนข้อมูลลง Database
checklistform


ประวัติการแก้ไข
2014-07-20 23:04:58
2014-07-20 23:11:04
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-07-20 23:02:31 By : itsmenow
 


 

No. 6



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



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


รบกวน คุณ Chaidhanan ลองดูให้หน่อยได้ไหมครับว่าต้องแก้ส่วนไหนเพราะว่าดู code แล้วซับซ้อนกับมือใหม่อย่างผมครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-07-21 11:23:22 By : itsmenow
 


 

No. 7



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



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


ขอดันกระทู้นิดนึงครับ ขอโทษด้วยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-07-21 16:25:27 By : itsmenow
 


 

No. 8



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



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


ขอดันกระทู้นิดนึงครับ รอคำตอบยังแก้ปัญหาไม่ได้ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-07-24 08:15:34 By : itsmenow
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : สอบถามเรื่องการแสดงผลแนวนอนของ PHP Connect MySQL ครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 02
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 อัตราราคา คลิกที่นี่