อยากทราบวิธีการแสดงผลข้อมูลในตาราง1แถว 4 คอลัม แล้วขึ้นแถวใหม่จนข้อมูลหมดครับ
ลองประยุกต์ดูอันนี้สองคอลัม
<html>
<body bgcolor="#FFFFFF">
<?
$host="localhost";
$username="";
$pass_word="";
$db="mydatabase";
$tb="color";
mysql_connect( $host,$username,$pass_word) or die ("ติดต่อกับฐานข้อมูล Mysql ไม่ได้ ");
mysql_select_db($db) or die("เลือกฐานข้อมูลไม่ได้");
echo "<table><tr>";
$sql = "select * From color";
$Per_Page =4; /* ตั้งค่า แสดงผลต่อหน้า $Per_Page */
if(!$Page)
$Page=1;
$Prev_Page = $Page-1;
$Next_Page = $Page+1;
$result = mysql_query($sql);
$Page_start = ($Per_Page*$Page)-$Per_Page;
$Num_Rows = mysql_num_rows($result);
if($Num_Rows<=$Per_Page)
$Num_Pages =1;
else if(($Num_Rows % $Per_Page)==0)
$Num_Pages =($Num_Rows/$Per_Page) ;
else
$Num_Pages =($Num_Rows/$Per_Page) +1;
$Num_Pages = (int)$Num_Pages;
if(($Page>$Num_Pages) || ($Page<0))
print "<center><b>จำนวน $Page มากกว่า $Num_Pages เกิดการผิดพลาด<b></center>";
$sql = "select * From color order by color_no asc LIMIT $Page_start , $Per_Page";
//ส่วนแสดงผล
$result = mysql_query($sql);
While($row= mysql_fetch_array($result))
{
$color_no[] = $row["color_no"];
$color_name[] = $row["color_name"];
}
echo"<table><tr>";
for($i=0;$i<count($color_no);$i++) {
if($i%2==1)
{
// กรณี้มีตัวเดียว
echo "<td>";
?>
<table width="200" border="1" cellspacing="0" cellpadding="0" class="textmenu" height="35">
<tr>
<td width="26%" valign="middle">
<div align="center"><?echo $color_no[$i];?> </div>
</td>
</tr>
<tr>
<td width="26%" valign="middle">
<div align="center"> <a href="Sample2.php?color_no=<?=$color_no[$i];?>">
<?echo $color_name[$i];?>
</a></div>
</td>
</tr>
</table>
<?
echo"</td></tr>";
}
else
{
//กรณีมี 2 ตัว
echo "<td>";
?>
<table width="200" border="1" cellspacing="0" cellpadding="0" class="textmenu" height="35">
<tr>
<td width="26%" valign="middle">
<div align="center">
<?echo $color_no[$i];?>
</div>
</td>
</tr>
<tr>
<td width="26%" valign="middle">
<div align="center"> <a href="Sample2.php?color_no=<?=$color_no[$i];?>">
<?echo $color_name[$i];?>
</a></div>
</td>
</tr>
</table>
<? echo"</td>";
}
}
echo"</tr></table>";
mysql_close();
?>
<br>
พบทั้งหมด<b>
<?= $Num_Rows;?>
</b> รายการ รวมทั้งหมด : <b>
<?=$Num_Pages;?>
</b> หน้า :
<?/* สร้างปุ่มย้อนกลับ */
if($Prev_Page)
echo " <a href='$PHP_SELF?Page=$Prev_Page'><< ย้อนกลับ </a>";
for($i=1; $i<$Num_Pages; $i++){
if($i != $Page)
echo "[<a href='$PHP_SELF?Page=$i'>$i</a>]";
else
echo "<b> $i </b>";
}
/*สร้างปุ่มเดินหน้า */
if($Page!=$Num_Pages)
echo "<a href ='$PHP_SELF?Page=$Next_Page'> หน้าถัดไป>> </a>";
?>
</body>
</html>
Date :
28 ก.ย. 2549 11:19:23
By :
nn
ผมว่า แค่นี้ก็น่าจะพอนะคับ สำหรับการสร้าง หลายๆ rows 4 column
จาก code คุณนะคับ
while($arr = mysql_fetch_array($Query1)){
$barcode = $arr[barcode];
$id = $arr[id];
?>
<tr> <td ><p><img src="<? echo"../include/showpic_acc.php?id=$id"?>" name="<? echo $productname[$i];?>" width="216" height="219" border="0" id="<? echo $productname[$i];?>"><br>
<span class="style1">
BARCODE :<? echo sprintf($arr[barcode]);?><br>
สี/เบอร์ :<? echo sprintf($arr[number]);?> <br>
ชื่อสินค้า :<? echo sprintf($arr[productname]);?><br>
ประเภท :<? echo sprintf($arr[groupname]);?> </span></p></td></tr>
}
อยากให้มันมีหลาย rows ก็ใส่ให้มันสิคับ
HTML พื้นฐานเลยคับ
Date :
28 ก.ย. 2549 11:22:35
By :
nut_t02
คุณ nut_t02 เข้าใจผิดแล้วครับ
ตามวิธีที่คุณบอกผม มันจะสร้าง1แถว1colum ครับ
แต่ผมอยากได้แบบ1แถว 4 columครับ
Date :
28 ก.ย. 2549 11:43:29
By :
ฉลาดน้อย
ผมสอนคุณนิดนึงคับ tag <td></td> เป็น column
tag <tr></tr> เป็น row คับลองหัดประยุกต์เองดูมั่งคับ ไม่มีใครเขียนทั้งหมดให้คุณได้หรอกนะคับ
while($arr = mysql_fetch_array($Query1)){
$barcode = $arr[barcode];
$id = $arr[id];
?>
<tr>
<td ><img src="<? echo"../include/showpic_acc.php?id=$id"?>" width="216" height="219" border="0"> BARCODE :<? echo sprintf($arr[barcode]);?></td>
<td>สี/เบอร์ :<? echo sprintf($arr[number]);?></td>
<td>ชื่อสินค้า :<? echo sprintf($arr[productname]);?></td>
<td>ประเภท :<? echo sprintf($arr[groupname]);?></td>
</tr>
}
Date :
28 ก.ย. 2549 13:13:48
By :
nut_t02
คราวนี้ 4 column หลาย row แน่นอนคับ
Date :
28 ก.ย. 2549 13:17:29
By :
nut_t02
ขอบคุณนะครับสำหรับคำตอบที่ให้ผม
แต่
คุณ nut_t02 ยังเข้าใจผิดอยู่ดีคับ
ที่ผมอยากได้คือ ข้อมูลทั้งหมดให้อยู่ 1 คอลัม ไม่ใช่ แยกข้อมูลออกเป็น4 คอลัม แบบที่คุณทำ มันแยกข้อมูลของผม ที่รวมอยู่1คอลัม ให้แตกออกเป็น 4 ซึ่งมันไม่ใช่ที่ผมอยากได้อะคับ คุณลองดูโค๊ดของผมดีๆสิครับ
while($arr = mysql_fetch_array($Query1)){
$barcode = $arr[barcode];
$id = $arr[id];
?>
<td > <p><img src="<? echo"../include/showpic_acc.php?id=$id"?>" name="<? echo $productname[$i];?>" width="216" height="219" border="0" id="<? echo $productname[$i];?>"><br>
<span class="style1">
BARCODE :<? echo sprintf($arr[barcode]);?><br>
สี/เบอร์ :<? echo sprintf($arr[number]);?> <br>
ชื่อสินค้า :<? echo sprintf($arr[productname]);?><br>
ประเภท :<? echo sprintf($arr[groupname]);?> </span></p></td>
}
ตามโค๊ดนี้มันจะแสดงข้อมูลทั้งหมด อยู่ในคอลัมเดียว
แต่ถ้าทำตามที่คุณnut_t02 บอกผมมันจะแตกข้อมูลออกมาเป็นคอลัมหมด ซึ่งมันไม่ตรงกับความต้องการครับ
ปล..แต่ยังไงก็ขอคอบคุณที่ช่วยตอบให้ผมนะครับ
สำหรับโค๊ดที่คุณ nn ให้มา อันนั้นใช้ได้คับ แต่ผมแค่อยากหาวิธีที่มันง่ายกว่าที่ได้มาครับ ขอบคุณครับ
Date :
29 ก.ย. 2549 16:47:27
By :
ฉลาดน้อย
เหอ ๆ งงแฮะ เราก็เข้าใจเหมือนกับคุณ nut_t02 นะ ก็เห็นบอกว่าจะเอา 4 คอลัม นี่นา
ถ้าจะให้อยู่คอลัมเดียวกัน ก็ เปลี่ยน <BR> ตรง BARCODE :<? echo sprintf($arr[barcode]);?><br>
ให้เป็น , หรืออะไรก็ได้ หรือเอาออกไปซะ ก็น่าจะได้นะ
Date :
29 ก.ย. 2549 18:28:00
By :
tacomsci
เห็นโพสไว้นานแล้ว แต่ไงขอตอบละกันครับเผื่อมีใครอยากรู้ หรือสงสัย
หลักการง่ายๆ ครับในการขึ้นแถวใหม่
ถ้า
<TR></TR> คือแถว (บรรทัดแนวนอน)
<TD></TD>คือคอลัม (แถบแนวตั้ง)
ทำให้ได้ 4 คอลัม ก็ต้องมี 4 <TD></TD>
<TR>
<TD>แถวที่1</TD>
<TD>แถวที่2</TD>
<TD>แถวที่3</TD>
<TD>แถวที่4</TD>
<TR>
-----------------------------------------------------------------------------------------------------------------------------
คราวนี้ก็ยกตัวข้างบนมาใส่ ค่าให้ถูกต้อง ตามข้างล่างครับ
<TABLE><? php
$sql = "select * from ชื่อฐานข้อมูล order by จะเรียงลำดับข้อมูลตามอะไรก็ว่าไป";
$result = mysql_query($sql);
$numrow = mysql_num_rows($result);
for ($i=1;$i<=$numrow;$i++) { // เริ่มวนตั้งแต่บรรทัดนี้นะครับ
$row = mysql_fetch_array($result);?>
<TR>
<TD><? echo row["ใส่ชื่อข้อมูลแถวที่1"]; ?></TD>
<TD><? echo row["ใส่ชื่อข้อมูลแถวที่2"]; ?></TD>
<TD><? echo row["ใส่ชื่อข้อมูลแถวที่3"]; ?></TD>
<TD><? echo row["ใส่ชื่อข้อมูลแถวที่4"]; ?></TD>
<TR>
<?php } //จบการวนลูป ?></TABLE>
หวังว่าจะเข้าใจตรงกันนะครับ
Date :
2010-07-20 18:44:32
By :
Jedi ใจดี
มีแบบโค้ด VB.net มั้ยคะ
Date :
2011-01-30 13:05:09
By :
linzuming
Load balance : Server 00