Cevaplara yorum özelliği eklendi. Lütfen tartışmalar için yorumları kullanın. Tüm güncellemeler

Koşullara göre buton göstermek

Arkadaşlık sistemi için uğraş veriyorum. Gelişen olaylar karşısında butonun işlevi değismesi gerekiyor. Şuan bu aşamadayım. Şöyle de bir mantık kurdum. Veritabanını where kullanmadan tamamen çekerek. İcerisindeki verilere göre if else yapım. Danışmak istediğim ise bu mantık doğru mudur. Siz olsanız nasıl yaparsınız?

arkadaslik
-----------
arkadas_id	kim	kime	onay
1		1	2	0
2		3	1	0


1-OKAN 2-SINEM 3-DUYGU


//Okan Sinem'e arkadaslik istegi gönderiyor.
//Duygu Okan'a arkadaslik istegi gönderiyor. Yanlizca olaylar karsisinda çikan butonlar için


if( $kim == session('id') and $kime == $profil_id and $onay == false ) {


	echo 'Istek Gönderildi';


}elseif( $kim != session('id') and $kime != $profil_id ) {


	echo 'Arkadas Ol';


}elseif( $kim == session('id') and $kime == $profil_id and $onay == true ) {


	echo 'Arkadassiniz';


}elseif( $kim != session('id') and $kime == session('id') and $onay == false ) {


	echo 'Kabul Et';


}elseif( session('giris') == false ) {


	echo 'Üye Ol';


}


1

Cevaplar (1)

İşlem devam ediyor, lütfen bekleyin..
Abdulbaki Zırıh
@abdulbaki
1 ay önce [Güncellendi]

İstenilen şey yapılabiliyor ise yanlış yoktur. Daha iyi yöntemler olabilir tabi bunlar geliştirme yaptıkça aşinalık kazanılacak şeyler fazla takılma. Sorduğun soruya gelince veritabanı sorgusunda verileri analiz ederek çekersen yani where koşulu ile çekersen performans açısından daha avantajlı olur. Çünkü tüm veriler gelip sistemi yormaz sadece gelmesi gerekenler gelir. Bunu şu şekilde örneklendirebiliriz. Hastane'de randevusu'nun ne zaman olduğunu kimsenin bilmediğini bunu öğrenmek için hastaneye akın edildiğini düşün bu şekilde olduğun da sıkışma olacaktır. Bu istenmeyen bir durumdur. Herkes randevusunun ne zaman olduğunu bilir ise insanlar bir anda akın etmez ve sıkışma olmaz. Tüm verileri çekip if ile kontrol ettiğimizde randevu yok. Sql sorgusunda sorgulama yaptığımızda randevu var. Kendi bakış açımdan anlattım umarım anlaşılır olmuştur.




Cevapla @OKANISIK1 ay önce
Ne demek istediginizi çok iyi anladım öyle de yapmayı düşündüm. sql deyiminde eşitse, değilse, false ise true ise bunları yapmaktada bilgim açısından sorun yaşamıyorum. Bu sefer de her olaya göre sql deyimi yazmak gerekmekte. Tamam onu da yazdım diyelim. Bu kez aklımda oluşan şu sorunun cevabını veremiyorum. Bu sql cümlecikleri de belirli bir koşula göre çalışacak misal Okan Sinem'e arkadaşlık isteği gönderdi. Iyi ama neye göre. Yani bu arkadaşlık isteği oluştuğunda sql sorgusunun çalışması gerekiyorya. Bunu kada anlatabilmek için yine benim en başa koşul kullanmadan tüm verileri çekmem gerekmiyor mu? Beynim yandı.
Cevapla @abdulbaki1 ay önce
@OKANISIK, Arkadaslar tablonla kullanıcılar tablonu inner join ile birbirine bağlarsın daha sonra where ile filtreleme yaparsın. Mantığı if ile yaptığın işlemi sql kodun da nasıl kullanabilirim? sorusunu sormak devamı gelir zaten.
İşlem devam ediyor, lütfen bekleyin..

Cevap yaz Sadece sorunun cevabını yazın