|
|
|
รบกวนผู้รู้ที่สามารถช่วยได้ ช่วยหน่อย กับ แบ่งแสดงผลเป็นหน้า ( โปรเจ็คจบ ) |
|
|
|
|
|
|
|
จากกระทู้ PHP Oracle List Record Paging/Pagination https://www.thaicreate.com/php/php-oracle-list-record-paging.html
ผมลอง แบ่งแสดงผลเป็นหน้า ลองจับมาใส่แล้วมันไม่ได้ ลองมา 2 วันเต็ม รบกวนพี่เทพๆหน่อยครับ
Code (PHP)
<?
require_once("config.php");
$rs_showpd=$conn->Execute("SELECT tb_product.pd_name,tb_product.pd_detail,tb_category.cg_name,tb_product.pd_id,tb_product.pd_amount,tb_product.pd_unit,tb_product.pd_costs,
tb_product.pd_price,tb_product.pd_img,tb_product.pd_status,tb_product.pd_date FROM tb_product Left Join tb_category ON tb_product.cg_id = tb_category.cg_id ORDER BY tb_product.pd_date DESC");
if(isset($_POST["pd_id"])){
for($i=0;$i<=count($_POST["pd_id"]);$i++){
$conn->Execute("DELETE FROM tb_product WHERE pd_id=".$_POST["pd_id"][$i]."");
header("Location:".$_SERVER["PHP_SELF"]);
}
}
?>
<?
session_start();
?>
<!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=windows-874" />
<link rel="stylesheet" type="text/css" href="jquery/css/ui-lightness/jquery-ui-1.7.2.custom.css">
<link rel="stylesheet" type="text/css" href="style.css"/>
<title>แสดงรายการสินค้า</title>
<script type="text/javascript" src="jquery/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="jquery/jquery-ui-1.7.1.custom.min.js"></script>
<script type="text/javascript">
function Delconf(){
var conF=confirm("ยืนยันการลบสินค้า");
if(conF==true){
document.FshowPD.submit();
}
}
</script>
</head>
<body>
<div id="container">
<div id="header">
<div id="headerText">
</div></div>
<div id="content">
<? require_once("leftmenu.php");?>
</div>
<div id="m_center"><strong>แสดงรายการสินค้า</strong><br />
<div id="dialogMsg" title="ข้อความจากระบบ">
<div id="showMsg"></div>
</div>
<form id="FshowPD" name="FshowPD" method="post" action="<?=$_SERVER["PHP_SELP"]?>">
<table width="100%" border="1" cellpadding="3" cellspacing="0">
<tr bgcolor="#0066FF">
<td><strong>ชื่อสินค้า</strong></td>
<td><strong>หมวดหมู่</strong></td>
<td><strong>จำนวน</strong></td>
<td><strong>ต้นทุน</strong></td>
<td><strong>ราคาขาย</strong></td>
<td><strong>สถานะ</strong></td>
<td><strong>วันที่บันทึก</strong></td>
<td><strong>แก้ไข</strong></td>
<td><strong>ลบ</strong></td>
</tr>
<?
$_COUNT=0;
while(!$rs_showpd->EOF){
if($_COUNT%2==0) $_BgColor="#CCCCCC"; else $_BgColor="#FF9900"; $_COUNT++;
?>
<tr bgcolor="<?=$_BgColor?>" onmouseover="this.bgColor='#FF0000'" onmouseout="this.bgColor='<?=$_BgColor?>'">
<td><?=$rs_showpd->fields["pd_name"];?></td>
<td><?=$rs_showpd->fields["cg_name"];?></td>
<td><?=$rs_showpd->fields["pd_amount"];?></td>
<td><?=$rs_showpd->fields["pd_costs"];?></td>
<td><?=$rs_showpd->fields["pd_price"];?></td>
<td><?=pd_stauts($rs_showpd->fields["pd_status"]);?></td>
<td><?=$rs_showpd->fields["pd_date"];?></td>
<td><a href="editpd.php?edit_id=<?=$rs_showpd->fields["pd_id"]?>"> <img src="images/icon/write.gif" width="16" height="16" border="0" /> </a></td>
<td><input type="checkbox" name="pd_id[]" id="pd_id[]" value="<?=$rs_showpd->fields["pd_id"]?>"/></td>
</tr>
<? $rs_showpd->MoveNext();} ?>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> <a href="#" onclick=" Delconf()"> <img src="images/icon/del.gif" width="16" height="16" border="0" /> </a></td>
</tr>
</table>
</form>
</div>
</div>
<div class="clear"></div>
</div>
</body>
</html>
Tag : PHP, CakePHP
|
|
|
|
|
|
Date :
2012-06-15 11:22:57 |
By :
exsomaxz |
View :
1221 |
Reply :
7 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ติดปัญหาหรือว่า Error ตรงไหนครับ
|
|
|
|
|
Date :
2012-06-15 11:53:37 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
มันไม่ยอมแบ่งหน้าหรอค่ะ หรือว่ายังไง ??
|
|
|
|
|
Date :
2012-06-15 11:58:31 |
By :
modzaa07 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ตอบความคิดเห็นที่ : 1 เขียนโดย : mr.win เมื่อวันที่ 2012-06-15 11:53:37
รายละเอียดของการตอบ ::
ขึ้นว่า Parse error: syntax error, unexpected $end in
ลองตรวจสอบโคีดข้างล่างหน่อย ว่าลืมเขียนตกหล่นอะไรหรือป่าว
Code (PHP)
<?
require_once("config.php");
$rs_showpd=$conn->Execute("SELECT tb_product.pd_name,tb_product.pd_detail,tb_category.cg_name,tb_product.pd_id,tb_product.pd_amount,tb_product.pd_unit,tb_product.pd_costs,
tb_product.pd_price,tb_product.pd_img,tb_product.pd_status,tb_product.pd_date FROM tb_product Left Join tb_category ON tb_product.cg_id = tb_category.cg_id ORDER BY tb_product.pd_date DESC");
if(isset($_POST["pd_id"])){
for($i=0;$i<=count($_POST["pd_id"]);$i++){
$conn->Execute("DELETE FROM tb_product WHERE pd_id=".$_POST["pd_id"][$i]."");
header("Location:".$_SERVER["PHP_SELF"]);
}
}
$Num_Rows = $conn->Execute($);
$Per_Page = 2; // 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;
}
$Page_End = $Per_Page * $Page;
IF ($Page_End > $Num_Rows)
{
$Page_End = $Num_Rows;
}
?>
<?
session_start();
?>
<!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=windows-874" />
<link rel="stylesheet" type="text/css" href="jquery/css/ui-lightness/jquery-ui-1.7.2.custom.css">
<link rel="stylesheet" type="text/css" href="style.css"/>
<title>แสดงรายการสินค้า</title>
<script type="text/javascript" src="jquery/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="jquery/jquery-ui-1.7.1.custom.min.js"></script>
<script type="text/javascript">
function Delconf(){
var conF=confirm("ยืนยันการลบสินค้า");
if(conF==true){
document.FshowPD.submit();
}
}
</script>
</head>
<body>
<div id="container">
<div id="header">
<div id="headerText">
<div id="headerText2">System Administrator </div>
</div></div>
<div id="content">
<? require_once("leftmenu.php");?>
</div>
<div id="m_center"><strong>แสดงรายการสินค้า</strong><br />
<div id="dialogMsg" title="ข้อความจากระบบ">
<div id="showMsg"></div>
</div>
<form id="FshowPD" name="FshowPD" method="post" action="<?=$_SERVER["PHP_SELP"]?>">
<table width="100%" border="1" cellpadding="3" cellspacing="0">
<tr bgcolor="#0066FF">
<td><strong>ชื่อสินค้า</strong></td>
<td><strong>หมวดหมู่</strong></td>
<td><strong>จำนวน</strong></td>
<td><strong>ต้นทุน</strong></td>
<td><strong>ราคาขาย</strong></td>
<td><strong>สถานะ</strong></td>
<td><strong>วันที่บันทึก</strong></td>
<td><strong>แก้ไข</strong></td>
<td><strong>ลบ</strong></td>
</tr>
<?
for($i=$Page_Start;$i<$Page_End;$i++)
{
?>
<tr bgcolor="<?=$_BgColor?>" onmouseover="this.bgColor='#FF0000'" onmouseout="this.bgColor='<?=$_BgColor?>'">
<td><?=$rs_showpd->fields["pd_name"];?></td>
<td><?=$rs_showpd->fields["cg_name"];?></td>
<td><?=$rs_showpd->fields["pd_amount"];?></td>
<td><?=$rs_showpd->fields["pd_costs"];?></td>
<td><?=$rs_showpd->fields["pd_price"];?></td>
<td><?=pd_stauts($rs_showpd->fields["pd_status"]);?></td>
<td><?=$rs_showpd->fields["pd_date"];?></td>
<td><a href="editpd.php?edit_id=<?=$rs_showpd->fields["pd_id"]?>"> <img src="images/icon/write.gif" width="16" height="16" border="0" /> </a></td>
<td><input type="checkbox" name="pd_id[]" id="pd_id[]" value="<?=$rs_showpd->fields["pd_id"]?>"/></td>
</tr>
</table>
Total <?= $Num_Rows;?> Record : <?=$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> ";
}
oci_close($);
?>
</form>
</div>
</div>
<div class="clear"></div>
</div>
</body>
</html>
|
|
|
|
|
Date :
2012-06-15 12:12:20 |
By :
exsomaxz |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
น่าจะลืมปิด } อะไรซะอย่างครับ ลองดูดี ๆ ครับ ตัวอย่างก็มีให้ดูครับ
|
|
|
|
|
Date :
2012-06-15 12:35:12 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ตอบความคิดเห็นที่ : 4 เขียนโดย : mr.win เมื่อวันที่ 2012-06-15 12:35:12
รายละเอียดของการตอบ ::
มันขึ้นว่า
Fatal error: Call to undefined method ADORecordSet_mysql::PageCount() in C:\AppServ\www\\.php on line 28
ช่วยดูโค๊ดด้านล่างหน่อยอ่ะครับ ผิดตรงไหน
Code (PHP)
<?
require_once("config.php");
$rs_showpd=$conn->Execute("SELECT tb_product.pd_name,tb_product.pd_detail,tb_category.cg_name,tb_product.pd_id,tb_product.pd_amount,tb_product.pd_unit,tb_product.pd_costs,
tb_product.pd_price,tb_product.pd_img,tb_product.pd_status,tb_product.pd_date FROM tb_product Left Join tb_category ON tb_product.cg_id = tb_category.cg_id ORDER BY tb_product.pd_date DESC");
if(isset($_POST["pd_id"])){
for($i=0;$i<=count($_POST["pd_id"]);$i++){
$conn->Execute("DELETE FROM tb_product WHERE pd_id=".$_POST["pd_id"][$i]."");
header("Location:".$_SERVER["PHP_SELF"]);
}
}
if($rs_showpd->EOF)
{
echo "Not found Record.";
}
else
{
$PageLen = 2;
$PageNo = $_GET["Page"];
if(!$PageNo)
{
$PageNo = 1;
}
$TotalRecord = $rs_showpd->RecordCount();
$rs_showpd->PageSize = $PageLen;
$TotalPage = $rs_showpd->PageCount();
$rs_showpd->AbsolutePage = $PageNo;
?>
|
|
|
|
|
Date :
2012-06-15 12:57:25 |
By :
exsomaxz |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ดู function ของท่านนะครับ PageCount();
|
|
|
|
|
Date :
2012-06-15 13:08:33 |
By :
popnakub |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แล้วโค๊ดนี้มันใช้กับ PHP + Access แล้วท่าผมจะนำมาประยุกมาเป็น PHP + SQL ละครับ
Code (PHP)
$strConn = new COM("ADODB.Connection") or die("Cannot start ADO");
$strConn->Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" . realpath("mydatabase.mdb"));
$strSQL = "SELECT * FROM customer ";
$objRec = new COM("ADODB.Recordset");
$objRec->Open($strSQL, $strConn, 1,3);
ตัวอย่างด้านล่าง http:// https://www.thaicreate.com/php/php-com-ado-list-record-paging.html
Code (PHP)
<html>
<head>
<title>ThaiCreate.Com PHP & COM (ADO)</title>
</head>
<body>
<?php
$strConn = new COM("ADODB.Connection") or die("Cannot start ADO");
$strConn->Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" . realpath("mydatabase.mdb"));
$strSQL = "SELECT * FROM customer ";
$objRec = new COM("ADODB.Recordset");
$objRec->Open($strSQL, $strConn, 1,3);
if($objRec->EOF)
{
echo "Not found Record.";
}
else
{
$PageLen = 2;
$PageNo = $_GET["Page"];
if(!$PageNo)
{
$PageNo = 1;
}
$TotalRecord = $objRec->RecordCount();
$objRec->PageSize = $PageLen;
$TotalPage = $objRec->PageCount();
$objRec->AbsolutePage = $PageNo;
?>
<table width="600" border="1">
<tr>
<th width="91"> <div align="center">CustomerID </div></th>
<th width="98"> <div align="center">Name </div></th>
<th width="198"> <div align="center">Email </div></th>
<th width="97"> <div align="center">CountryCode </div></th>
<th width="59"> <div align="center">Budget </div></th>
<th width="71"> <div align="center">Used </div></th>
</tr>
<?
While (!($objRec->EOF) and $No < $PageLen)
{
?>
<tr>
<td><div align="center"><?=$objRec->Fields["CustomerID"]->Value;?></div></td>
<td><?=$objRec->Fields["Name"]->Value;?></td>
<td><?=$objRec->Fields["Email"]->Value;?></td>
<td><div align="center"><?=$objRec->Fields["CountryCode"]->Value;?></div></td>
<td align="right"><?=$objRec->Fields["Budget"]->Value;?></td>
<td align="right"><?=$objRec->Fields["Used"]->Value;?></td>
</tr>
<?
$No = $No + 1;
$objRec->MoveNext();
}
?>
</table>
<?
}
$objRec->Close();
$strConn->Close();
$strConn = null;
?>
Total : <?=$TotalRecord?> Page <?=$PageNo?> All Page <?=$TotalPage?>
<? if($PageNo > 1){ ?>
<a href="<?=$_SERVER[SCRIPT_NAME];?>?Page=1"><< First</a>
<a href="<?=$_SERVER[SCRIPT_NAME];?>?Page=<?=$PageNo-1?>">< Back</a>
<? }?>
<? if($PageNo < $TotalPage) { ?>
<a href="<?=$_SERVER[SCRIPT_NAME];?>?Page=<?=$PageNo+1?>">Next ></a>
<a href="<?=$_SERVER[SCRIPT_NAME];?>?Page=<?=$TotalPage?>">Last >></a>
<?}?>
<br>
Go to
<? for($intID=1;$intID<=$TotalPage;$intID++){?>
<? if($intID == $PageNo){?>
<b><?=$intID?></b>
<?}else{?>
<a href="<?=$_SERVER[SCRIPT_NAME];?>?Page=<?=$intID?>"><?=$intID?></a>
<?}?>
<?}?>
</body>
</html>
|
ประวัติการแก้ไข 2012-06-15 14:18:25
|
|
|
|
Date :
2012-06-15 13:28:01 |
By :
exsomaxz |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 05
|