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

Форум PHP

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

 

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

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

тема: Помогите разобраться с навигацией
 
 автор: technic611   (29.04.2006 в 05:27)   письмо автору
 
 

Вот воспользовался навигацией из статей. Возникла проблема
Выводится должны в соответсвии с $npage = 3; три страницы, а выводятся по четыре и в середине вообще по 7.
Помогите найти ошибку


$page = $_GET['page'];
if(empty($page)) $page = 1;
$pnumber =30;
$start = $page * $pnumber - $pnumber; 


. . . .




 // Запрашиваем информацию об количестве всех объявлений    
    $query = "SELECT COUNT(*) FROM car $zapros";
    $prt = mysql_query($query);
    if(!prt) error("Ошибка при выборке общего числа объявлений");
$total = mysql_result($prt,0);

  $xceil=  intval($total/$pnumber);


 
 echo "<tr><td height='26' width='850' align='center' colspan='11' ><p><b>Страницы: "; 
       // Выводим ссылку "Назад", если это не первая страница 
       if($page!= 1) echo "<a href='index2.php?page=".($page- 1)."&$sort&strtmp=$strtmp'>Назад</a> "; 
       // Число страниц до и после текущей страницы 
       $npage = 3; 
       // Выводим предыдущие элементы 
       if($page> $npage + 1) 
       { 
         echo "..."; 
         for($i = $page- $npage; $i < $page; $i++) 
         { 
           echo "<a href='index2.php?page=$i&$sort&strtmp=$strtmp'>$i</a> "; 
         } 
       } 
       else 
       { 
         for($i = 1; $i < $page; $i++) 
         { 
           echo "<a href='index2.php?page=$i&$sort&strtmp=$strtmp'>$i</a> "; 
         } 
       } 
       // Выводим текущий элемент 
       echo "<a href='index2.php?page=$page&$sort&strtmp=$strtmp' style='color=#888888'>$i</a> "; 
       // Выводим следующие элементы 
       if($page + $npage < $xceil) 
       { 
         for($i = $page+ 1; $i <= $page+ $npage; $i++) 
         { 
           echo "<a href='index2.php?page=$i&$sort&strtmp=$strtmp'>$i</a> "; 
         } 
         echo "..."; 
       } 
       else 
       { 
         for($i = $page+ 1; $i <= $xceil; $i++) 
         { 
           echo "<a href='index2.php?page=$i&$sort&strtmp=$strtmp'>$i</a> "; 
         } 
       } 
       // Выводим ссылку "Вперёд", если это не последняя страница 
       if($page != $xceil) echo "<a href='index2.php?page=".($page + 1)."&$sort&strtmp=$strtmp'>Вперёд</a> "; 
       echo "</b></p>"; 


?>

   
 
 автор: cheops   (29.04.2006 в 10:31)   письмо автору
 
   для: technic611   (29.04.2006 в 05:27)
 

Так это просто вариант навигации такой, когда 3 обозначает число ссылок справа и слева от выбранной страницы. А что вам требуется?

   
Rambler's Top100
вверх

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