Kayıtlı Üyelerin Girişlerinde Sorgu

  • Kullanıcı htsumer
  • Başlangıç tarihi Başlangıç tarihi
  • - XenForo sorunları için destek talepleri
Kayıtlı üyelerimizin çalıştıkları şehirlerin sorgulanması için nasıl bir şey yapabiliriz.
Örneğin kayıtlı tüm üyeler ilk girişlerinde yada girmişlerse ilk sayfa yenilemesinde Hangi Kurumda çalışıyorsunuz diye bir sorgu çıkıp bunu yazmadan ulaşamaması yönünde bir entegre lazım.
Üye olurken Yaşadığınız şehir olayını biz Çalıştığınız Bakanlık olarak değiştirmiştik ama şindi bu türden bir şey lazım
 
Kod:
<xf:if is="$xf.visitor.Profile.custom_fields.yasanilan_sehir  == ''">
    <span class="u-muted"><b>Forumu görüntülemek için kişisel detaylar bölümünden çalışmakta olduğunuz il/ilçe alanını doldurmanız gerekmektedir.</b>
    </span>
<xf:else />
    <span class="u-muted"><b>Harikasın! Profil bilgilerin güncel.</b>
    </span>
</xf:if>
Şeklinde olması gerekiyor. Dener misin?
 
Tamam buda oldu. Yalnız Profiliniz Güncel olayından önce ben 3 tane daha alan eklemiştim. Yeni kayıtlarda bu alanı mecbur ettiğim için tek sorguyla Yaşadığı Şehri güncellerken diğer 2 sinide mecbur güncelleyecekti. Ama işin rengi değişti.
Şimdi kodları ben bu kodlarınıza göre revize ttim. Bu şekilde olmuşmu?

Değişkenler:
yasanilan_sehir
temsilci_muracaat
bize_nerden_ulastiniz

Kodlama doğrumu yapmışım?

Kod:
<xf:if is="$xf.visitor.Profile.custom_fields.yasanilan_sehir  == ''">
    <span class="u-muted"><b>Forumu görüntülemek için kişisel detaylar bölümünden çalışmakta olduğunuz il/ilçe alanını doldurmanız gerekmektedir.</b>
    </span>
<xf:else />

<xf:if is="$xf.visitor.Profile.custom_fields.temsilci_muracaat  == ''">
    <span class="u-muted"><b>Forumu görüntülemek için kişisel detaylar bölümünden çalışmakta olduğunuz il/ilçe alanını doldurmanız gerekmektedir.</b>
    </span>
<xf:else />

<xf:if is="$xf.visitor.Profile.custom_fields.bize_nerden_ulastiniz   == ''">
    <span class="u-muted"><b>Forumu görüntülemek için kişisel detaylar bölümünden çalışmakta olduğunuz il/ilçe alanını doldurmanız gerekmektedir.</b>
    </span>
<xf:else />

    <span class="u-muted"><b>Harikasın! Profil bilgilerin güncel.</b>
    </span>
</xf:if>
 
PHP:
<xf:if is="$xf.visitor.Profile.custom_fields.yasanilan_sehir  == '' OR $xf.visitor.Profile.custom_fields.temsilci_muracaat  == '' OR $xf.visitor.Profile.custom_fields.bize_nerden_ulastiniz   == ''">
    <span style="font-color:#a11"><b>Profil bilgilerin eksik. Forumdan daha iyi yararlanmak eksik alanları doldurman gerekir. Profil bilgilerini güncellemek için <a href="link">tıklayın</a>.</b>
    </span>
<xf:else />
    <span style="font-color:#a11"><b>Harikasın! Profil bilgilerin güncel.</b>
    </span>
</xf:if>
Şeklinde yaparsan her 3 koşul için tek sorguda işi bitirirsin. Yoksa ayrı ayrı 3 sorgu kullanırsın bu da hız düşüşü yaratır. Ne kadar az sorgu o kadar hız. :)
 
Tamamdır Arkadaşlar. Bu harika oldu. Emeğinize sağlık..Çok teşekkürler..3 sorgutuda denedim 3/2 eksik yada 3/1 eksik ise Güncelleyin ikazı çıkıyor, Tamamı eksik isede güncelle diyor. Hepsi Güncelse Tebrik ediyor :)

Kolaylar gelsin
 
Tamam buda oldu. Yalnız Profiliniz Güncel olayından önce ben 3 tane daha alan eklemiştim. Yeni kayıtlarda bu alanı mecbur ettiğim için tek sorguyla Yaşadığı Şehri güncellerken diğer 2 sinide mecbur güncelleyecekti. Ama işin rengi değişti.
Şimdi kodları ben bu kodlarınıza göre revize ttim. Bu şekilde olmuşmu?

Değişkenler:
yasanilan_sehir
temsilci_muracaat
bize_nerden_ulastiniz

Kodlama doğrumu yapmışım?

Kod:
<xf:if is="$xf.visitor.Profile.custom_fields.yasanilan_sehir  == ''">
    <span class="u-muted"><b>Forumu görüntülemek için kişisel detaylar bölümünden çalışmakta olduğunuz il/ilçe alanını doldurmanız gerekmektedir.</b>
    </span>
<xf:else />

