mysql_*
コマンドの代わりに PDO を使用して Web を書き換えるプロセスがほぼ完了したので、変更した機能をテストしています。そして、私の変更された関数はmysql_result(mysql_query()
常にtrueを返すようですが、それはなぜですか? 元のコードと変更されたコードを見てみましょう:
if (mysql_result(mysql_query("SELECT COUNT(*) FROM account WHERE id='".$_SESSION["user_id"]."' AND online=1"), 0)>0)
{
return true;
}
else
return false;
ここでコードを変更しました:
$stmt = $db_login->prepare("SELECT COUNT(*) FROM account WHERE id=:id AND online=1");
$stmt->bindValue(':id', $_SESSION["user_id"], PDO::PARAM_INT);
$stmt->execute();
$results_login = $stmt->fetch(PDO::FETCH_ASSOC);
$rows = count($results_login);
if ($rows > 0)
{
return true;
}
else
return false;
では、列が online=0 の場合でも常に true を返すのはなぜですか? ありがとうございました