2016-09-09 8 views
-1

私は単にユーザがデータベースにいるかどうかをチェックしようとしています。しかし何らかの理由で私は何も得ていないか、あるいはユーザーがいなくなっています。何が間違っているのかわからない:/mysqlクエリのブール値を返す

$email = "[email protected]"; 
$password = "passssss"; 

$sql = "SELECT COUNT(email) FROM accounts WHERE email = '".$email."' AND password = '".$password."' LIMIT 0, 1"; 

$conn = new mysqli($GLOBALS['dbServerName'], $GLOBALS['dbUsername'], $GLOBALS['dbPassword']); 

if ($conn->query($sql) === TRUE) { 
    echo "user yes"; 
} else { 
echo "user no " . $conn->error; 
} 
+0

MysqliResultは厳密には「true」に等しくありません。 – Arnial

答えて

3

これは間違っています。​​は、statmementハンドル/オブジェクトを返します。 NOTは、選択した値を返します。 ->fetch()が最初のものです(例:

$stmt = $conn->query("SELECT count(*) AS cnt ..."); 
$row = $stmt->fetch_assoc(); 
if ($row['cnt'] > 0) { .... } else { ... }