มีปัญหากับสคริปแบ่งหน้าครับผม กด next แล้วไม่ได้ มือใหม่จริง ๆ
<b>Page :
<?
$page = ceil($total/$limit);
for($i=1;$i<=$page;$i++){
if($_GET['page']==$i){
echo "[<a href='?start=".$limit*($i-1)."&page=$i' class='link'>$i</A>]";
}else{
echo "[<a href='?start=".$limit*($i-1)."&page=$i' class='link'>$i</A>]";
}
}
?>
ข้างบนคือการแสดงผลแบบเก่าครับ จะขึ้นเป็น 1 2 3 4 5 ตลอดดูแล้วไม่สวยงาม
ส่วนข้างล่างเป็นการแสดงผลแบบใหม่ แต่ผมติดตรงคลิ๊ก next แล้วไม่ได้ครับผม ผมไม่รู้ว่า $baseurl ต้องใส่ยังไง
โค๊ดได้ล่างผมก๊อบมาจาก http://www.i-keng.com/2009/09/26/%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B9%81%E0%B8%9A%E0%B9%88%E0%B8%87%E0%B8%AB%E0%B8%99%E0%B9%89%E0%B8%B2%E0%B8%94%E0%B9%89%E0%B8%A7%E0%B8%A2-php-php-paging/
รบกวนท่านผู้รู้ด้วยครับ
<?
function displayPaging( $total, $limit, $pagenumber, $baseurl ){
// how many page numbers to show in list at a time
$showpages = "10"; // 1,3,5,7,9...
// set up icons to be used
$icon_path = 'icons/';
$icon_param = 'align="middle" style="border:0px;" ';
$icon_first= '[First page]';
$icon_last= '[Lastpage]';
$icon_previous= '<< Previous';
$icon_next= 'Next >>';
///////////////////
///////////////////
// do calculations
$pages = ceil($total / $limit);
$offset = ($pagenumber * $limit) - $limit;
$end = $offset + $limit;
// prepare paging links
$html .= '<div id="pageLinks">';
// if first link is needed
if($pagenumber > 1) { $previous = $pagenumber -1;
$html .= '<a href="'.$baseurl.'">'.$icon_first.'</a> ';
}
// if previous link is needed
if($pagenumber > 2) { $previous = $pagenumber -1;
$html .= '<a href="'.$baseurl.''.$previous.'">'.$icon_previous.'</a> ';
}
// print page numbers
if ($pages>=2) { $p=1;
$html .= "| Page: ";
$pages_before = $pagenumber - 1;
$pages_after = $pages - $pagenumber;
$show_before = floor($showpages / 2);
$show_after = floor($showpages / 2);
if ($pages_before < $show_before){
$dif = $show_before - $pages_before;
$show_after = $show_after + $dif;
}
if ($pages_after < $show_after){
$dif = $show_after - $pages_after;
$show_before = $show_before + $dif;
}
$minpage = $pagenumber - ($show_before+1);
$maxpage = $pagenumber + ($show_after+1);
if ($pagenumber > ($show_before+1) && $showpages > 0) {
$html .= " ... ";
}
while ($p <= $pages) {
if ($p > $minpage && $p < $maxpage) {
if ($pagenumber == $p) {
$html .= " <b>".$p."</b>";
} else {
$html .= ' <a href="'.$baseurl.$p.'">'.$p.'</a>';
}
}
$p++;
}
if ($maxpage-1 < $pages && $showpages > 0) {
$html .= " ... ";
}
}
// if next link is needed
if($end < $total) { $next = $pagenumber +1;
if ($next != ($p-1)) {
$html .= ' | <a href="'.$baseurl.$next.'">'.$icon_next.'</a>';
} else {$html .= ' | ';}
}
// if last link is needed
if($end < $total) { $last = $p -1;
$html .= ' <a href="'.$baseurl.$last.'">'.$icon_last.'</a>';
}
$html .= '</div>';
// return paging links
return $html;
}
?>
<?
echo displayPaging( $total, $limit, $pagenumber, $baseurl );
/*
$total = จำนวนข้อมูลทั้งหมด
$limit = จำนวนข้อมูลต่อ 1 หน้า
$pagenumber = เลขหน้าปัจจุบัน
$baseurl = 'start=".$limit*($i-1)."&page=$i'*/
?>Tag : PHP
Date :
2011-09-04 16:09:19
By :
gaylydigg
View :
698
Reply :
1
รบกวนท่านผู้รู้ด้วยครับผม
Date :
2011-09-04 18:44:22
By :
gaylydigg
Load balance : Server 05