v2.5.2
Giriş yap

mySQL && ||

Anonim
679 defa görüntülendi

Şu sorgu beni çıldırttı ya lütfen bakabilir misiniz

<? $look = $db->query("SELECT * FROM users WHERE username = '$username' || useremail = '$useremail'")->fetchAll(PDO::FETCH_ASSOC);?>

buradaki "||" değilde normalde olması gereken AND diyince sadece 1 ini kontrol ediyor mesela username aynıysa ama eposta farklıysa kayıt alıyo.
ne yapmam gerek sizce?

sekiiiiiiiiz
1762 gün önce

<?php

$look = $db->query("SELECT * FROM users WHERE username = '$username' || useremail = '$useremail'")->fetchAll(PDO::FETCH_ASSOC);
       if ($look){
           if ($look['username'] == $username && $look['useremail'] == $useremail){
               echo 'mevcut';
           } elseif ($look['username'] == $username){
               echo 'varkadi!';
           } elseif ($look['useremail'] == $useremail){
               echo 'vareposta';
           }
       }else{
           $sql = $db->prepare("INSERT INTO users SET 
            user_realy_name = ?,
            username = ?,
            user_link = ?,
            userpassword = ?,
            useremail = ?
	    ");

           $ekle = $sql->execute(array(
               $user_realy_name,$username,$user_link,$userpassword,$useremail
           ));

           if($ekle){
               echo 'ok';
           }else{
               echo 'hata';
           }
       }

?>

Hocam öncelikle teşekkür ederim cevap yazdığın için fakat ben çalıştıramadım bu kodları doğrudan kayıt alıyor şuan