<xf:if is="$xf.visitor.Profile.custom_fields.temsilci_muracaat  == ''">
    <span class="u-muted"><b>Forumu görüntülemek için kişisel detaylar bölümünden çalışmakta olduğunuz il/ilçe alanını doldurmanız gerekmektedir.</b>
    </span>
<xf:else />

<xf:if is="$xf.visitor.Profile.custom_fields.bize_nerden_ulastiniz   == ''">
    <span class="u-muted"><b>Forumu görüntülemek için kişisel detaylar bölümünden çalışmakta olduğunuz il/ilçe alanını doldurmanız gerekmektedir.</b>
    </span>
<xf:else />

    <span class="u-muted"><b>Harikasın! Profil bilgilerin güncel.</b>
    </span>
</xf:if>

Yukarıdaki kodlamada hata var. 3 adet if açmışsın 1 adet if kapatmışsın. Senin kodlama şeklin else if olması gerek arka arkaya koşul eklemek için fakat bu xf2 de bu şekilde yapılmıyor.
Kod:
<xf:if is="koşul">
      kodlar
<xf:else if is="koşul">
     kodlar
</xf:if>
Şeklinde olabilir buşekilde xf2 de hiç denemedim ama mantıken buna benzer bir şey olması gerekmektedir.
 
Anladım hocam excel makrolarında ben bu şekilde kullanıyorum, mantığı aynı olsada dizilimi değişikmiş. Amacım şuydu aslında,
Yaaşadığı Şehri sorgula eğer boş ise " Yaşadığınız Şehir Alanı Doldurmanız gerekiyor" diye yazacaktı;
Eğer Temsilcilik Alanı boş ise; " Temsilcilik Alanı Boş Doldurun" ikazı çıkacak;
Eğer Bize nereden ulaştınız boş ise " Bize Nereden Ulaştınız kısmı boş dldurun" şeklide yazacaktı.

Neyse fark etmez önemli olan Profilie gelmeleri..
Teşekkür ederim.
 
Buda son görüntüleri:

Kod:
<xf:if is="$xf.visitor.Profile.custom_fields.yasanilan_sehir  == '' OR $xf.visitor.Profile.custom_fields.temsilci_muracaat  == '' OR $xf.visitor.Profile.custom_fields.bize_nerden_ulastiniz   == ''">
    <span style="font-color:#a11"><b>Profil Bilgilerin eksik. Eksik alanları doldurman gerekir.Aksi halde &Uuml;yeli&#287;iniz sonland&#305;r&#305;lacakt&#305;r. Profil bilgilerini güncellemek için <a href="LİNK">tıklayın</a>.</b>
    </span>
    <xf:else />
    <span style="font-color:#a11"><b>Harikasın! Profil Bilgileriniz Güncel.</b>    </span>
</xf:if>

Profili eksik ise;

Screenshot_18.webp

Eksik ise;

Screenshot_17.webp

Renk Kırmızı omadı. Çok önemli değil..
 
PHP:
<xf:if is="$xf.visitor.Profile.custom_fields.yasanilan_sehir  == '' OR $xf.visitor.Profile.custom_fields.temsilci_muracaat  == '' OR $xf.visitor.Profile.custom_fields.bize_nerden_ulastiniz   == ''">
    <span style="color:#f00000;"><b>Profil Bilgilerin eksik. Eksik alanları doldurman gerekir.Aksi halde &Uuml;yeli&#287;iniz sonland&#305;r&#305;lacakt&#305;r. Profil bilgilerini güncellemek için <a href="LİNK">tıklayın</a>.</b>
    </span>
    <xf:else />
    <span style="color:#086b1e;"><b>Harikasın! Profil Bilgileriniz Güncel.</b></span>
</xf:if>
Şeklinde değiştir harikasın dediği yer yeşil olur. Diğeri kırmızı olur.
 
Kişiselleştirme

Tema editörü

Ayarlar Renkler

  • Mobil kullanıcılar bu fonksiyonları kullanamaz.

    Alternatif header

    Farklı bir görünüm için alternatif header yapısını kolayca seçebilirsiniz.

    Görünüm Modu Seçimi

    Tam ekran ve dar ekran modları arasında geçiş yapın.

    Izgara Görünümü

    Izgara modu ile içerikleri kolayca inceleyin ve düzenli bir görünüm elde edin.

    Resimli Izgara Modu

    Arka plan görselleriyle içeriğinizi düzenli ve görsel olarak zengin bir şekilde görüntüleyin.

    Yan Paneli Kapat

    Yan paneli gizleyerek daha geniş bir çalışma alanı oluşturun.

    Sabit Yan Panel

    Yan paneli sabitleyerek sürekli erişim sağlayın ve içeriğinizi kolayca yönetin.

    Box görünüm

    Temanızın yanlarına box tarzı bir çerçeve ekleyebilir veya mevcut çerçeveyi kaldırabilirsiniz. 1300px üstü çözünürler için geçerlidir.

    Köşe Yuvarlama Kontrolü

    Köşe yuvarlama efektini açıp kapatarak görünümü dilediğiniz gibi özelleştirin.

  • Renginizi seçin

    Tarzınızı yansıtan rengi belirleyin ve estetik uyumu sağlayın.

Geri