Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]stronnicowanie problem
lamcpp
post
Post #1





Grupa: Zarejestrowani
Postów: 372
Pomógł: 2
Dołączył: 10.05.2009

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


witam, chciałem napisać sobie funkcje sortowania, połączoną ze stronnicowaniem i wyświetlaniem miniaturek zdjęć. Wyświetlanie i sortowanie działa, natomiast ze stronnicowaniem jest problem, zaden błąd w aplikacji nie wystepuje, ale zdjecia zamiast przerywać po ustalonej liczbie (odpowiada za to zmienna $strona = 16) i przechodzić na kolejną stronę są cały czas na tej samej,
kod wygląda tak:
  1. function sortuj($zapytanie)
  2. {
  3. global $dbc; global $images_dir; global $strona;
  4. if(isset($_GET['pages']) && is_numeric($_GET['pages']) && !empty($_GET['pages']))
  5. {
  6. $pages = $_GET['pages'];
  7.  
  8. }
  9. else
  10. {
  11. $wynik = mysqli_query($dbc,$zapytanie);
  12. $ilosc_rekordow = mysqli_num_rows($wynik);
  13. if($ilosc_rekordow > $strona)
  14. {
  15. $pages = ceil($ilosc_rekordow / $strona);
  16. }
  17. else
  18. {
  19. $pages = 1;
  20. }
  21. }
  22. if(isset($_GET['start']) && is_numeric($_GET['start']))
  23. {
  24. $start = $_GET['start'];
  25.  
  26. }
  27. else
  28. {
  29. $start = 0;
  30. }
  31. echo $start;
  32. echo $pages;
  33. $zapyt = $zapytanie." LIMIT $start,$strona";
  34. $wyn = mysqli_query($dbc,$zapyt);
  35. while($res = mysqli_fetch_array($wyn))
  36. {
  37. echo "<div class='wyswietl_wszystkie'><a href=\"'index.php?so=sortuj_za\"><img src='".$images_dir."/tb_".$res[2]."' border='0' alt='".$res[1]."' />
  38. </a><div class='napis_miniaturki'>".$res[1]."</div></div>";
  39. }
  40. if($pages > 1)
  41. {
  42. echo '<br /><span class="pagination">';
  43. $bierzaca_strona = ($start / $strona) + 1;
  44. if($bierzaca_strona != 1)
  45. {
  46. echo '<a href="index.php?so=sortuj_za&start='.($start - $strona).'&pages='.$pages.'">Poprzednia</a>';
  47. }
  48. for($i=1; $i<=$pages; $i++)
  49. {
  50. if($i != $bierzaca_strona)
  51. {
  52. echo "\t".'<a href="index.php?so=sortuj_za&start='.(($strona * ($i-1))).'&pages='.$pages.'">'.$i."\t</a>";
  53. }
  54. else
  55. {
  56. echo $i.' ';
  57. }
  58. }
  59. if($bierzaca_strona != $ilosc_stron)
  60. {
  61. echo '<a href="index.php?start='.($start+$strona).'&pages='.$pages.'">Następna</a></span>';
  62. }
  63. }
  64.  
  65. }
  66.  

dodam że dodatkowo, chciałem sprawdzić co zawierają zmienne start i pages, juz na samym początku kiedy powinny mieć one wartość 0 i 2(bo tyle wychodzi w przeliczeniu ze stron będzie) natomiast one zawierają po dwie wartości: 0 i 0 oraz 2 i 2. Nie wiem czemu tak jest
funkcja jest wykorzystywana przez ten kawałek kodu:
  1. switch($_GET['so'])
  2. {
  3. case 'sortuj_az':
  4. sortuj("SELECT id,nazwa,plik FROM zdjecie ORDER BY zdjecie.nazwa ASC");
  5. break;
  6. case 'sortuj_za':
  7. sortuj("SELECT id,nazwa,plik FROM zdjecie ORDER BY zdjecie.nazwa DESC");
  8. case 'sortuj_new':
  9. sortuj("SELECT id,nazwa,plik FROM zdjecie ORDER BY zdjecie.dodano DESC");
  10. break;
  11. case 'sortuj_old':
  12. sortuj("SELECT id,nazwa,plik FROM zdjecie ORDER BY zdjecie.dodano ASC");
  13. break;
  14. case 'los10':
  15. sortuj("SELECT id,nazwa,plik FROM zdjecie ORDER BY RAND() LIMIT 10");
  16. break;
  17. case 'los20':
  18. sortuj("SELECT id,nazwa,plik FROM zdjecie ORDER BY RAND() LIMIT 20");
  19. break;
  20. case 'los30':
  21. sortuj("SELECT id,nazwa,plik FROM zdjecie ORDER BY RAND() LIMIT 30");
  22. break;
  23. }

jakby ktoś miał jakis pomysł to będę wdzięczny
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 23.08.2025 - 18:48