<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>i-keng.com &#187; php paging</title>
	<atom:link href="http://www.i-keng.com/tag/php-paging/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.i-keng.com</link>
	<description>free php scripts ajax web resource</description>
	<lastBuildDate>Sun, 29 Aug 2010 08:59:20 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>การแบ่งหน้าด้วย PHP (PHP Paging)</title>
		<link>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/</link>
		<comments>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/#comments</comments>
		<pubDate>Fri, 25 Sep 2009 17:22:24 +0000</pubDate>
		<dc:creator>i-keng</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[php paging]]></category>
		<category><![CDATA[การแบ่งหน้าด้วย php]]></category>

		<guid isPermaLink="false">http://www.i-keng.com/?p=68</guid>
		<description><![CDATA[วิธีการแบ่งหน้าด้วย PHP ให้ออกมาในรูปแบบดังนี้ [First page] &#60;&#60; Previous &#124; Page: &#8230; 2 3 4 5 6 &#8230; &#124; Next &#62;&#62; [Last page] วิธีใช้งาน &#60;? echo displayPaging( $total, $limit, $pagenumber, $baseurl ); /* $total = จำนวนข้อมูลทั้งหมด $limit = จำนวนข้อมูลต่อ 1 หน้า $pagenumber = เลขหน้าปัจจุบัน $baseurl = Parameter ต่าง ๆ แต่ Parameter สุดท้ายต้องเป็น page= ตัวอย่าง displayPaging( 100, 20, [...]]]></description>
			<content:encoded><![CDATA[<p>วิธีการแบ่งหน้าด้วย PHP ให้ออกมาในรูปแบบดังนี้</p>
<p>[First page] &lt;&lt; Previous | Page: &#8230; 2 3 4 5 6 &#8230; | Next &gt;&gt; [Last page]</p>
<p>วิธีใช้งาน</p>
<pre class="brush: php">
&lt;?
echo displayPaging( $total, $limit, $pagenumber, $baseurl );
/*
$total = จำนวนข้อมูลทั้งหมด
$limit = จำนวนข้อมูลต่อ 1 หน้า
$pagenumber = เลขหน้าปัจจุบัน
$baseurl = Parameter ต่าง ๆ แต่ Parameter สุดท้ายต้องเป็น page=
ตัวอย่าง displayPaging( 100, 20, 4, &quot;?keyword=เก่ง&amp;page=&quot;);
*/
?&gt;
</pre>
<p>ตัว Function อยู่ด้านในนะจ๊ะ&#8230;</p>
<p>ตัว Function</p>
<pre class="brush: php">
&lt;?
function displayPaging( $total, $limit, $pagenumber, $baseurl ){
// how many page numbers to show in list at a time
$showpages = &quot;10&quot;; // 1,3,5,7,9...

// set up icons to be used
$icon_path = &#039;icons/&#039;;
$icon_param = &#039;align=&quot;middle&quot; style=&quot;border:0px;&quot; &#039;;
$icon_first= &#039;[First page]&#039;;
$icon_last= &#039;[Lastpage]&#039;;
$icon_previous= &#039;&lt;&lt; Previous&#039;;
$icon_next= &#039;Next &gt;&gt;&#039;;
///////////////////
///////////////////

// do calculations
$pages = ceil($total / $limit);
$offset = ($pagenumber * $limit) - $limit;
$end = $offset + $limit;

// prepare paging links
$html .= &#039;&lt;div id=&quot;pageLinks&quot;&gt;&#039;;
// if first link is needed
if($pagenumber &gt; 1) { $previous = $pagenumber -1;
$html .= &#039;&lt;a href=&quot;&#039;.$baseurl.&#039;1&quot;&gt;&#039;.$icon_first.&#039;&lt;/a&gt; &#039;;
}
// if previous link is needed
if($pagenumber &gt; 2) { $previous = $pagenumber -1;
$html .= &#039;&lt;a href=&quot;&#039;.$baseurl.&#039;&#039;.$previous.&#039;&quot;&gt;&#039;.$icon_previous.&#039;&lt;/a&gt; &#039;;
}
// print page numbers
if ($pages&gt;=2) { $p=1;
$html .= &quot;| Page: &quot;;
$pages_before = $pagenumber - 1;
$pages_after = $pages - $pagenumber;
$show_before = floor($showpages / 2);
$show_after = floor($showpages / 2);
if ($pages_before &lt; $show_before){
$dif = $show_before - $pages_before;
$show_after = $show_after + $dif;
}
if ($pages_after &lt; $show_after){
$dif = $show_after - $pages_after;
$show_before = $show_before + $dif;
}
$minpage = $pagenumber - ($show_before+1);
$maxpage = $pagenumber + ($show_after+1);

if ($pagenumber &gt; ($show_before+1) &amp;&amp; $showpages &gt; 0) {
$html .= &quot; ... &quot;;
}
while ($p &lt;= $pages) {
if ($p &gt; $minpage &amp;&amp; $p &lt; $maxpage) {
if ($pagenumber == $p) {
$html .= &quot; &lt;b&gt;&quot;.$p.&quot;&lt;/b&gt;&quot;;
} else {
$html .= &#039; &lt;a href=&quot;&#039;.$baseurl.$p.&#039;&quot;&gt;&#039;.$p.&#039;&lt;/a&gt;&#039;;
}
}
$p++;
}
if ($maxpage-1 &lt; $pages &amp;&amp; $showpages &gt; 0) {
$html .= &quot; ... &quot;;
}
}
// if next link is needed
if($end &lt; $total) { $next = $pagenumber +1;
if ($next != ($p-1)) {
$html .= &#039; | &lt;a href=&quot;&#039;.$baseurl.$next.&#039;&quot;&gt;&#039;.$icon_next.&#039;&lt;/a&gt;&#039;;
} else {$html .= &#039; | &#039;;}
}
// if last link is needed
if($end &lt; $total) { $last = $p -1;
$html .= &#039; &lt;a href=&quot;&#039;.$baseurl.$last.&#039;&quot;&gt;&#039;.$icon_last.&#039;&lt;/a&gt;&#039;;
}
$html .= &#039;&lt;/div&gt;&#039;;
// return paging links
return $html;
}
?&gt;
</pre>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=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/" target="_blank"><img src="http://www.i-keng.com/wp-content/plugins/add-to-facebook-plugin/facebook_share_icon.gif" alt="Share on Facebook" title="Share on Facebook" /></a><a href="http://www.facebook.com/share.php?u=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/" target="_blank" title="Share on Facebook">Share on Facebook</a></p><div style='display:none' id="post-refEl-68"></div>]]></content:encoded>
			<wfw:commentRss>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/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
