แสดงสินค้าในตารางโดยแบ่งข้อมูลเป็นคอลัมน์
บทความ PHP For E-commerce ตอนนี้ ผมจะสอนท่านเขียนคำสั่ง PHP ร่วมกับ ฐานข้อมูล MySQL เพื่อดึงข้อมูลสินค้าจากในร้านค้าออนไลน์ของเราออกมาแสดงผลในตาราง โดยที่เราสามารถกำหนดการแสดงผลข้อมูลได้อีกด้วย ว่าเราต้องการจะให้ข้อมูลแสดงผลในตารางกี่คอลัมน์หรือกี่แถวก็ได้ครับ ดูตัวอย่าง code โปรแกรมได้เลยครับ
จะเห็นได้ว่า เราสามารถกำหนดจำนวนคอลัมน์สินค้าในเว็บขายของของเรา ต่อ1แถวได้จากตัวแปร $setColumn ทำให้สามารถแสดงผลข้อมูลต่อ 1 แถว ได้ตั้งแต่ 1 คอลัมน์ขึ้นไปครับ
จากโค๊ดข้างบน จะได้ผลลัพธ์ตามนี้ครับ
พบบทความสอนทำระบบร้านค้าออนไลน์ด้วย PHP + MySQL ได้ใหม่ให้โอกาสหน้าครับ
<?php
$conn=mysql_connect('localhost','root','irender');//เชื่อมต่อกับฐานข้อมูล
mysql_select_db('db_thpartsweb');//เลื่อกฐานข้อมูล
mysql_query("SET NAMES 'utf8'");
$setColumn=3;//แสดง3คอลัมน์ต่อ1แถว ถ้าต้องการให้แสดงกี่คอลัมน์ให้กำหนดตรงนี้
$ColumnStart=1;//คอลัมน์เริ่มต้นเป็น 1 เสมอ
$rsShowProduct=mysql_query('SELECT * FROM tb_test ORDER BY id DESC LIMIT 10');//ดึงข้อมูลล่าสุด10แถวจากเทเบิล
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<table width="100%" border="1" cellspacing="0" cellpadding="0">
<tr>
<?php while($showProduct=mysql_fetch_array($rsShowProduct)){//วันลูปแสดงผลสินค้าทีละแถว?>
<td>
<?php echo '<img border="1" src="product_images/thumb/'.$showProduct['image'].'" alt="'.$showProduct['name'].'" />'?>
<?php echo '<br />'.$showProduct['name']?>
</td>
<?php
if($ColumnStart==$setColumn){//หากคอลัมน์เท่ากับจำนวนคอลัมน์ที่กำหนดไว้
echo '</tr><tr>';//สร้างแท็ก </tr> ปิด เพื่อจบแถว และสร้าง <tr>เพื่อสร้างแถวใหม่
$ColumnStart=0;//เซตเป็น 0 เพื่อเริ่มนับคอลัมน์ใหม่
}
$ColumnStart++;//เพิ่มคอลัมน์ทีละ1คอลัมน์
} ?>
</tr>
</table>
</body>
</html>
จะเห็นได้ว่า เราสามารถกำหนดจำนวนคอลัมน์สินค้าในเว็บขายของของเรา ต่อ1แถวได้จากตัวแปร $setColumn ทำให้สามารถแสดงผลข้อมูลต่อ 1 แถว ได้ตั้งแต่ 1 คอลัมน์ขึ้นไปครับ
จากโค๊ดข้างบน จะได้ผลลัพธ์ตามนี้ครับ
พบบทความสอนทำระบบร้านค้าออนไลน์ด้วย PHP + MySQL ได้ใหม่ให้โอกาสหน้าครับ


ถ้าเป็นแบบนี้จะ แบ่ง page ยังไง เพราะเคยทำแต่ที่เป็น row อ่ะค่ะ
ตอบลบแบ่งตามปกติครับ เหมือนแบ่งเป็น row นั่นแหละครับ
ลบเราต้องรู้ก่อนว่า จะให้แสดงข้อมูลจำนวนเท่าไหร่ในหนึ่งหน้า เช่น ต้องการแสดง 10 และแบ่งเป็น 2 คอลัมน์
ก็จะได้
1 2
3 4
5 6
7 8
9 10
ข้อมูลที่เหลือจะถูกแบ่งหน้าไปหน้าต่อไป เช่น ถ้าคลิกไปหน้า 2 จะได้
11 12
13 14
15 16
17 18
19 20