• 09-07-2014, 12:22:41
    #1
    Üyeliği durduruldu
        $query = query("SELECT * FROM uyeler WHERE uye_nick = '$username' && uye_email = '$email'");
            if(mysql_affected_rows()){
                echo 2;
            }else{
                $query = query("SELECT * FROM uyeler WHERE uye_nick = '$username'");
                    if(mysql_affected_rows()){echo 0;};
                $query = query("SELECT * FROM uyeler WHERE uye_email = '$email'");
                    if(mysql_affected_rows()){echo 1;};        
            };
    $query = query("SELECT * FROM uyeler WHERE uye_nick = '$username' && uye_email = '$email'");
    bu ifadeden sonra sağlanan koşul yalnızca uye_nick ve uye_email aynı satırsa ise oluyor.

    ama atıyorum uye_nick in satırı uye_emailin satırı farklı ise çalışmıyor.

    nasıl bir sorgu kullanmalıyım?
  • 09-07-2014, 12:43:50
    #2
    Platin üye
    $query = query("SELECT * FROM uyeler WHERE uye_nick = '$username' || uye_email = '$email'");
    olarak deneyebilirmisiniz ?
  • 09-07-2014, 14:06:09
    #3
    Üyeliği durduruldu
    Onurss adlı üyeden alıntı: mesajı görüntüle
    $query = query("SELECT * FROM uyeler WHERE uye_nick = '$username' || uye_email = '$email'");
    olarak deneyebilirmisiniz ?
    Hocam demek istediğim şöye düşünün:
    satır sutun1 sutun2
    1 ------a -------b
    2 ------c -------d
    3------ f -------g


    Yaptığım denetleme de && yani ve işlemi ile sutun1 ve sutun2 için gelen değerler daha önce var mı diye sorguluyorum.
    İhtimaller neler?
    sutun1 için değer var sutun2 için yok
    sutun1 için değer var sutun2 için var
    sutun1 için değer yok sutun2 için yok
    sutun1 için değer yok sutun2 var

    Bana bold kısım gerekli.
    Kendi yazdığım şekilde çalışıyor fakat ne zaman çalışmıyor?
    sutun1 için değer "a" sutun 2 için "b" olsun çalışıyor!
    satır sutun1 sutun2
    1------a-------b
    2------c-------d
    3------f-------g


    fakat çalışmayan duruma gelelim:
    sutun1 için değer "a" olsun sutun2 için değer "g" olsun. işte bu zaman çalışmıyor.
    satır sutun1 sutun2
    1-------a------b
    2-------c------d
    3-------f------g

    yani her ikisi aynı satırın elemanıysa sorun yok. fakat farklı satırın elemanları iseler sorun var.

    Buyuk ihtimal benim query kodumda sorgulama şeklim yanlış ama bu "ve" "veya" ile alakalı değil.
  • 09-07-2014, 16:30:15
    #4
    Üyeliği durduruldu
    Gene kendim sordum kendim çözdüm sorunu. Sormadan önce de baya bir uğraşıyorum direk sormuyorum ama sorduktan sonra daha iyi odaklanıyorum heralde.

    Öncelikle satır satır denetlemek mümkün olduğundan aynı satır içersinde uyuşuyorlarsa kod çalışıyor.
    Farklı satırlarda çalışmıyor. Burda benim aptallığım var eğer öyle birşey olsaydı saçma olurdu.

    Ben && kullanarak aldığım queryleri böldüm ve etkilenen satırlarını değişkenlere atadım. ve ardından koşul olarak yazdırdım yani:
        $userquery = query("SELECT * FROM uyeler WHERE uye_nick = '$username'");
        $dedem = mysql_affected_rows();
        $userquery = query("SELECT * FROM uyeler WHERE uye_email = '$email'");
        $ninem = mysql_affected_rows();
            if($dedem && $ninem){
                echo 2;
            }else{
                $query = query("SELECT * FROM uyeler WHERE uye_nick = '$username'");
                    if(mysql_affected_rows()){echo 0;};
                $query = query("SELECT * FROM uyeler WHERE uye_email = '$email'");
                    if(mysql_affected_rows()){echo 1;};        
            };