reis-64
il, ilçe, semt, mahalle ve bir kaç tane daha input sorguları, daha doğrusu filtreleme yaptırmak istiyorum. inputların boş gelme olasılığı da var. tek tek inputları kontrol edip boşsa tüm verileri, yani il seçilmemişse tüm il id'lerini, diğer inputlar içinde aynı, tüm ilçe id'lerini, vs şekilde olmasını istiyorum bir türlü yapamadım. bu iş nasıl yapılır veya daha kısa bir yolu var mıdır filtrelemenin?
mgsmus
Ben şu şekilde yapardım sanırım:
1. Yeni kayıt oluşturuluyorsa, yani ön tanımlı, seçilmiş bir il, ilçe, semt, mahalle yoksa:
a. İlleri select olarak listeletirdim.
b. İl seçildiğinde ilçe seçeneğini js ile doldururdum.
c. İlçe seçildiğinde semtleri, semt seçildiğinde mahalleleri doldururdum.
Bu durumda il listesini ilk olarak viewa controller içerisinde, select olarak kullanılması için ["il_kodu" => "il_adi"] şeklinde gönderiyorum.
2. Mevcut bir kayıt düzenleniyorsa, yani ön tanımlı, seçilmiş bir il, ilçe, semt ya da mahalle varsa:
a. Aynı şekilde il listelemesini yapardım ama seçili ili de gönderip select içerisinde seçili olmasını sağlardım
b. İlçe seçilmiş ise seçili ile göre ilçeleri dizi olarak alır onları da select içerisinde, seçili ilçe ile gönderirdim
c. İlçe için yaptığımı semt ve mahalle için de yapardım
Bu durumda il listesi aynı şekilde viewa gönderiyorum ama bu sefer seçili ili de gönderiyorum. Eğer ilçe seçilmiş ise seçili şehire göre ilçeleri seçip seçili ilçe ile onları da viewa gönderiyorum. Aynı işlemi semt ve mahalle için de yapıyorum.
reis-64
tşkler, onu hallettim de, yalnız bir yerde takıldım. select renk seçeneğim var, içinde renkler var. kullanıcı renk seçimi yapmadan arama yaptırdığında bu arada aramadaki kriterler için "model ve cinsiyet" adındaki 2 tabloyu join ile birleştirdim; if (request->renk != "") $renkler = request->renk else $renkler = ['beyaz',kırmızı','mavi','sarı'] yaptım(amaç: renk seçimi yapılmadan post edildiyse form, tüm renkteki kıyafetleri getirmek). where('renkler', $renkler) diye sorgulattığım da sonuç alamıyorum. yani sormak istediğim diziyi nasıl where sorgusu içinde kullanabilirim, özellikle join için?
loc
whereIn kullanacaksin bunun icin.
reis-64
maalesef olmadı. whereNotIn ile seçim yapılan renge ait veriler geliyor ama seçim yapılmadığında dizi yani tüm renk verilerini alamıyorum
reis-64
sorunu if else blokları içinde ayrı ayrı sorgu yaparak çözdüm. biraz kod kalabalığı oldu ama.