<?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"
	>

<channel>
	<title>katsarov &#187; php</title>
	<atom:link href="http://katsarov.seloto.net/post/category/php/feed" rel="self" type="application/rss+xml" />
	<link>http://katsarov.seloto.net</link>
	<description>Мисли. Вярвай. Мечтай. Рискувай.</description>
	<pubDate>Wed, 25 Jun 2008 00:38:32 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
	<language>en</language>
			<item>
		<title>PHP: Simple pagination script (digg.com style)</title>
		<link>http://katsarov.seloto.net/post/pagination-script-with-digg-com-style/</link>
		<comments>http://katsarov.seloto.net/post/pagination-script-with-digg-com-style/#comments</comments>
		<pubDate>Mon, 12 Nov 2007 23:33:32 +0000</pubDate>
		<dc:creator>katsarov</dc:creator>
		
		<category><![CDATA[php]]></category>

		<category><![CDATA[Скриптове]]></category>

		<category><![CDATA[програмиране]]></category>

		<guid isPermaLink="false">http://katsarov.seloto.net/?p=208</guid>
		<description><![CDATA[&#8230; или как се печелят $50 за 5мин  
CSS стилът (кой каквито цветове му харесват&#8230; клиента искаше сини полета с червен hover и бял текст):

[-]View Code CSS.pages &#123;
    padding: 1em;
    margin-top: 10px;
    margin-bottom: 10px;
    margin-left: 70px;
    clear: left;
  [...]]]></description>
			<content:encoded><![CDATA[<p>&#8230; или как се печелят $50 за 5мин <img src='http://katsarov.seloto.net/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' title="icon_wink photo" /> </p>
<p>CSS стилът (кой каквито цветове му харесват&#8230; клиента искаше сини полета с червен hover и бял текст):</p>

<div class="wp_codebox_msgheader"><span class="codebox_right"><a href="javascript:;" onclick="toggle_collapse('20811');">[<span id="20811_symbol">-</span>]</a></span><span class="codebox_left"><span id="l208code11"><a href="javascript:;" onclick="javascript:showCodeTxt('208code11'); return false;">View Code</a> CSS</span></span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="20811"><td class="code" id="208code11"><pre class="css"><span style="color: #6666ff;">.pages</span> <span style="color: #66cc66;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">padding</span><span style="color: #66cc66;">:</span> <span style="color: #933;">1em</span><span style="color: #66cc66;">;</span>
    <span style="color: #000000; font-weight: bold;">margin-top</span><span style="color: #66cc66;">:</span> <span style="color: #933;">10px</span><span style="color: #66cc66;">;</span>
    <span style="color: #000000; font-weight: bold;">margin-bottom</span><span style="color: #66cc66;">:</span> <span style="color: #933;">10px</span><span style="color: #66cc66;">;</span>
    <span style="color: #000000; font-weight: bold;">margin-left</span><span style="color: #66cc66;">:</span> <span style="color: #933;">70px</span><span style="color: #66cc66;">;</span>
    <span style="color: #000000; font-weight: bold;">clear</span><span style="color: #66cc66;">:</span> <span style="color: #000000; font-weight: bold;">left</span><span style="color: #66cc66;">;</span>
    <span style="color: #000000; font-weight: bold;">font-size</span><span style="color: #66cc66;">:</span> <span style="color: #933;"><span style="color: #933;">85</span>%</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span> 
&nbsp;
<span style="color: #6666ff;">.pages</span> a, <span style="color: #6666ff;">.pages</span> span <span style="color: #66cc66;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">display</span><span style="color: #66cc66;">:</span> <span style="color: #993333;">block</span><span style="color: #66cc66;">;</span>
    <span style="color: #000000; font-weight: bold;">float</span><span style="color: #66cc66;">:</span> <span style="color: #000000; font-weight: bold;">left</span><span style="color: #66cc66;">;</span>
    <span style="color: #000000; font-weight: bold;">padding</span><span style="color: #66cc66;">:</span> <span style="color: #933;">0</span><span style="color: #6666ff;"><span style="color: #933;">.2em</span></span> <span style="color: #933;">0</span><span style="color: #6666ff;"><span style="color: #933;">.5em</span></span><span style="color: #66cc66;">;</span>
    <span style="color: #000000; font-weight: bold;">margin-right</span><span style="color: #66cc66;">:</span> <span style="color: #933;">0</span><span style="color: #6666ff;"><span style="color: #933;">.1em</span></span><span style="color: #66cc66;">;</span>
    <span style="color: #000000; font-weight: bold;">border</span><span style="color: #66cc66;">:</span> <span style="color: #933;">1px</span> <span style="color: #993333;">solid</span> <span style="color: #cc00cc;">#fff</span><span style="color: #66cc66;">;</span>
    <span style="color: #000000; font-weight: bold;">background</span><span style="color: #66cc66;">:</span> <span style="color: #cc00cc;">#fff</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span> 
&nbsp;
<span style="color: #6666ff;">.pages</span> span<span style="color: #6666ff;">.current</span> <span style="color: #66cc66;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">border</span><span style="color: #66cc66;">:</span> <span style="color: #933;">1px</span> <span style="color: #993333;">solid</span> <span style="color: #cc00cc;">#2E6AB1</span><span style="color: #66cc66;">;</span>
    <span style="color: #000000; font-weight: bold;">font-weight</span><span style="color: #66cc66;">:</span> <span style="color: #993333;">bold</span><span style="color: #66cc66;">;</span>
    <span style="color: #000000; font-weight: bold;">background</span><span style="color: #66cc66;">:</span> <span style="color: #cc00cc;">#2E6AB1</span><span style="color: #66cc66;">;</span>
    <span style="color: #000000; font-weight: bold;">color</span><span style="color: #66cc66;">:</span> <span style="color: #cc00cc;">#fff</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span> 
&nbsp;
<span style="color: #6666ff;">.pages</span> a <span style="color: #66cc66;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">border</span><span style="color: #66cc66;">:</span> <span style="color: #933;">1px</span> <span style="color: #993333;">solid</span> <span style="color: #cc00cc;">#9AAFE5</span><span style="color: #66cc66;">;</span>
    <span style="color: #000000; font-weight: bold;">color</span><span style="color: #66cc66;">:</span> <span style="color: #cc00cc;">#2E6AB1</span><span style="color: #66cc66;">;</span>
    <span style="color: #000000; font-weight: bold;">text-decoration</span><span style="color: #66cc66;">:</span> <span style="color: #993333;">none</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span>
<span style="color: #6666ff;">.pages</span> a<span style="color: #3333ff;">:visited</span> <span style="color: #66cc66;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">color</span><span style="color: #66cc66;">:</span> <span style="color: #cc00cc;">#2E6AB1</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span> 
&nbsp;
<span style="color: #6666ff;">.pages</span> a<span style="color: #3333ff;">:hover</span> <span style="color: #66cc66;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">border-color</span><span style="color: #66cc66;">:</span> <span style="color: #cc00cc;">#2E6AB1</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span> 
&nbsp;
<span style="color: #6666ff;">.pages</span> a<span style="color: #6666ff;">.nextprev</span> <span style="color: #66cc66;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">font-weight</span><span style="color: #66cc66;">:</span> <span style="color: #993333;">bold</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span> 
&nbsp;
<span style="color: #6666ff;">.pages</span> span<span style="color: #6666ff;">.nextprev</span> <span style="color: #66cc66;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">color</span><span style="color: #66cc66;">:</span> <span style="color: #cc00cc;">#<span style="color: #933;">666666</span></span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span> 
&nbsp;
<span style="color: #6666ff;">.pages</span> span<span style="color: #6666ff;">.nextprev</span> <span style="color: #66cc66;">&#123;</span>
        <span style="color: #000000; font-weight: bold;">border</span><span style="color: #66cc66;">:</span> <span style="color: #933;">1px</span> <span style="color: #993333;">solid</span> <span style="color: #cc00cc;">#dddddd</span><span style="color: #66cc66;">;</span>
        <span style="color: #000000; font-weight: bold;">color</span><span style="color: #66cc66;">:</span> <span style="color: #cc00cc;">#<span style="color: #933;">999999</span></span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span></pre></td></tr></table></div>

<p>Правим връзка с базата данни&#8230;</p>
<p>Взимаме $offset от $_GET[], за да разберем къде иска да отиде потребителят;<br />
Задаваме $limit за максимум резултати на страница;<br />
И взимаме общият брой записи в базата данни&#8230; забележете, че ползваме COUNT(id), а не mysql_num_rows()</p>

<div class="wp_codebox_msgheader"><span class="codebox_right"><a href="javascript:;" onclick="toggle_collapse('20812');">[<span id="20812_symbol">-</span>]</a></span><span class="codebox_left"><span id="l208code12"><a href="javascript:;" onclick="javascript:showCodeTxt('208code12'); return false;">View Code</a> PHP</span></span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="20812"><td class="code" id="208code12"><pre class="php"><span style="color: #ff0000">$offset</span> <span style="color: #66cc66;">=</span> <span style="color: #ff0000">$_GET</span><span style="color: #66cc66;">&#91;</span><span style="color: #ff0000;">'offset'</span><span style="color: #66cc66;">&#93;</span><span style="color: #66cc66;">;</span>
<span style="color: #808080; font-style: italic;">/// Limit of the data displayed per page</span>
<span style="color: #ff0000">$limit</span> <span style="color: #66cc66;">=</span> <span style="color: #cc66cc;">15</span><span style="color: #66cc66;">;</span>
<span style="color: #808080; font-style: italic;">// getting number of rows</span>
<span style="color: #ff0000">$total</span> <span style="color: #66cc66;">=</span> <span style="color: #000066;">mysql_fetch_array</span><span style="color: #66cc66;">&#40;</span><span style="color: #000066;">mysql_query</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'SELECT COUNT(id)
FROM countries AS total'</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
&nbsp;
?<span style="color: #66cc66;">&amp;</span>gt<span style="color: #66cc66;">;</span></pre></td></tr></table></div>

<p>Ако $offset не е зададен правим $start равно на нула, в противен случай равно на $offset&#8230;</p>

<div class="wp_codebox_msgheader"><span class="codebox_right"><a href="javascript:;" onclick="toggle_collapse('20813');">[<span id="20813_symbol">-</span>]</a></span><span class="codebox_left"><span id="l208code13"><a href="javascript:;" onclick="javascript:showCodeTxt('208code13'); return false;">View Code</a> PHP</span></span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="20813"><td class="code" id="208code13"><pre class="php"><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">!</span><span style="color: #ff0000">$offset</span> ? <span style="color: #ff0000">$start</span> <span style="color: #66cc66;">=</span> <span style="color: #cc66cc;">0</span> <span style="color: #66cc66;">:</span> <span style="color: #ff0000">$start</span> <span style="color: #66cc66;">=</span> <span style="color: #ff0000">$offset</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
?<span style="color: #66cc66;">&amp;</span>gt<span style="color: #66cc66;">;</span></pre></td></tr></table></div>

<p>Заявката към базата данни:<br />
взимаме всички полета от таблицата &#8216;countries&#8217;, подреждаме ги по &#8216;id&#8217;&#8230;<br />
&#8230; и може би най-важната част при pagination скриптовете: LIMIT $start, $limit&#8221;)<br />
$start ни е мястото от което започваме (или колко резултата ще прескочим), $limit е максимума резултати на страница</p>

<div class="wp_codebox_msgheader"><span class="codebox_right"><a href="javascript:;" onclick="toggle_collapse('20814');">[<span id="20814_symbol">-</span>]</a></span><span class="codebox_left"><span id="l208code14"><a href="javascript:;" onclick="javascript:showCodeTxt('208code14'); return false;">View Code</a> PHP</span></span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="20814"><td class="code" id="208code14"><pre class="php"><span style="color: #ff0000">$query</span> <span style="color: #66cc66;">=</span> <span style="color: #000066;">mysql_query</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;SELECT * FROM countries
ORDER BY id LIMIT $start, $limit &quot;</span><span style="color: #66cc66;">&#41;</span>
or <span style="color: #000066;">die</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'Query failed: '</span> <span style="color: #66cc66;">.</span> <span style="color: #000066;">mysql_error</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
?<span style="color: #66cc66;">&amp;</span>gt<span style="color: #66cc66;">;</span></pre></td></tr></table></div>

<p>Извеждането на резултатите&#8230;</p>

<div class="wp_codebox_msgheader"><span class="codebox_right"><a href="javascript:;" onclick="toggle_collapse('20815');">[<span id="20815_symbol">-</span>]</a></span><span class="codebox_left"><span id="l208code15"><a href="javascript:;" onclick="javascript:showCodeTxt('208code15'); return false;">View Code</a> PHP</span></span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="20815"><td class="code" id="208code15"><pre class="php"><span style="color: #b1b100;">while</span> <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000">$row</span> <span style="color: #66cc66;">=</span> <span style="color: #000066;">mysql_fetch_array</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000">$query</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
    <span style="color: #000066;">echo</span> <span style="color: #ff0000">$row</span><span style="color: #66cc66;">&#91;</span><span style="color: #ff0000;">'country_name'</span><span style="color: #66cc66;">&#93;</span><span style="color: #66cc66;">;</span>
    <span style="color: #000066;">echo</span> <span style="color: #ff0000;">''</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span>
?<span style="color: #66cc66;">&amp;</span>gt<span style="color: #66cc66;">;</span></pre></td></tr></table></div>

<p>Ако броя резултати е по-голям от $limit показваме страниците, $paginas е всички резултати разделени на $limit като го закръгламе чрез ceil()</p>

<div class="wp_codebox_msgheader"><span class="codebox_right"><a href="javascript:;" onclick="toggle_collapse('20816');">[<span id="20816_symbol">-</span>]</a></span><span class="codebox_left"><span id="l208code16"><a href="javascript:;" onclick="javascript:showCodeTxt('208code16'); return false;">View Code</a> PHP</span></span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="20816"><td class="code" id="208code16"><pre class="php"><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000">$total</span><span style="color: #66cc66;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#93;</span> <span style="color: #66cc66;">&amp;</span>gt<span style="color: #66cc66;">;</span> <span style="color: #ff0000">$limit</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
  <span style="color: #ff0000">$paginas</span> <span style="color: #66cc66;">=</span> <span style="color: #000066;">ceil</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000">$total</span><span style="color: #66cc66;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#93;</span><span style="color: #66cc66;">/</span><span style="color: #ff0000">$limit</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
&nbsp;
?<span style="color: #66cc66;">&amp;</span>gt<span style="color: #66cc66;">;</span></pre></td></tr></table></div>

<p>За да няма връзка към предишни страници когато всъщност нямаме такива се налага една if() клауза.<br />
Ако $offset е по-малко или равно на нула - показваме само текст. В противен случай показваме връзка като изваждаме текущият $offset от $limit и дефакто получаваме предишната страница&#8230;</p>

<div class="wp_codebox_msgheader"><span class="codebox_right"><a href="javascript:;" onclick="toggle_collapse('20817');">[<span id="20817_symbol">-</span>]</a></span><span class="codebox_left"><span id="l208code17"><a href="javascript:;" onclick="javascript:showCodeTxt('208code17'); return false;">View Code</a> PHP</span></span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="20817"><td class="code" id="208code17"><pre class="php"><span style="color: #b1b100;">if</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000">$offset</span> <span style="color: #66cc66;">&amp;</span>lt<span style="color: #66cc66;">;=</span> <span style="color: #ff0000;">'0'</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
    ?<span style="color: #66cc66;">&amp;</span>gt<span style="color: #66cc66;">;</span>
    <span style="color: #66cc66;">&lt;</span>span <span style="color: #000000; font-weight: bold;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;nextprev&quot;</span><span style="color: #66cc66;">&gt;</span>« Previous<span style="color: #66cc66;">&lt;/</span>span<span style="color: #66cc66;">&gt;</span>
    <span style="color: #66cc66;">&#125;</span> <span style="color: #b1b100;">else</span> <span style="color: #66cc66;">&#123;</span>
<span style="color: #808080; font-style: italic;">//else if we have previous pages show link 'Previous'</span>
    <span style="color: #000066;">echo</span> <span style="color: #ff0000;">'&lt;a href=&quot;http://katsarov.seloto.net/wp-admin/?offset=%27%20.%20%28$offset%20-%20$limit%29%20.%20%27&quot;&gt;
« Previous&lt;/a&gt;'</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span> ?<span style="color: #66cc66;">&amp;</span>gt<span style="color: #66cc66;">;</span></pre></td></tr></table></div>

<p>Време е да изведем списъка със страници. В случая тук също имаме една допълнителна проверка на коя страница се намира потребителят. По този начин текущата страница става без линк и се оцветява в друг цвят&#8230;</p>

<div class="wp_codebox_msgheader"><span class="codebox_right"><a href="javascript:;" onclick="toggle_collapse('20818');">[<span id="20818_symbol">-</span>]</a></span><span class="codebox_left"><span id="l208code18"><a href="javascript:;" onclick="javascript:showCodeTxt('208code18'); return false;">View Code</a> PHP</span></span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="20818"><td class="code" id="208code18"><pre class="php"><span style="color: #b1b100;">for</span> <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000">$i</span> <span style="color: #66cc66;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">;</span> <span style="color: #ff0000">$i</span> <span style="color: #66cc66;">&amp;</span>lt<span style="color: #66cc66;">;</span> <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000">$paginas</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span> <span style="color: #ff0000">$i</span><span style="color: #66cc66;">++</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
  <span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000">$i</span><span style="color: #cc66cc;">+1</span> <span style="color: #66cc66;">==</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000">$offset</span><span style="color: #66cc66;">/</span><span style="color: #ff0000">$limit</span><span style="color: #66cc66;">&#41;</span><span style="color: #cc66cc;">+1</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
  <span style="color: #808080; font-style: italic;">//if its current page don't show link</span>
      ?<span style="color: #66cc66;">&amp;</span>gt<span style="color: #66cc66;">;</span>
&nbsp;
        <span style="color: #66cc66;">&#125;</span> <span style="color: #b1b100;">else</span> <span style="color: #66cc66;">&#123;</span>
  <span style="color: #808080; font-style: italic;">//else if its not current page show link</span>
  ?<span style="color: #66cc66;">&amp;</span>gt<span style="color: #66cc66;">;</span>
   <span style="color: #66cc66;">&lt;</span>a href<span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;http://katsarov.seloto.net/wp-admin/?offset=%3C?php%20echo%20$i%20*%20$limit;%20?%3E&quot;</span><span style="color: #66cc66;">&gt;&lt;/</span>a<span style="color: #66cc66;">&gt;</span>
  <span style="color: #66cc66;">&#125;</span> ?<span style="color: #66cc66;">&amp;</span>gt<span style="color: #66cc66;">;</span></pre></td></tr></table></div>

<p>Ето още една проверка. Този път дали имаме следваща страница. Ако нямаме се показва само текст без връзка, в противен случай правим връзка към следващата страница, която е $offset + $limit</p>

<div class="wp_codebox_msgheader"><span class="codebox_right"><a href="javascript:;" onclick="toggle_collapse('20819');">[<span id="20819_symbol">-</span>]</a></span><span class="codebox_left"><span id="l208code19"><a href="javascript:;" onclick="javascript:showCodeTxt('208code19'); return false;">View Code</a> PHP</span></span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="20819"><td class="code" id="208code19"><pre class="php"><span style="color: #b1b100;">if</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000">$offset</span> <span style="color: #66cc66;">&amp;</span>gt<span style="color: #66cc66;">;=</span> <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000">$total</span><span style="color: #66cc66;">&#91;</span><span style="color: #ff0000;">'0'</span><span style="color: #66cc66;">&#93;</span> <span style="color: #66cc66;">-</span> <span style="color: #ff0000">$limit</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
    ?<span style="color: #66cc66;">&amp;</span>gt<span style="color: #66cc66;">;</span>
    <span style="color: #66cc66;">&lt;</span>span <span style="color: #000000; font-weight: bold;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;nextprev&quot;</span><span style="color: #66cc66;">&gt;</span>Next »<span style="color: #66cc66;">&lt;/</span>span<span style="color: #66cc66;">&gt;</span>
    <span style="color: #66cc66;">&#125;</span> <span style="color: #b1b100;">else</span> <span style="color: #66cc66;">&#123;</span>
<span style="color: #808080; font-style: italic;">//else if we have next pages show 'Next' with link</span>
    <span style="color: #000066;">echo</span> <span style="color: #ff0000;">'&lt;a href=&quot;http://katsarov.seloto.net/wp-admin/?offset=%27%20.%20%28$offset%20+%20$limit%29%20.%20%27&quot;&gt;
Next »&lt;/a&gt;'</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span> ?<span style="color: #66cc66;">&amp;</span>gt<span style="color: #66cc66;">;</span></pre></td></tr></table></div>

<p><a href="http://work.seloto.net/pages/pagination.php">Ето тук има демо на скрипта</a></p>
<p>Ето го и целият код:</p>

<div class="wp_codebox_msgheader"><span class="codebox_right"><a href="javascript:;" onclick="toggle_collapse('20820');">[<span id="20820_symbol">-</span>]</a></span><span class="codebox_left"><span id="l208code20"><a href="javascript:;" onclick="javascript:showCodeTxt('208code20'); return false;">View Code</a> PHP</span></span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="20820"><td class="code" id="208code20"><pre class="php"><span style="color: #808080; font-style: italic;">// Database Connection Config</span>
<span style="color: #ff0000">$dbhost</span> <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">&quot;localhost&quot;</span><span style="color: #66cc66;">;</span> <span style="color: #808080; font-style: italic;">// database host</span>
<span style="color: #ff0000">$dbuser</span> <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">&quot;root&quot;</span><span style="color: #66cc66;">;</span> <span style="color: #808080; font-style: italic;">// database user</span>
<span style="color: #ff0000">$dbpass</span> <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">&quot;dbpass&quot;</span><span style="color: #66cc66;">;</span> <span style="color: #808080; font-style: italic;">// database pass</span>
<span style="color: #ff0000">$dbname</span> <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">&quot;dbname&quot;</span><span style="color: #66cc66;">;</span> <span style="color: #808080; font-style: italic;">// database name </span>
&nbsp;
<span style="color: #808080; font-style: italic;">// Database Connection</span>
<span style="color: #ff0000">$db_connect</span> <span style="color: #66cc66;">=</span> <span style="color: #000066;">mysql_connect</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000">$dbhost</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000">$dbuser</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000">$dbpass</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">!</span><span style="color: #ff0000">$db_connect</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
    <span style="color: #000066;">die</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'Could not connect: '</span> <span style="color: #66cc66;">.</span> <span style="color: #000066;">mysql_error</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span>
<span style="color: #b1b100;">else</span> <span style="color: #66cc66;">&#123;</span>
    <span style="color: #000066;">mysql_select_db</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000">$dbname</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span>
<span style="color: #ff0000">$offset</span> <span style="color: #66cc66;">=</span> <span style="color: #ff0000">$_GET</span><span style="color: #66cc66;">&#91;</span><span style="color: #ff0000;">'offset'</span><span style="color: #66cc66;">&#93;</span><span style="color: #66cc66;">;</span>
<span style="color: #808080; font-style: italic;">/// Limit of the data displayed per page</span>
<span style="color: #ff0000">$limit</span> <span style="color: #66cc66;">=</span> <span style="color: #cc66cc;">15</span><span style="color: #66cc66;">;</span>
<span style="color: #808080; font-style: italic;">// getting number of rows</span>
<span style="color: #ff0000">$total</span> <span style="color: #66cc66;">=</span> <span style="color: #000066;">mysql_fetch_array</span><span style="color: #66cc66;">&#40;</span><span style="color: #000066;">mysql_query</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'SELECT
COUNT(id) FROM countries AS total'</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span> 
&nbsp;
<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">!</span><span style="color: #ff0000">$offset</span> ? <span style="color: #ff0000">$start</span> <span style="color: #66cc66;">=</span> <span style="color: #cc66cc;">0</span> <span style="color: #66cc66;">:</span> <span style="color: #ff0000">$start</span> <span style="color: #66cc66;">=</span> <span style="color: #ff0000">$offset</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<span style="color: #808080; font-style: italic;">// database query</span>
<span style="color: #ff0000">$query</span> <span style="color: #66cc66;">=</span> <span style="color: #000066;">mysql_query</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;SELECT * FROM countries
ORDER BY id LIMIT $start, $limit &quot;</span><span style="color: #66cc66;">&#41;</span>
or <span style="color: #000066;">die</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'Query failed: '</span> <span style="color: #66cc66;">.</span> <span style="color: #000066;">mysql_error</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span>
<span style="color: #808080; font-style: italic;">//showng query in circle</span>
<span style="color: #b1b100;">while</span> <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000">$row</span> <span style="color: #66cc66;">=</span> <span style="color: #000066;">mysql_fetch_array</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000">$query</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
    <span style="color: #000066;">echo</span> <span style="color: #ff0000">$row</span><span style="color: #66cc66;">&#91;</span><span style="color: #ff0000;">'country_name'</span><span style="color: #66cc66;">&#93;</span><span style="color: #66cc66;">;</span>
    <span style="color: #000066;">echo</span> <span style="color: #ff0000;">''</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span>
<span style="color: #808080; font-style: italic;">//end showing query</span>
<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000">$total</span><span style="color: #66cc66;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#93;</span> <span style="color: #66cc66;">&amp;</span>gt<span style="color: #66cc66;">;</span> <span style="color: #ff0000">$limit</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
  <span style="color: #ff0000">$paginas</span> <span style="color: #66cc66;">=</span> <span style="color: #000066;">ceil</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000">$total</span><span style="color: #66cc66;">&#91;</span><span style="color: #cc66cc;">0</span><span style="color: #66cc66;">&#93;</span><span style="color: #66cc66;">/</span><span style="color: #ff0000">$limit</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span> 
&nbsp;
  <span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">!</span><span style="color: #ff0000">$offset</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
   <span style="color: #ff0000">$comeco</span> <span style="color: #66cc66;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">;</span>
  <span style="color: #66cc66;">&#125;</span> <span style="color: #b1b100;">else</span> <span style="color: #66cc66;">&#123;</span>
   <span style="color: #ff0000">$comeco</span> <span style="color: #66cc66;">=</span> <span style="color: #ff0000">$offset</span><span style="color: #66cc66;">;</span>
  <span style="color: #66cc66;">&#125;</span>
?<span style="color: #66cc66;">&amp;</span>gt<span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&lt;</span>p <span style="color: #000000; font-weight: bold;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;pages&quot;</span><span style="color: #66cc66;">&gt;</span><span style="color: #808080; font-style: italic;">//if we don't have previous pages show only style without link</span>
<span style="color: #b1b100;">if</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000">$offset</span> <span style="color: #66cc66;">&amp;</span>lt<span style="color: #66cc66;">;=</span> <span style="color: #ff0000;">'0'</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
    ?<span style="color: #66cc66;">&amp;</span>gt<span style="color: #66cc66;">;</span>
    <span style="color: #66cc66;">&lt;</span>span <span style="color: #000000; font-weight: bold;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;nextprev&quot;</span><span style="color: #66cc66;">&gt;</span>« Previous<span style="color: #66cc66;">&lt;/</span>span<span style="color: #66cc66;">&gt;</span>
    <span style="color: #66cc66;">&#125;</span> <span style="color: #b1b100;">else</span> <span style="color: #66cc66;">&#123;</span>
<span style="color: #808080; font-style: italic;">//else if we have previous pages show link 'Previous'</span>
    <span style="color: #000066;">echo</span> <span style="color: #ff0000;">'&lt;a href=&quot;http://katsarov.seloto.net/wp-admin/?offset=%27%20.%20%28$offset%20-%20$limit%29%20.%20%27&quot;&gt;
« Previous&lt;/a&gt;'</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span>
<span style="color: #808080; font-style: italic;">//circle that shows pages</span>
  <span style="color: #b1b100;">for</span> <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000">$i</span> <span style="color: #66cc66;">=</span> <span style="color: #cc66cc;">0</span><span style="color: #66cc66;">;</span> <span style="color: #ff0000">$i</span> <span style="color: #66cc66;">&amp;</span>lt<span style="color: #66cc66;">;</span> <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000">$paginas</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">;</span> <span style="color: #ff0000">$i</span><span style="color: #66cc66;">++</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
  <span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000">$i</span><span style="color: #cc66cc;">+1</span> <span style="color: #66cc66;">==</span> <span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000">$offset</span><span style="color: #66cc66;">/</span><span style="color: #ff0000">$limit</span><span style="color: #66cc66;">&#41;</span><span style="color: #cc66cc;">+1</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span>
  <span style="color: #808080; font-style: italic;">//if its current page don't show link</span>
      ?<span style="color: #66cc66;">&amp;</span>gt<span style="color: #66cc66;">;</span>
&nbsp;
        <span style="color: #66cc66;">&#125;</span> <span style="color: #b1b100;">else</span> <span style="color: #66cc66;">&#123;</span>
  <span style="color: #808080; font-style: italic;">//else if its not current page show link</span>
  ?<span style="color: #66cc66;">&amp;</span>gt<span style="color: #66cc66;">;</span>
   <span style="color: #66cc66;">&lt;</span>a href<span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;http://katsarov.seloto.net/wp-admin/?offset=%3C?php%20echo%20$i%20*%20$limit;%20?%3E&quot;</span><span style="color: #66cc66;">&gt;&lt;/</span>a<span style="color: #66cc66;">&gt;</span>
  <span style="color: #66cc66;">&#125;</span>
<span style="color: #66cc66;">&#125;</span>
<span style="color: #808080; font-style: italic;">//if we don't have next pages show only 'Next' without link</span>
<span style="color: #b1b100;">if</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000">$offset</span> <span style="color: #66cc66;">&amp;</span>gt<span style="color: #66cc66;">;=</span> <span style="color: #66cc66;">&#40;</span><span style="color: #ff0000">$total</span><span style="color: #66cc66;">&#91;</span><span style="color: #ff0000;">'0'</span><span style="color: #66cc66;">&#93;</span> <span style="color: #66cc66;">-</span> <span style="color: #ff0000">$limit</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
    ?<span style="color: #66cc66;">&amp;</span>gt<span style="color: #66cc66;">;</span>
    <span style="color: #66cc66;">&lt;</span>span <span style="color: #000000; font-weight: bold;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;nextprev&quot;</span><span style="color: #66cc66;">&gt;</span>Next »<span style="color: #66cc66;">&lt;/</span>span<span style="color: #66cc66;">&gt;</span>
    <span style="color: #66cc66;">&#125;</span> <span style="color: #b1b100;">else</span> <span style="color: #66cc66;">&#123;</span>
<span style="color: #808080; font-style: italic;">//else if we have next pages show 'Next' with link</span>
    <span style="color: #000066;">echo</span> <span style="color: #ff0000;">'&lt;a href=&quot;http://katsarov.seloto.net/wp-admin/?offset=%27%20.%20%28$offset%20+%20$limit%29%20.%20%27&quot;&gt;
Next »&lt;/a&gt;'</span><span style="color: #66cc66;">;</span>
<span style="color: #66cc66;">&#125;</span>
?<span style="color: #66cc66;">&amp;</span>gt<span style="color: #66cc66;">;</span>
&nbsp;
?<span style="color: #66cc66;">&amp;</span>gt<span style="color: #66cc66;">;</span></pre></td></tr></table></div>

<p><a href="http://work.seloto.net/pages/pagination.php">Ето отново демото на скрипта</a> в случай, че на някой не му се скролва <img src='http://katsarov.seloto.net/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' title="icon_wink photo" /></p>
]]></content:encoded>
			<wfw:commentRss>http://katsarov.seloto.net/post/pagination-script-with-digg-com-style/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
