• 15-11-2015, 23:10:48
    #1
    Merhaba Arkadaşlar,
    bir emlak sitesi yazıyorum. Haliyle çok fazla emlak yok. ama SQL'de sıkıştım kaldım :/ Yardımcı olursanız çok sevinirim. Teşekkürler şimdiden.

    DB'Mİ ANLATAYIM

    İL : il_id, il_adi, ...
    İLÇE : ilce_id, il_id, ilce_adi, ...
    EMLAKLAR: emlak_id, il_id, ilce_id, ... (farklı şehirlerden emlaklar mevcut)

    İstediğim ise: Bu sayfada Türkiye İLLER ve O İLLERDEKİ İLÇELERİ ALTINA ufak ufak getirteceğim. AMA ASIL İSTEDİĞİM İSE, bu sayfada SADECE HANGİ İLDE İLANLAR VARSA O İLLER VE İLÇELER LİSTELENSİN.

    YANİ TÜRKİYE'DEKİ TÜM İLLER ve İLÇELERİ OLMASIN. SADECE EMLAĞIN OLDUĞU İL VE İLÇELER.

    İL ADI-06
    O İLDEKİ İLÇELER

    İL ADI-35
    O İLDEKİ İLÇELER

    İL ADI-34
    O İLDEKİ İLÇELER

    İL ADI-4
    O İLDEKİ İLÇELER
  • 17-11-2015, 20:53:25
    #2
    merhaba,
    olan emlakları muhtemelen emlaklar tablonuza ekliyorsunuz. haliyle illeri sergilerken select'i emlaklar tablonuza yapıp illeri ve ilçeleri çekebilirsiniz.
    yani;
     select * from emlaklar 
    right join il on emlaklar.il_id=il.il_id 
    right join ilce on emlaklar.ilce_id=ilce.ilce_id;
    şu sorguya phpmyadmin içerisinden bir bakın ne demek istediğimi anlayacaksınız. bu mantıkla uygun sorgunuza ilerlersiniz.

    alternatif olarak ilçelere ilan_adedi koyup adminden ilan ekleyip sildikçe satırı update edebilirsiniz. böylelikle direk ilçelerden where ilan_adedi>0 şeklinde illere de yürüyebilirsiniz.


    kolaylıklar.
  • 18-11-2015, 12:46:49
    #3
    $ilanolaniller="select * from il where id in (select il_id from ilanlar)";
    $ilanolanilceler="select * from ilce where id in (select ilce_id from ilanlar)";
    bu şekilde hangi il yada ilcede ilanvar listeyebilirsiniz.