mam wyszukiwarkę która sprawdza zaznaczone lub wybrane opcje i wyświetla wynik z podziałem na strony. Problem polega na tym że działa to tylko przy pierwszym przekazaniu zmiennych. Generuje prawidłowo ilość stron odpowiednio do ilości rekordów ale po kliknięciu w link odrazu wyświetla wynik wszystkich stron i pokazuje ilość stron wszystkich rekordów a nie tylko dalszą część wyszukiwanych. Przekazywałem już zmienne POST i GET i efekt jest ten sam. Może ktoś ma pomysł jak to rozgryźć. poniżej plik z kodem :
search_advanced.php
<?php $_SESSION['check'] = true; $_SESSION['adres_ip'] = $_SERVER['REMOTE_ADDR']; } if($_SESSION['adres_ip'] !== $_SERVER['REMOTE_ADDR']){ exit; } function pasek($rekordow,$na_stronie,$na_pasku,$skrypt,$s) { if ($s<1) $s=1; if ($s>$stron) $s=$stron; $koniec = $s+$na_pasku; if ($s<=$na_pasku) $koniec = $na_pasku*2+1; if ($koniec>$stron) $koniec = $stron; $start = $koniec-$na_pasku*2; if ($start<1) $start=1; if ($s>1) $p = "<a href='$skrypt".($s-1)."'><<<</a>"; else $p = "<span style='color:gray'><<<</span>"; if ($s<$stron) $n = "<a href='$skrypt".($s+1)."'>>>></a>"; else $n = "<span style='color:gray'>>>></span>"; for ($i=$start; $i<=$koniec; $i++) { if ($i==$s) $l .= " <span style='color:#cc0000;'><b>$i</b></span> "; else $l .= " <a href='$skrypt$i'>$i</a> "; } if ($rekordow<1) $wynik = "brak informacji spełniających kryteria wyszukiwania"; else $wynik = "znalezionych: $rekordow, strona $s z $stron<br />"; if ($stron>1) $wynik .= "$p - $l - $n"; return $wynik; } $na_stronie = 1; // liczba rekordow widocznych na stronie $na_pasku = 5; // liczba odpowiedzi/2 na pasku $skrypt = "search_advanced.php?post_code=".$_POST['post_code']."&fuel=".$_POST['fuel']."&s="; // skrypt do wysyłania danych ?> <? $post_code = $_POST['post_code']; $make = $_POST['mid']; $model = $_POST['model']; $fuel = $_POST['fuel']; $param_w = '>='; $param_m = '<='; if($_POST['age']=='up_to_1_year_old') { $age = $param_w." '2010'"; } if($_POST['age']=='up_to_2_years_old') { $age = $param_w." '2008'"; } if($_POST['age']=='up_to_3_years_old') { $age = $param_w." '2007'"; } if($_POST['age']=='up_to_4_years_old') { $age = $param_w." '2006'"; } if($_POST['age']=='up_to_5_years_old') { $age = $param_w." '2005'"; } if($_POST['age']=='up_to_7_years_old') { $age = $param_w." '2003'"; } if($_POST['age']=='up_to_10_year_old') { $age = $param_w." '2000'"; } if($_POST['age']=='over_10_years_old') { $age = '< 2000'; } if($_POST['post_code']<>"") $szukaj[] = "post_code LIKE '$post_code%'"; if($_POST['mid']<>"") $szukaj[] = "make LIKE '$make%'"; if($_POST['model']<>"") $szukaj[] = "model LIKE '$model%'"; if($_POST['fuel']<>"") $szukaj[] = "fuel LIKE '$fuel%'"; if($_POST['age']<>"") $szukaj[] = "age $age"; if ($pytanie<>"") $pytanie = "WHERE $pytanie"; $start = ($s-1)*$na_stronie; $pytanie = [sql]"select SQL_CALC_FOUND_ROWS * from notice $pytanie LIMIT $start, $na_stronie";[/sql] //echo $pytanie; { } ?>