ไม่สามารถแบ่งหน้าได้ตามคำสั่ง
สวัสดีครับ ขอความช่วยเหลือหน่อยครับ
ผมได้เขียนphp ขึ้นมาไฟล์นึง เพื่อทำการแบ่งหน้าของตาราง
แต่ว่าตอนนี้มันไม่สามารถแบ่งหน้าตารางตามที่เรากำหนดไว้
ผมกำหนดหน้าตารางไว้ 25 แต่ว่ามันแสดงผลเกินมาโดยที่ไม่ตัด
ไปหน้าอื่น แบบนี้ควรจะแก้ไข code ตรงนี้ยังไงดีครับ
รบกวนผู้ที่มีความรู้ชี้ทางสว่างให้ด้วยครับ
นี่เป็น code ที่ผมเขียนขึ้นมาครับ
<?
header ('Content-type: text/html; charset=utf-8');
include ("config2.php");
include ("config.php");
include ("category.php");
include("function.php");
$conn=mysql_connect($dbserver,$dbuser,$dbpass) or die ("เชื่อมต่อฐานข้อมูลไม่ได้ครับสาดดดด...");
mysql_select_db($dbname,$conn);
mysql_query("SET NAMES UTF8");
$strSQL = "SELECT id FROM smeweb_track";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
$Num_Rows = mysql_num_rows($objQuery);
themehead($sitetitle);
?>
<?
echo "<H3><CENTER><B><FONT COLOR=\"#663300\"></FONT>แจ้งหมายเลขพัสดุ</B></CENTER></H3>";
?>
<TABLE>
<TR bgcolor=#00FFFF>
<TD width=150px align = center class="font">หมายเลขพัสดุ</TD>
<TD width=120px align = center class="font">ชื่อลูกค้า</TD>
<TD width=180px align = center class="font">วัน/เวลา ที่แจ้งเลขพัสดุ</TD>
<TD width=150px align = center class="font">สถานะ</TD>
</TR>
<?php
$show = mysql_query("SELECT * FROM $tablename order by id desc",$conn);
$nums_rows = mysql_num_rows($show);
// function page
$Per_Page = 5; // Per Page
$Page = $_GET["Page"];
if(!$_GET["Page"])
{
$Page=1;
}
$Prev_Page = $Page-1;
$Next_Page = $Page+1;
$Page_Start = (($Per_Page*$Page)-$Per_Page);
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;
}
$strSQL .=" order by id ASC LIMIT $Page_Start , $Per_Page";
$objQuery = mysql_query($strSQL);
while ($showdetail=mysql_fetch_array($show))
{
while($objResult = mysql_fetch_array($objQuery))
$id=$objResult['id'];
if(($id % 1) == 0)
{
$bgc = ($bgc=="#FFF4FA") ? "#FFDFEF" : "#FFF4FA";
}
?>
<tr bgcolor=<?= $bgc;?>>
<td width=80px align ='center' class="font">
<?=$showdetail['trackid']?>
</td>
<td width=140px align ='center' class="font">
<?=$showdetail['customername']?>
</td>
<td width=140px align ='center' class="font">
<?=$showdetail['datepost']?>
</td>
<td width=140px align ='center' class="font">
<?=$showdetail['status']?>
</td>
<tr>
<?php
}
?>
</TABLE>
Total <?= $Num_Rows;?> : <?=$Num_Pages;?> Page :
<?
if($Prev_Page)
{
echo " <a href='$_SERVER[SCRIPT_NAME]?Page=$Prev_Page'><< Back</a> ";
}
for($i=1; $i<=$Num_Pages; $i++){
if($i != $Page)
{
echo "[ <a href='$_SERVER[SCRIPT_NAME]?Page=$i'>$i</a> ]";
}
else
{
echo "<b> $i </b>";
}
}
if($Page!=$Num_Pages)
{
echo " <a href ='$_SERVER[SCRIPT_NAME]?Page=$Next_Page'>Next>></a> ";
}
mysql_close($conn);
?>
<?
themefoot();
?>
ผมได้เขียนphp ขึ้นมาไฟล์นึง เพื่อทำการแบ่งหน้าของตาราง
แต่ว่าตอนนี้มันไม่สามารถแบ่งหน้าตารางตามที่เรากำหนดไว้
ผมกำหนดหน้าตารางไว้ 25 แต่ว่ามันแสดงผลเกินมาโดยที่ไม่ตัด
ไปหน้าอื่น แบบนี้ควรจะแก้ไข code ตรงนี้ยังไงดีครับ
รบกวนผู้ที่มีความรู้ชี้ทางสว่างให้ด้วยครับ
นี่เป็น code ที่ผมเขียนขึ้นมาครับ
<?
header ('Content-type: text/html; charset=utf-8');
include ("config2.php");
include ("config.php");
include ("category.php");
include("function.php");
$conn=mysql_connect($dbserver,$dbuser,$dbpass) or die ("เชื่อมต่อฐานข้อมูลไม่ได้ครับสาดดดด...");
mysql_select_db($dbname,$conn);
mysql_query("SET NAMES UTF8");
$strSQL = "SELECT id FROM smeweb_track";
$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
$Num_Rows = mysql_num_rows($objQuery);
themehead($sitetitle);
?>
<?
echo "<H3><CENTER><B><FONT COLOR=\"#663300\"></FONT>แจ้งหมายเลขพัสดุ</B></CENTER></H3>";
?>
<TABLE>
<TR bgcolor=#00FFFF>
<TD width=150px align = center class="font">หมายเลขพัสดุ</TD>
<TD width=120px align = center class="font">ชื่อลูกค้า</TD>
<TD width=180px align = center class="font">วัน/เวลา ที่แจ้งเลขพัสดุ</TD>
<TD width=150px align = center class="font">สถานะ</TD>
</TR>
<?php
$show = mysql_query("SELECT * FROM $tablename order by id desc",$conn);
$nums_rows = mysql_num_rows($show);
// function page
$Per_Page = 5; // Per Page
$Page = $_GET["Page"];
if(!$_GET["Page"])
{
$Page=1;
}
$Prev_Page = $Page-1;
$Next_Page = $Page+1;
$Page_Start = (($Per_Page*$Page)-$Per_Page);
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;
}
$strSQL .=" order by id ASC LIMIT $Page_Start , $Per_Page";
$objQuery = mysql_query($strSQL);
while ($showdetail=mysql_fetch_array($show))
{
while($objResult = mysql_fetch_array($objQuery))
$id=$objResult['id'];
if(($id % 1) == 0)
{
$bgc = ($bgc=="#FFF4FA") ? "#FFDFEF" : "#FFF4FA";
}
?>
<tr bgcolor=<?= $bgc;?>>
<td width=80px align ='center' class="font">
<?=$showdetail['trackid']?>
</td>
<td width=140px align ='center' class="font">
<?=$showdetail['customername']?>
</td>
<td width=140px align ='center' class="font">
<?=$showdetail['datepost']?>
</td>
<td width=140px align ='center' class="font">
<?=$showdetail['status']?>
</td>
<tr>
<?php
}
?>
</TABLE>
Total <?= $Num_Rows;?> : <?=$Num_Pages;?> Page :
<?
if($Prev_Page)
{
echo " <a href='$_SERVER[SCRIPT_NAME]?Page=$Prev_Page'><< Back</a> ";
}
for($i=1; $i<=$Num_Pages; $i++){
if($i != $Page)
{
echo "[ <a href='$_SERVER[SCRIPT_NAME]?Page=$i'>$i</a> ]";
}
else
{
echo "<b> $i </b>";
}
}
if($Page!=$Num_Pages)
{
echo " <a href ='$_SERVER[SCRIPT_NAME]?Page=$Next_Page'>Next>></a> ";
}
mysql_close($conn);
?>
<?
themefoot();
?>
ลองไปตรวจ query ดูก่อน
echo $strSQL;