Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem ze stronami
Forum PHP.pl > Forum > PHP
Balas
  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
aleksander
problem (chba) tkwi w html a nie php. Wyswietlasz linki w tagu <table> a nie <td> (przynajmniej tak wychodzi z kodu)
Balas
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. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.