変更するには、この(あなたがしたい場合は、より多くを追加することができます)へのクエリ: -
$sql='select username from users where username=? OR email=?';
$stmt=$mysqli->prepare($sql);
$stmt->bind_param('ss',$username,$email);
$stmt->execute();
それは1つのユーザ名または電子メールのいずれかが存在する場合、それはtrueを返します、確認する必要があります。
UPDATE(ご要望に応じて): -
$sql='select email from users where email=?';
$stmt=$mysqli->prepare($sql);
$stmt->bind_param('s',$email);
$stmt->execute();
$stmt->bind_result($found);
$stmt->fetch();
if($found){
// Email registered before!
$error = true; // To prevent double checking
// You can use the $error or this array error.
// $error[] = "Email Found, please register using another email";
}
if (!$error || count($error) == 0) {
$sql='select username from users where username=?';
$stmt=$mysqli->prepare($sql);
$stmt->bind_param('s',$username);
$stmt->execute();
$stmt->bind_result($found);
$stmt->fetch();
if($found){
// Username registered before!
}
}
が、私はそれをするつもりの変化だので、私はそれについての学習を始めるとすぐPDO 『または改善MySQLiのが「私が使用する必要があることを言わないでください』 " - すでにmysqli +のプリペアドステートメントを使用していますので、全体的には大丈夫です – Philipp
コメントをいただきありがとうございます。しかし、私は"チュートリアル "のようなものを探しています。単一のクエリは、ユーザー名やパスワードを確認する? (しかし、必要ならば複数の問い合わせを行うことができます) – virtualAnon
1つのクエリだけを使うこともできます。確認したいフィールドごとに 'where'節で' OR'を使ってください。 'username =?またはメール?またはx = y' – Philipp