usersテーブルとusers_banlistテーブルがあります。
登録フォームで、フォームに入力したユーザー名がusersテーブルに存在するかどうかをすべて1つのクエリでチェックし、users_banlistテーブルにも存在するかどうかを確認したいと思います。
個別のクエリで独自に実行できますが、すべてを1つで実行したいと思います。
これが私が得たものですが、取得したユーザー名を入力しても、すでに取得されているとは表示されません。
$stmt = $dbh->prepare("
SELECT
users.user_login,
users_banlist.user_banlist
FROM
users ,
users_banlist
WHERE
users.user_login = ? OR
users_banlist.user_banlist = ?");
// checker if username exists in users table or users_banlist table
$stmt->execute(array($username, $username));
if ( $stmt->rowCount() > 0 ) {
$error[] = 'Username already taken';
}
基本的に、それはexecuteまたはrowCount()と関係があると思いますが、どこが間違っているのか誰かに教えてもらえますか?pdoを初めて使用するので、現時点では少し混乱しています。