Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Постраничная навигация
 
 автор: Roman (гостевая)   (28.07.2005 в 12:07)
 
 

Помогите! Как можно сделать в гостевой, чтоб на странице распологалось только 10 инф. и там чтоб имелось ссылки на сл.стр.Заранее спасибо!

   
 
 автор: cheops   (28.07.2005 в 12:08)   письмо автору
 
   для: Roman (гостевая)   (28.07.2005 в 12:07)
 

Так как вопрос о постраничной навигации возникает достаточно часто, Artem S. написал специальную статью, которая помещена в разделе "Статьи о PHP" http://www.softtime.ru/info/articlephp.php?id_article=33, кроме того, вы можете посмотреть тему по ссылке http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=3044, где приводится список тем с различными вариантами постраничной навигации.

   
 
 автор: antf   (28.07.2005 в 13:01)   письмо автору
 
   для: cheops   (28.07.2005 в 12:08)
 

Вот моя функция, которая создает постраничную навигацию типа Google.

Особенности:
1) Всегда отображаются 10 ссылок на страницы.
2) Ссылки на следующий, предыдущий, самый первый и самый последний элемент.

Функция создает саму навигацию. Вам нужно сделать:
1) Рассчитать все необходимые для функции параметры.
2) Выбрать нужные элементы из базы/текстового файла.

<?//создает постраничную навигацию
  //количество ссылок на страницы - 10
  //кол-во эл-тов слева от текущ. стр-цы - 4
  //кол-во эл-тов справа от текущ. стр-цы - 5
  //$pages_count - количество страниц
  //$url - полный url без переменной part (номер страницы)
  //$part - номер текущей страницы

  
function create_navigation($pages_count$url$part)
  {

    if(
$pages_count == 1)
      return;

    
$to_left $part 4;
    if(
$to_left 1)
    {
      
$end 10;
      
$begin 1;
    }
    if(
$to_left >= 1)
    {
      
$begin $to_left;
      
$end $begin 9;
      if(
$end $pages_count)
      {
        
$raznitsa $end $pages_count;
        
$begin $begin $raznitsa 1;
        if(
$begin 1$begin 1;
        
$end $pages_count;
      }
    }

    
$navig .=  "<table class='' cellspacing='0' cellpadding='0' border='0'>";
    
$navig .=  "<tr>";
    
//ссылка на первую страницу
    
$navig .=   "<td class=''><a href='{$url}&part=1' title='первая страница'>&lt;&lt;</a></td>";
    
//ссылка на предыдущую страницу
    
if($part != 1)
      
$navig .=  "<td class=''><a href='{$url}&part=".($part 1)."' title='предыдущая страница'>&lt;</a></td>";
    else
      
$navig .=   "<td class=''>&lt;</td>";
    
//страницы
    
for($i $begin$i <= $end$i++)
         {
       if(
$i <= $pages_count)
       {
          if(
$i == $part)
            
$navig .= "<td class=''> $i </td>";
          else
            
$navig .= "<td class=''><a href='{$url}&part={$i}'> $i </a></td>";
        }
        else break;

         }
    
//ссылка на предыдущую страницу
    
if($part != $pages_count)
      
$navig .=  "<td class=''><a href='{$url}&part=".($part 1)."' title='следующая страница'>&gt;</a></td>";
    else
      
$navig .=  "<td class=''>&gt;</td>";
    
$navig .=  "<td class=''><a href='{$url}&part=".$pages_count."' title='последняя страница'>&gt;&gt;</a></td>";
    
$navig .= "</tr>";
    
$navig .= "</table>";
    return(
$navig);
  } 
?>

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования