Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Примеры постраничной навигации

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: ...
vlados
Отправлено: 31 Мая, 2011 - 18:59:05
Post Id



Посетитель


Покинул форум
Сообщений всего: 391
Дата рег-ции: Май 2011  


Помог: 1 раз(а)

[+][+][+]


Нужен пример навигации примерно в таком виде:
CODE (htmlphp):
скопировать код в буфер обмена
  1. 1...54 55 56 57 58 59...100

Пример с сайта пхп.су не надо(он какой-то "левый").
 
 Top
maragon
Отправлено: 31 Мая, 2011 - 19:35:04
Post Id



Посетитель


Покинул форум
Сообщений всего: 340
Дата рег-ции: Февр. 2011  


Помог: 2 раз(а)




PHP:
скопировать код в буфер обмена
  1. $tableName="`table`";        
  2.         $targetpage = "index.php";// imea straniti    
  3.         $limit = 5;
  4.        
  5.         $query = "SELECT COUNT(*) as num FROM $tableName .......'";
  6.         $total_pages = mysql_fetch_array(mysql_query($query));
  7.         $total_pages = $total_pages["num"];
  8.        
  9.         $stages = 3;
  10.         @$page = mysql_escape_string($_GET['page']);
  11.         if($page){
  12.                 $start = ($page - 1) * $limit;
  13.         }else{
  14.                 $start = 0;    
  15.                 }      
  16.        
  17.     // Get page data
  18.         $query1 = "SELECT .............. LIMIT $start, $limit";
  19.         $result = mysql_query($query1);
  20.         $num = mysql_numrows($result);
  21.                          
  22.         // Initial page num setup
  23.         if ($page == 0){$page = 1;}
  24.         $prev = $page - 1;      
  25.         $next = $page + 1;                                                      
  26.         $lastpage = ceil($total_pages/$limit);          
  27.         $LastPagem1 = $lastpage - 1;                                    
  28.        
  29.        
  30.         $paginate = '';
  31.         if($lastpage > 1)
  32.         {      
  33.        
  34.  
  35.        
  36.        
  37.                 $paginate .= "<div class='paginate'>";
  38.                 // Previous
  39.                 if ($page > 1){
  40.                         $paginate.= "<a href='$targetpage?page=$prev'  style='text-decoration:none;'>предыдущая<-</a>";
  41.                 }else{
  42.                         $paginate.= "<span class='disabled'  style='text-decoration:none;'>предыдущая<-</span>";   }
  43.                        
  44.  
  45.                
  46.                 // Pages        
  47.                 if ($lastpage < 7 + ($stages * 2))      // Not enough pages to breaking it up
  48.                 {      
  49.                         for ($counter = 1; $counter <= $lastpage; $counter++)
  50.                         {
  51.                                 if ($counter == $page){
  52.                                         $paginate.= "<span class='current'>$counter</span>";
  53.                                 }else{
  54.                                         $paginate.= "<a href='$targetpage?page=$counter'style='text-decoration:none;'><b>$counter</b></a>";}                                        
  55.                         }
  56.                 }
  57.                 elseif($lastpage > 5 + ($stages * 2))   // Enough pages to hide a few?
  58.                 {
  59.                         // Beginning only hide later pages
  60.                         if($page < 1 + ($stages * 2))          
  61.                         {
  62.                                 for ($counter = 1; $counter < 4 + ($stages * 2); $counter++)
  63.                                 {
  64.                                         if ($counter == $page){
  65.                                                 $paginate.= "<span class='current'>$counter</span>";
  66.                                         }else{
  67.                                                 $paginate.= "<a href='$targetpage?page=$counter'>$counter</a>";}                                        
  68.                                 }
  69.                                 $paginate.= "...";
  70.                                 $paginate.= "<a href='$targetpage?page=$LastPagem1'>$LastPagem1</a>";
  71.                                 $paginate.= "<a href='$targetpage?page=$lastpage'>$lastpage</a>";              
  72.                         }
  73.                         // Middle hide some front and some back
  74.                         elseif($lastpage - ($stages * 2) > $page && $page > ($stages * 2))
  75.                         {
  76.                                 $paginate.= "<a href='$targetpage?page=1'>1</a>";
  77.                                 $paginate.= "<a href='$targetpage?page=2'>2</a>";
  78.                                 $paginate.= "...";
  79.                                 for ($counter = $page - $stages; $counter <= $page + $stages; $counter++)
  80.                                 {
  81.                                         if ($counter == $page){
  82.                                                 $paginate.= "<span class='current'>$counter</span>";
  83.                                         }else{
  84.                                                 $paginate.= "<a href='$targetpage?page=$counter'>$counter</a>";}                                        
  85.                                 }
  86.                                 $paginate.= "...";
  87.                                 $paginate.= "<a href='$targetpage?page=$LastPagem1'>$LastPagem1</a>";
  88.                                 $paginate.= "<a href='$targetpage?page=$lastpage'>$lastpage</a>";              
  89.                         }
  90.                         // End only hide early pages
  91.                         else
  92.                         {
  93.                                 $paginate.= "<a href='$targetpage?page=1' style='text-decoration:none;'>1</a>";
  94.                                 $paginate.= "<a href='$targetpage?page=2' style='text-decoration:none;'>2</a>";
  95.                                 $paginate.= "...";
  96.                                 for ($counter = $lastpage - (2 + ($stages * 2)); $counter <= $lastpage; $counter++)
  97.                                 {
  98.                                         if ($counter == $page){
  99.                                                 $paginate.= "<span class='current'>$counter</span>";
  100.                                         }else{
  101.                                                 $paginate.= "<a href='$targetpage?page=$counter' style='text-decoration:none;'>$counter</a>";}                                        
  102.                                 }
  103.                         }
  104.                 }                        
  105.                                 // Next
  106.                 if ($page < $counter - 1){
  107.                         $paginate.= "<a href='$targetpage?page=$next' style='text-decoration:none;'>->следующая</a>";
  108.                 }else{
  109.                         $paginate.= "<span class='disabled' style='text-decoration:none;'>->следующая</span>";
  110.                         }
  111.                        
  112.                 $paginate.= "</div>";          
  113.        
  114.        
  115. }
  116.  
  117.  
  118. ?>
  119. <?PHP
  120. while($row= mysql_fetch_array($result))
  121. {
  122. echo $row['znachenie'];
  123. }
  124. echo $paginate;
  125. ?>

