Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Paginacja w skrypcie ogłoszeń
Forum PHP.pl > Forum > PHP
sigal2006
mam problem z systemem ogłoszen wszystko działa jednak jest problem z paginacją.

kod

  1. <?php
  2.  
  3.  
  4. include ("admin/include/config_page.php");
  5.  
  6. $kategoria_wyjmij = explode("_", $_GET['catid']);
  7.  
  8. if ($kategoria_wyjmij[1] == 0)
  9. $zap_kat='%';
  10. else
  11. $zap_kat=$kategoria_wyjmij[1];
  12.  
  13. $zapytanie=sql_select("
  14. SELECT ogl_id FROM asall_ogloszenia
  15. WHERE ogl_aktywne LIKE '1' AND ogl_kategoria LIKE '".$kategoria_wyjmij[0]."_$zap_kat'
  16. ");
  17.  
  18. $p_max=$zapytanie[0][0]/$opage;
  19.  
  20. if ($p_max == 0)
  21. $p_max=$zapytanie[0][0]/$opage;
  22. else{
  23. $temp=explode(".", $zapytanie[0][0]/$opage);
  24. $p_max=$temp[0]+1;
  25. }
  26.  
  27. echo'<div class="ogl_pager"><br />Strona '.$p.' z '.$p_max.'<br />';
  28.  
  29. if ($p > 1)
  30. echo'<a href="'.$_GET['s'].','.$kategoria_wyjmij[0].','.$kategoria_wyjmij[1].','.($p-1).'.html">&laquo; Poprzednia</a>&nbsp;&nbsp;';
  31.  
  32. if ($zapytanie[0][0] > $opage){
  33. for ($i=1;$i<=$p_max;$i++){
  34. if (($i==1) AND ($p<2) OR (empty($p)))
  35. echo'<a href="'.$_GET['s'].','.$kategoria_wyjmij[0].','.$kategoria_wyjmij[1].',1.html">[1]</a>&nbsp;';
  36. else if (($i==$p/1) AND ($i>1))
  37. echo'<a href="'.$_GET['s'].','.$kategoria_wyjmij[0].','.$kategoria_wyjmij[1].','.$i.'.html">['.$i.']</a> ';
  38. else
  39. echo'<a href="'.$_GET['s'].','.$kategoria_wyjmij[0].','.$kategoria_wyjmij[1].','.$i.'.html">'.$i.'</a> ';
  40. }
  41. }
  42.  
  43. if (($p < $p_max) AND ($p_max>1))
  44. echo'&nbsp;<a href="'.$_GET['s'].','.$kategoria_wyjmij[0].','.$kategoria_wyjmij[1].','.($p+1).'.html">Następna &raquo;</a>';
  45.  
  46. echo'</div>';
  47. ?>


w htasses odwołanie:

  1. RewriteRule ^([a-z0-9_]+),([0-9]+),([0-9]+)\.html$ ?s=ogloszenia&catid=$2_$3 [L]

Ludzie nie wiem kompletnie gdzie tkwi problem

KrzysiekWildfire
Pierwsza rzecz:

Jakie zadanie ma poniższy kawałek?
  1. $p_max=$zapytanie[0][0]/$opage;


Rozumiem, że w $p_max znaleźć się ma ilość stron. Osobiście zrobiłbym tak;

  1. $p_max = count($zapytanie)/$opage;


I jeszcze jedna rzecz - rozumiem, że $opage jest ustalane w pliku config uploadowanym w top, zgadza się?

Aha, no i jeszcze jeden kwiatek:

  1. if ($p > 1)


Z tego co widze, to $p jest niezdefiniowane a więc jest równe null, a null jest mniejszy od 1, więc powyższe zwróci false.

Opisz dokładniej swój problem.
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.