• 10-08-2010, 10:21:10
    #1
    Merhaba arkadaşlar.

    Ben bir sistem yapıyorum ve veritabanımda iki tane makale var id'si 40 ve 41 olan. Makale gösterme sayfamın en altında erişim kolaylığı olsun diye "<< Önceki" ve "Sonraki >>" butonları var. Ben bir sorguyla MySQL'den ID'si en büyük olan veriyi çekiyorum. Ama id'si 40 olan veride önceki butonunu, id'si 41 olan veride sonraki butonunu göstermek istemiyorum. Kısacası en büyük id'de sonraki'ni, en küçük id'de öncekini göstermek istemiyorum. Bunu nasıl yapabilirim? Teşekkürler şimdiden.
  • 10-08-2010, 10:33:17
    #2
    dediğinizi tam olarak anlamadım. Büyük IDsi olana "Önceki", küçük IDsi olana "Sonraki" butonu mu vermek istiyorsunuz?
  • 10-08-2010, 10:38:00
    #3
    Hayır hayır. Mesela benim tablomdaki ilk verinin id'si 5. en son verinin id'si de 1058. ID'si 5 olandan öncekine gidemeyeceği için zaten varolan önceki butonunu id 5ken göstermek istemiyorum. Aynı şekilde id 1058ken de sonrakine gidemeyeceği için göstermek istemiyorum sonraki butonunu. Kısaca en küçük id'de önceki olmayacak. En büyük id'de de sonraki olmayacak. Aradaki her makalede önceki ve sonraki butonu yer alacak.
  • 10-08-2010, 10:56:27
    #4
    en küçük değer için
    SELECT MIN(id) FROM tablo;
    en büyük değer için
    SELECT MAX(id) FROM tablo;
    ikisi bir arada kullanım
    SELECT MIN(id) as minid,MAX(id) as maxid FROM tablo;
    sanırım bunu arıyorsun
  • 10-08-2010, 11:03:39
    #5
    dostum onlar zaten var bende. çekebiliyorum en küçük en büyük veriyi. sadece en küçük veri sayfasında önceki butonunun, en büyük veri sayfasında da sonraki butonunun görünmesini istemiyorum.

    basit bir if işi. matematiksel olarak yapmaya çalıştım ama önceki olayı çalışıyor sonraki olayı çalışmıyor.
  • 10-08-2010, 11:07:55
    #6
    SoutH adlı üyeden alıntı: mesajı görüntüle
    dostum onlar zaten var bende. çekebiliyorum en küçük en büyük veriyi. sadece en küçük veri sayfasında önceki butonunun, en büyük veri sayfasında da sonraki butonunun görünmesini istemiyorum.

    basit bir if işi. matematiksel olarak yapmaya çalıştım ama önceki olayı çalışıyor sonraki olayı çalışmıyor.
    if ($gelenid != $enkucukid){  ## gelen id en küçük id ile eşit deil ise butonu göster
    
    ///en küçük id buton kodları
    
    }
    
    
    if ($gelenid != $enbuyukid){ ## gelen id en büyük id ile eşit deil ise butonu göster
    
    ///en büyük id buton kodları
    
    }
    buton kodlarını bu şekilde düzenlersen istediğin olur sanırım
  • 10-08-2010, 12:08:17
    #7
    Kimlik doğrulama veya yönetimden onay bekliyor.
    $query = "SELECT * FROM tablo_adi WHERE tablo_adi.id > ".$id." ORDER BY id ACS LIMIT 1 ";
    Bu sorguyu çalıştırdığında bir sonrakini bulursun.

    $query = "SELECT * FROM tablo_adi WHERE tablo_adi.id < ".$id." ORDER BY id DESC LIMIT 1 ";
    Bu sorguyu çalıştırdığında bir öncekini bulursun.

    Bu sorgulardan önce $id değişkenine mevcut makalenin idsini ataman gerekiyor. Kolay gelsin...