(Отредактировано автором: 31 Мая, 2011 - 19:38:37)



-----
https://vk[dot]com/tvoycase_ru - Твой чехол со своим дизайном
 
 Top
movEAX
Отправлено: 31 Мая, 2011 - 21:04:05
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 750
Дата рег-ции: Авг. 2009  


Помог: 16 раз(а)






-----
армия.. самое убогое место
 
 Top
vlados
Отправлено: 01 Июня, 2011 - 08:16:02
Post Id



Посетитель


Покинул форум
Сообщений всего: 391
Дата рег-ции: Май 2011  


Помог: 1 раз(а)

[+][+][+]


maragon можно источник?
movEAX блин, а где там скачать-то можно сам "pagination"?

(Отредактировано автором: 01 Июня, 2011 - 08:21:26)

 
 Top
vlados
Отправлено: 01 Июня, 2011 - 10:42:37
Post Id



Посетитель


Покинул форум
Сообщений всего: 391
Дата рег-ции: Май 2011  


Помог: 1 раз(а)

[+][+][+]


Однако
 
 Top
dropoff
Отправлено: 01 Июня, 2011 - 10:57:10
Post Id



Посетитель


Покинул форум
Сообщений всего: 310
Дата рег-ции: Дек. 2010  


Помог: 0 раз(а)




Действительно. На той странице нет архива.
 
 Top
vlados
Отправлено: 01 Июня, 2011 - 11:02:38
Post Id



Посетитель


Покинул форум
Сообщений всего: 391
Дата рег-ции: Май 2011  


Помог: 1 раз(а)

[+][+][+]


Помогите люди! Ниндзя

(Отредактировано автором: 01 Июня, 2011 - 12:10:50)

 
 Top
vlados
Отправлено: 01 Июня, 2011 - 14:00:08
Post Id



Посетитель


Покинул форум
Сообщений всего: 391
Дата рег-ции: Май 2011  


Помог: 1 раз(а)

[+][+][+]


Помогите люди!
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB