index.php de sayfalamayı yapıtım çalıyor ama detayliara.php de sayfalama çalışıyor ama ileri ki sayfaya geçince aradığım değilde aramadıklarımda geliyor.
Arama yapacağım kategoriyi seçerek GET ile yolluyorum arama yaptığımda seçtiğim kriteregöre listeliyor sorun ise sayfalamada ileri tıklayınca aradığım kriterin devamını göstermek yerine aramadığım sehirleride getiriyor ve karışık gösteriyor.
Get ile yolladığımda url ilk sayfada bu şekilde görünüyor :
detayliara.php?sehir=Adana&cinsiyet=Erkek&dogumyili=&tarih=&detayliara=Detaylı+Ara
sayfalamayada ileri tıkladığımda ise url böyle oluyor "detayliara.php?sayfa=2"
"detayliara.php?sayfa=3" gibi devam ediyor.
Örnek :
sehir olarak (adana) seçip birde cinsiyet olarakta (erkek) seçip arattığımda ilk sayfada ve url de aradığım kelimeler doğru görünüyor sonra sayfalamada devamı için ileri tıkladığımda aradığım kriteregöre değilde veritabanındaki diğer verileride listeliyor.
Ne yapmalıyım bilemedim.
Aşağıdakileri denedim olmuyor.
(1) sayfalamada Aşağıdaki gibi yaptım olmadı
"detayliara.php?sehir=&cinsiyet=&sayfa="
(2) sayfalamada Aşağıdaki gibi yaptım olmadı
"detayliara.php?sehir=$sehir&cinsiyet=$cinsiyet&sayfa="
Aşağıdaki detayliara.php deki kodu tamamen ekledim.
// Sayfa Gönderiminde Kullanacağımız Parametre Adı
$sayfa = @$_GET["sayfa"];
if(!$sayfa){ // Get İle Bakıldığında sayfa Yoksa
$sayfa = 1; // Defaul Değer Olarak 1 Tanımlıyoruzki Kayıt Okumaya 1 den Başlasın
}
// Veritabanı Tablomuzdaki Tüm Kayıtları Sayıyoruz
$toplamkaydibul = @mysql_num_rows(@mysql_query("SELECT * FROM kayitlar"));
// Her Sayafa Kaçar Kaçar Kayıt Listeneceği Değer
$sayfalamalimiti = 50;
// Gelen sayfa=??? Parametresine Göre Hangi Kayıttan Başlanacağını Buluyoruz
$baslangicsayisi = ($sayfa*$sayfalamalimiti)-$sayfalamalimiti;
// Kayıt Sayısına Göre Toplam Kaç Sayfamız Olacağını Buluyoruz
$toplamsayfasayisi = @ceil($toplamkaydibul/$sayfalamalimiti);
// Kayıtlarımıza Bağlanıp Sorgumuzu Yapıyoruz (Başlanacak Kayıt Yeri ve Gösterilecek Kayıt Adedi)
// Döngü Başlatıp Kayıtları Listeletiyoruz
$gelenkelime = $_GET["detayliara"];
$sehirx=$_GET["sehir"];
$cinsiyetx=$_GET["cinsiyet"];
$dogumyilix=$_GET["dogumyili"];
$tarihx=$_GET["tarih"];
mysql_query("SET SESSION character_set_results = 'UTF8'");
mysql_query("set SESSION character_set_client = 'UTF8'");
mysql_query("set SESSION character_set_connection = 'UTF8'");
$result = mysql_query("SELECT * FROM kayitlar WHERE sehir LIKE '%$sehirx%' and cinsiyet LIKE '%$cinsiyetx%' and dogumyili LIKE '%$dogumyilix%' and tarih LIKE '%$tarihx%'ORDER BY id DESC LIMIT $baslangicsayisi,$sayfalamalimiti");
$adet = @mysql_num_rows($result);
echo ''. "Arama Sorgusu Bulunan Kayıt Sayısı : ". ''. ''."$adet" . ' '.'
';
while($r=mysql_fetch_array($result))
{
$bulunan++;
$id=$r["id"];
$adiniz=$r["adi"];
$soyadiniz=$r["soyad"];
$cinsiyet=$r["cinsiyet"];
$dogumyili=$r["dogumyili"];
$sehir=$r["sehir"];
$tarih=$r["tarih"];
?>
=$id?>
=$adi?>
=$soyadi?>
=$dogumyili?>
=$cinsiyet?>
=$sehir?>
=$tarih?>
$renkicinsayi++;
}
// Döngü Başlatıp Kayıtları Listeletiyoruz
echo '';
echo '';
// Aşağıdaki sayfalama kodu
{
?>
}
?>
if($sayfa>1){
$sayfayibirgerial = $sayfa-1;
echo "İlk ";
echo "Önceki ";
}
$sayfanogosterimlimiti = 10;
for($sayfaindex=$sayfa-$sayfanogosterimlimiti; $sayfaindex<=$sayfa+$sayfanogosterimlimiti ; $sayfaindex++){
if(($sayfaindex>0) and ($sayfaindex<=$toplamsayfasayisi)){
if($sayfa==$sayfaindex){
echo "".$sayfaindex."";
}else{
echo "".$sayfaindex." ";
}
}
}
if($sayfa!=$toplamsayfasayisi){
$sayfayibirilerial = $sayfa+1;
echo "Sonraki ";
echo "Son";
}
?>
Konuyu toplam 2 kişi okuyor. (0 kullanıcı ve 2 misafir)