Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Złe stronicowanie
Forum PHP.pl > Forum > Przedszkole
szczalpi
Witam
Mam mały problem odnośnie stronicowania na stronie. Problem tkwi w tym, kiedy wynik zwraca 0 pojawia mi się zakładka "Następna", a powinno się nie pojawiać.
Poniżej przedstawiam Wam kod. Szukałem błędu, ale niestety nie potrafię go znależć.
Proszę o pomoc
  1. $pokaz = $_GET['pokaz'];
  2. if($_GET['przeszukaj']=="Szukaj"):
  3. {
  4. $pokaz = $_GET['pokaz'];
  5. if ($_GET['page']!="") $str=urldecode($pokaz);
  6. else
  7. $str = iconv("utf8","iso-8859-2", $pokaz);
  8. $pokaz=$str;
  9. $sql = "select COUNT(*) from kody_pocztowe WHERE wojewodztwo='$pokaz' or powiat='$pokaz' or miasta='$pokaz' ";
  10. $wykonaj1 = mysql_query($sql);
  11. list($wszystkich)=mysql_fetch_row($wykonaj1);
  12. $page = $_GET['page'];
  13. if ($page == "") $page="1";
  14. $poprzenia = $page -1;
  15. $nastepna = $page +1;
  16. $ile="15";
  17. $podstron = ceil($wszystkich/$ile);
  18. $sql="select * from kody_pocztowe WHERE wojewodztwo='$pokaz' or powiat='$pokaz' or miasta='$pokaz' limit ".(($page-1)*$ile).",".$ile;
  19. $result=mysql_query($sql);?>
  20. <?
  21. $i = 1;
  22.  
  23. if (mysql_num_rows($result)==0) {echo "<p><b>Nic nie znaleziono.</b></p>";}
  24.  
  25. if (mysql_result($wykonaj1,0,0))
  26. {
  27. ;
  28. }
  29. else
  30. {
  31.  
  32. echo '';
  33. }
  34. while ($row = mysql_fetch_array($result, MYSQL_ASSOC))
  35. {$i++;
  36. if ($i == 6 ) echo '';
  37. ?>
  38. <div style="border-bottom: 1px dashed #D3D0AF;margin: 10px;height:50px;text-align: left;padding: 10px ">
  39.  
  40. <? $str=''.$row['id'].'-'.$row['miasta'].'';?>
  41. <span style="color:#BBBBBB">Miasto: <? echo $row['miasta']; ?></span>
  42. </div>
  43. <?
  44.  
  45. }
  46.  
  47. }
  48.  
  49.  
  50. endif;
  51.  
  52. ?>
  53. <div class="pagerDB">
  54. <span class="pagerDB-list"><?
  55.  
  56.  
  57. // odnośnik na poprzednią stronę
  58. if($page != 1){
  59. echo('<a style="text-decoration:none" href="szukaj.php?page='.$poprzenia.'&pokaz='.$pokaz.'&przeszukaj=Szukaj">Poprzednia </a>');
  60. }
  61. // pętla for za pomocą której wyświetlamy odnośniki do poszczególnych stron
  62. for($i=max(1,$page-3); $i<=min($podstron,$page+3); $i++){
  63. echo(' <a style="text-decoration:none" class="pagerDB-next active" href="szukaj.php?page='.$i.'&pokaz='.$pokaz.'&przeszukaj=Szukaj"> '.$i.'</a> ');
  64. }
  65.  
  66. // odnośnik na następną stronę
  67. if($page != $podstron){
  68. echo('<a style="text-decoration:none" href="szukaj.php?page='.$nastepna.'&pokaz='.$pokaz.'&przeszukaj=Szukaj"> Następna</a>');
  69. }
  70.  
  71.  
  72. ################################################################################
  73.  
  74.  
  75.  
  76. ?>
nospor
if($page != $podstron){
No skoro $podstron masz 0, a $page jest rowne 1 to chyba logiczne, ze warunek bedzie prawdziwy.....

Daj:
if($page != $podstron && $podstron > 0){

Lub najlogiczniej:
if($page < $podstron){
freemp3
0/15 = 0
Więc warunek:
  1. if($page != $podstron)

Nie ma prawa się wykonać ponieważ page masz ustawione na 1.
nospor
Cytat
Nie ma prawa się wykonać ponieważ page masz ustawione na 1.

1 jest rozne od 0, wiec warunek wlasnie sie wykona smile.gif I o tym pisalem w moim wczesniejszym poscie.
freemp3
Cytat
1 jest rozne od 0, wiec warunek wlasnie sie wykona smile.gif I o tym pisalem w moim wczesniejszym poscie.

Tak wiem, ale przed wysłaniem posta nie sprawdziłem, czy ktoś odpowiedział, dlatego też wysłaliśmy podobne informacje smile.gif
nospor
No wlasnie nie. Ty napisales zlą informacje, co zaznaczylem, a mimo to tego nie zauwazyles.... Ty napisales ze warunek nie ma prawa sie wykonac, a ja ci mowie ze ma prawo sie wykonac.

1 jest rozne od 0
smile.gif
freemp3
Kurcze faktycznie. Miałem na myśli to, że warunek nie zadziała tak jak powinien z zerowymi wynikami smile.gif a napisałem jak widać. Dzięki za zwrócenie uwagi.
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.