• 01-08-2007, 16:37:37
    #1
    merhaba

    veritabanından galişmiş bir arama ile veri çekmek istiyorum.
    aşağıdaki resimdeki gibi ara formum var var. sormak istediğim hepsini seçip arama yapabiliryorum ama mesela sadece marka ve modeli seçip nasıl arama yapabilirim.ya da sadece il ve markayı seçip verilerinasıl alabilrim. yani hepsini seçme zorunlulğunu nasıl kaldırabilirim.

    sql kodum:
    SQL = "Select * from tablom where guzergahil1='"&guzergahil1&"' and guzergahsemt1='"&guzergahsemt1&"' and guzergahil2='"&guzergahil2&"' and guzergahsemt2='"&guzergahsemt2&"' and markasi='"&markasi&"' and modeli='"&modeli&"' and tipi='"&tipi&"' and kilometresi='"&kilometresi&"' and aylikortkullanimkm='"&aylikortkullanimkm&"'"


    şimdiden tşk ler
  • 01-08-2007, 17:03:34
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Bunu tek satırlık bi SQL cümlesi ile yapamazsın. İşin mantığıyla ilgili bir makale yazmıştım Gelişmiş Arama Sayfası Mantığı - Asp (Makale) adresinde..

    Nasıl yapıldığını, örneği uygulayarak anlayabilirsin. Daha sonra da istediğini yapmak çok da zor olmaz.
  • 01-08-2007, 17:19:31
    #3
    öncelikle yanıtın için tşkler. bende 10 tane değişik arama yeri var. yani teker teker seçip arama yapmak mümkün ama mesela rastgele 2 tanesini seçip arama yapıldığında yada 3 tanesini yada 4... gibi o zaman tüm hepsi için koşulmu belirteceğiz mesela eğer marka seçilip model de seçilmişse şunu yap, yada eğer kilimetre ,park yeri , ve tipi seçilmişse şunu şunu yap.. gibi mi oalcak . mantığını çıkaramadım. eelinizde örnek var mı ? biraz sıktım biliyorum ama öğrenmem lazım merak . tşk. kolay gelsin...
  • 01-08-2007, 17:57:00
    #4
    Aslıdan açıklamışsın işte.

    SQL = "SELECT * FROM tablo WHERE id > 0"
    If marka <> "" Then SQL = SQL & " AND marka = '"& Request.Form("marka") &"'"
    If tip <> "" Then SQL = SQL & " AND tip = '"& Request.Form("tip") &"'"
    böyle devam edecek.

    id > 0 aslında greksiz görünebilir ama if'lere başlamadan önce WHERE'in yazılması gerekli. Onun için de her durumda doğru olacak bir şart yazılmalı.
  • 18-03-2009, 15:25:55
    #5
    Doronty37 ,Sorum sanadır.
    Gelişmiş arama sayfası mantığı konulu makeleni okudum. Paylaşım için teşekkür ediyorum. Ama ben uygulayamadım. Önce karekter sorunu çıktı. çift tırnak işareti ni değiştirdiğimde düzeldi ama sonra da do olmadan loop hatası verdi.
    Şu konuyu bir kez daha günselleyebilirmisin lütfen.