Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> problem ze stronami
Balas
post
Post #1





Grupa: Zarejestrowani
Postów: 347
Pomógł: 0
Dołączył: 27.08.2005
Skąd: Inowrocław

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


  1. <?php
  2. define('ILOSC_WYNIKOW_NA_STRONIE', 5);
  3. mysql_connect ("localhost", "****", "******");
  4. mysql_select_db("mysql_nauka");
  5.  
  6. $sql = "SELECT SQL_CALC_FOUND_ROWS * 
  7.  FROM news
  8.  ORDER BY id DESC 
  9.  LIMIT ".mysql_escape_string((int)$_GET['porcja']*ILOSC_WYNIKOW_NA_STRONIE).",".ILOSC_WYNIKOW_NA_STRONIE;
  10. // pobiera ILOSC_NA_STRONIE rekordów z bazy, sortując wg daty rosnąco, zaczynając 
    od $_GET['porcja']*ILOSC_NA_STRONIE
  11. $zapytanie = mysql_query($sql); // wykonujemy zapytanie
  12. while($wiersz = mysql_fetch_array($zapytanie))
  13. {
  14.  
  15.  
  16. print "<table border=0 width=500><tr><td>Dodane: ".$wiersz['data']."<hr></td></tr>";
  17. print "<tr><td>".$wiersz['tresc']."<hr></td></tr>";
  18. print "<tr><td align=right>Dodal: ".$wiersz['nick']."</td></tr><br>";
  19. }
  20.  
  21. // w inny sposób pobieramy ilosc danych w bazie
  22. $sql = "SELECT FOUND_ROWS() as Ilosc";
  23. $zapytanie = mysql_query($sql); 
  24. list($iloscWpisow) = mysql_fetch_row($zapytanie);
  25.  
  26. //Teraz wypadało by wyswietlic jakąc nawigację 
  27.  
  28. //jesli nie jestesmy na pierwszej stronie
  29. if($_GET['porcja']>0){ 
  30. //wyswietlamy link do poprzedniej strony
  31.  echo '<a href="?porcja='.($_GET['porcja']-1).'">Poprzednie</a> ';
  32. }
  33.  
  34. for($i = 0;$i<=floor($iloscWpisow/ILOSC_WYNIKOW_NA_STRONIE);$i++){
  35.  echo '<a href="?porcja='.($i).'">[ '.($i+1).' ]</a> ';
  36. }
  37. //jesli nie jestesmy na ostatniej stronie
  38. if($_GET['porcja']<floor($iloscWpisow/ILOSC_WYNIKOW_NA_STRONIE)){ 
  39. //wyswietlamy link do nastepnej strony
  40.  echo ' <a href="?porcja='.($_GET['porcja']+1).'">Następne</a>';
  41. }
  42. ?>


Mam taki kod, ktory dzieli mi newsy na strony... ale mam problem. Wszystko wyswietla poprawnie tylko nawigacja jest NAD ostatnim newsem sad.gif znaczy sa 4 newsy, nawigacja i ostatni news (na kazdej stronie) i w nawigacji jest zawsze 6 stron (niezaleznie od liczby postow).... co jest zle questionmark.gif

Ten post edytował OnE.Killer 13.09.2005, 18:10:00


--------------------
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
aleksander
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 742
Pomógł: 0
Dołączył: 14.12.2003
Skąd: Gdańsk, Trójmiasto

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


problem (chba) tkwi w html a nie php. Wyswietlasz linki w tagu <table> a nie <td> (przynajmniej tak wychodzi z kodu)
Go to the top of the page
+Quote Post
Balas
post
Post #3





Grupa: Zarejestrowani
Postów: 347
Pomógł: 0
Dołączył: 27.08.2005
Skąd: Inowrocław

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


Przez to mi tak glupio wyswietlało bo nie mialem zamknietej tabeli haha.gif

acha... i poradzilem sobie z tymi stronami, bląd w kodzie :]

teraz mam tak:

  1. <?php
  2. // w inny sposób pobieramy ilosc danych w bazie
  3. $sql2 = "SELECT FOUND_ROWS() as Ilosc";
  4. $zapytanie2 = mysql_query($sql2); 
  5. list($iloscWpisow) = mysql_fetch_row($zapytanie2);
  6.  
  7. //Teraz wypadało by wyswietlic jakąc nawigację 
  8.  
  9. //jesli nie jestesmy na pierwszej stronie
  10. if($_GET['porcja']>0){ 
  11. //wyswietlamy link do poprzedniej strony
  12.  echo '<a href="?porcja='.($_GET['porcja']-1).'">Poprzednie</a> ';
  13. }
  14.  
  15. for($i = 0;$i<=floor(($iloscWpisow-1)/ILOSC_WYNIKOW_NA_STRONIE);$i++){
  16.  echo '<a href="?porcja='.($i).'">[ '.($i+1).' ]</a> ';
  17. }
  18. //jesli nie jestesmy na ostatniej stronie
  19. if($_GET['porcja']<floor(($iloscWpisow-1)/ILOSC_WYNIKOW_NA_STRONIE)){ 
  20. //wyswietlamy link do nastepnej strony
  21.  echo ' <a href="?porcja='.($_GET['porcja']+1).'">Następne</a>';
  22. }
  23.  
  24. ?>


--------------------
Go to the top of the page
+Quote Post

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 Aktualny czas: 21.08.2025 - 13:28