![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 642 Pomógł: 2 Dołączył: 9.03.2006 Ostrzeżenie: (30%) ![]() ![]() |
Witam, mam działający skrypt stronicowania wyników. Ale nie mogę sobie poradzić z ostatnią stroną. Kod wyświetla na stronę 10 wyników.
powiedzmy ze w bazie jest 27 recordów. Czyli powinno wyświetlić 3 strony a na trzeciej stronie powinien być brak linku "Następna strona" Nie wiem właśnie jak coś takiego zrobić. Kod :
Podejrzewam że można to zrobić licząc rekordy a następnie zablokować link następnej strony. Ale nie wiem jak tego dokonać. -------------------- |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 144 Pomógł: 7 Dołączył: 22.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
Nie jestem pewien czy dobrze liczę ale może się przydać
![]() Rozumiem że $page=2 to ostatnia strona:
Pewnie da sie zrobić lepiej i szybciej no ale może będzie starczyć coś takiego Ten post edytował Otto 12.09.2010, 17:31:23 |
|
|
-Gość- |
![]()
Post
#3
|
Goście ![]() |
Ciężko jest znaleźć działający skrypt stronicowania, dlatego postanowiłem wkleić gotowy z mojej strony tak jak jest, może komuś się przyda. To nie ja go napisałem, a jedynie posklejałem z kilku źle działających, co znalazłem w internecie i trochę zmodyfikowałem pod moje potrzeby. Jak działa można sprawdzić tutaj http://www.fxfunciak.pl/analizy.htm
<?php //Połączenie z mysql i wybranie bazy $link = mysql_connect('xxxxxxxxxxxx','xxxxxxxxx','xxxxxxxxxx'); mysql_select_db('xxxxxxxxxxxx',$link); //Domyślne wartości, odpowiednio liczby rekordów na strone i przesunięcia $count=2; $offset=0; //Pobranie danych z $_GET jezsli ustawione if(isset($_GET['count']))$count = $_GET['count']; if(isset($_GET['offset']))$offset = $count*$_GET['offset']; //numer strony //Pobranie liczby rekordów $sql = 'Select count(*) from analizy'; $result = mysql_query($sql,$link); $r = mysql_fetch_array($result); //Liczba stron, użycie ceil - zaokrąglenie w górę, w celu zapewnienia, że żadna strona się nie straci $pages = ceil($r[0]/$count); //Pobranie odpowieniej paczki w kolejności od najnowszego wpisu $sql = 'Select * from analizy order by id desc Limit '.$count.' offset '.$offset.';'; $result = mysql_query($sql,$link); //Początek pętli wyświetlającej na stronie zawartość bazy if(mysql_num_rows($result) > 0){ while($wiersz=mysql_fetch_assoc($result)){ /* Tutaj należy podać treść jaka ma się ukazać na stronie */ echo '<h4>'.$wiersz['tytul'].'</h4><p>'.$wiersz['tresc1'].'</p><p><a href="data/pictures/'.$wiersz['wykresd'].'" rel="gb_imageset[nice_pics]" title="Wykres '.$wiersz['tytul'].'"><img src="data/pictures/'.$wiersz['wykresm'].'" alt="Wykres '.$wiersz['tytul'].'"/></a><br/><center><font size="1">Nie możesz wyświetlić? Kliknij <a href="data/pictures/'.$wiersz['wykresd'].'"> tutaj!</a></font></center></p><p>'.$wiersz['tresc2'].'</p>'; echo ' '; /* Tutaj należy podać treść jaka ma się ukazać na stronie */ } } //Koniec pętli wyświetlającej echo '<p><center>'; //Pętla po stronach for($i=0;$i<$pages;$i++){ //jeśli obecna strona, nie twórz linku do strony if($i*$count==$offset){ echo ' '.$i.' '; }else{ echo '<a href="analizy.htm?count='.$count.'&offset='.$i.'"> '.$i.' </a>'; } } echo '</center></p>' ?> |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 05:55 |