Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Stronicowanie-jak w phpBB
FastRed
post 14.02.2004, 17:57:45
Post #1





Grupa: Zarejestrowani
Postów: 79
Pomógł: 0
Dołączył: 30.06.2003
Skąd: Chełm

Ostrzeżenie: (0%)
-----


Witam.
Mam problem, z którym męczę się już kilka godzin, ale rezultaty są ciągle mierne :/. Potrzebne mi jest stronicowanie wyników(do newsów pobieranych z bazy mysql), takie jak w phpBB, czyli:
1, 2, 3 ... 11, 12, 13 Następny
Poprzedni 1, 2, 3 ... 6, 7, 8 ... 11, 12, 13 Następny

Normalnie stronicowanie:
poprzednia | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | następna
umiem napisać, i jest to dość proste, ale nie mogę dojść jak zrobić, aby w odpowiednim momencie pojawiały się te kropeczki.
Szukałem na phpclasses, i próbowałem pozmieniać kod z phpbb(funkcja generate_pagination z pliku includes/functions.php), ale nic mi nie wychodzi.

Jeśli ktoś wie jak napisać takie coś to proszę o pomoc(najlepiej od razu z przykładem, ponieważ nie bardzo mi dzisiaj idzie myślenie).

BTW. szukałem na forum i znalazłem tylko linka do webcity, który teraz nie działa

mój kod:
[php:1:5c2f3e41f0]<?php
$ile = 7;
$q = mysql_query ('SELECT COUNT(id) AS id FROM blog_notki');
$row = mysql_fetch_array ($q);
$num=$wynik2[id];
$stron = ceil ($num / $ile);

if (!isset ($_GET['page']) || ereg ('[^0-9]', $_GET['page']))
{
$page = 1;
}else{
$page = $_GET['page'];
}
$query = 'SELECT * FROM news ORDER BY id DESC LIMIT '.(($page - 1) * $ile).', '.$ile;
$result = mysql_query ($query) or die(mysql_error());
$news= array();
while ($row=mysql_fetch_assoc($result)) {
$news[] = $row;
}
if ($stron > 1){
if ($page > 1)
$spis .= ('<a href="index.php?page='.($page-1).'">poprzednia</a> | ');
else
$tabela_stron = array ();
for ($i = 1; $i <= $stron; $i++)
$tabela_stron[$i-1] = '<a href="index.php?page='.$i.'">'.$i.'</a>';
$tabela_stron[$page-1] = $page;
$spis .= (join (' | ', $tabela_stron));
unset ($tabela_stron);
if ($page < $stron) $spis .= (' | <a href="index.php?page='.($page+1).'">następna</a>');
}
?>[/php:1:5c2f3e41f0]

Pozdrawiam, FastRed.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 26.06.2025 - 16:55