Баг в навигации.

Печать RSS
116

Автор
Землянин
0
Понадобилась простенькая навигация:
1 запись из базы на страницу, и ссылки, вперед-назад. Реализовал так
<?php
include "db_connect.php";
$page = $_GET['page'];
$query = $db -> query("SELECT * FROM users");
$num_page = mysqli_num_rows($query);
if($page > $num_page) $page = $num_page;
if($page < 1) $page = 1;
$query_obj = $db -> query("SELECT * FROM users ORDER BY id ASC LIMIT $page, 1");
while($sql = $query_obj -> fetch_assoc()) echo $sql['login'];
if($page != 1) echo '<a href="?page='.($page-1).'">назад</a> ';
if($page > 0 AND $page != $num_page) echo '<a href="?&page='.($page+1).'">вперёд</a> ';
?>
вот пример http://xletters.ru/test.php?page=1 , навигация работает на ура, но, в моем примере вывод 3 записей, и последняя запись ( http://xletters.ru/test.php?page=3 ) не выводится.

Чатланин
0
http://old.snippets.pp.ru/article/108
я этим классов уже пару лет пользуюсь, только переписал под себя.
попробуй его.
Автор
Землянин
0
2. GingerBread, спасибо, но эта навигация мне не подходит

Чатланин
0
ну проверь так
<?php 
include "db_connect.php"; 
$page = (empty($_GET['page'])) ? 0 : abs(intval($_GET['page']));
$query = $db -> query("SELECT * FROM users"); 
$num_page = mysqli_num_rows($query)-1; 
if($page > $num_page) $page = $num_page; 
$query_obj = $db -> query("SELECT * FROM users ORDER BY id ASC LIMIT $page, 1"); 
while($sql = $query_obj -> fetch_assoc()) echo $sql['login']; 
if($page != 0) echo '<br /><a href="?page='.($page-1).'">назад</a> '; 
if($page != $num_page) echo '<br /><a href="?&page='.($page+1).'">вперёд</a> '; 

учитывать с 0.
Автор
Землянин
0
4. GingerBread, спасибо, сделал http://xletters.ru/test.php . А то у меня навигация начиналась с 1 страницы
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск