guest

Fri 16 Sep 2005 14:39:03
Fri 16 Sep 2005 14:39:03
สวัสดีครับ มาอีกแล้ว รบกวนทั่น เว็บมาสเตอร์อีกแล้ว
วันนี้มาแบบ การแสดงผลแบบกริด ที่มี ไฮไลท์สีสลับระหว่างบรรทัด และก็มี ลูกน้ำขั้น ตัวเลข เวลาแสดงผล(ในส่วนตัวเลข ไม่รู้ว่า ในตัวอย่างเก็บ เป็น Cha หรือเปล่า ) มีตัวอย่างให้ดูครับ
การแสดงผลแบบนี้ เมื่อมีการ query ออกมาจาก database แล้ว ซึ่งก็เป็น array ชนิดหนึ่งครับ
การเขียนก็วน loop แสดงผลธรรมดา
<?
$i = 0;
while($row = @mysql_fetch_array($res, MYSQL_ASSOC)){
if($i%2 == 0){
echo "<tr bgcolor=\"red\"><td>".$row["data"]."</td></tr>";
}else{
echo "<tr bgcolor=\"yellow\"><td>".$row["data"]."</td></tr>";
}
$i++;
}
?>
จะเห็นว่าเป็นการวน loop เขียนตารางธรรมดาครับ แต่พระเอกของระบบนี้คือ $i ครับเพื่อนับว่าเป็นแถวลำดับที่เท่าไหร่ การที่ %2 เพื่อหาเศษว่าเป็นเลขคี่หรือเลขคู่ นี่คือกรณีที่มี 2 สีครับ แต่ถ้า 3 สีก็แน่นอนครับ %3 แต่จะต้องมีการเช็คเศษเพิ่มขึ้นเนื่องจากว่ามี เศษ 0,1,2 ก็ใส่ if...elseif...else เท่านั้นครับ
ส่วนที่ว่าลูกน้ำของตัวเลขอาจจะเก็บแบบ char ก็ได้ครับหรือว่าอาจจะเก็บเป็น int ก็ได้ครับ เวลาแสดงผลก็ number_format() ก็ได้ครับ จริงๆยังมี money_format() อีกครับซึ่งสามารถใช้ได้บน *nix เท่านั้นจึงไม่ขอแนะนำครับ
การเขียนก็วน loop แสดงผลธรรมดา
<?
$i = 0;
while($row = @mysql_fetch_array($res, MYSQL_ASSOC)){
if($i%2 == 0){
echo "<tr bgcolor=\"red\"><td>".$row["data"]."</td></tr>";
}else{
echo "<tr bgcolor=\"yellow\"><td>".$row["data"]."</td></tr>";
}
$i++;
}
?>
จะเห็นว่าเป็นการวน loop เขียนตารางธรรมดาครับ แต่พระเอกของระบบนี้คือ $i ครับเพื่อนับว่าเป็นแถวลำดับที่เท่าไหร่ การที่ %2 เพื่อหาเศษว่าเป็นเลขคี่หรือเลขคู่ นี่คือกรณีที่มี 2 สีครับ แต่ถ้า 3 สีก็แน่นอนครับ %3 แต่จะต้องมีการเช็คเศษเพิ่มขึ้นเนื่องจากว่ามี เศษ 0,1,2 ก็ใส่ if...elseif...else เท่านั้นครับ
ส่วนที่ว่าลูกน้ำของตัวเลขอาจจะเก็บแบบ char ก็ได้ครับหรือว่าอาจจะเก็บเป็น int ก็ได้ครับ เวลาแสดงผลก็ number_format() ก็ได้ครับ จริงๆยังมี money_format() อีกครับซึ่งสามารถใช้ได้บน *nix เท่านั้นจึงไม่ขอแนะนำครับ
guest

Sun 18 Sep 2005 16:53:10
Sun 18 Sep 2005 16:53:10
ขอบคุณครับ ลองเอาประยุกต์ใช้แล้ว ใช้ได้ดีมาก ...ขอบคุณครับ

















