なぜこれが機能しないのですか
$sth = $pdo->prepare("SELECT * FROM tempusers WHERE tempusers.username = :username AND tempuser.email = :email AND password = :password");
$sth->bindParam(':username', $register_data['username'], PDO::PARAM_STR);
$sth->bindParam(':email', $register_data['email'], PDO::PARAM_STR);
$sth->bindParam(':password', $register_data['password'], PDO::PARAM_STR);
$sth->execute();
if($sth->fetchColumn() > 0) {
echo 'yes';
}else{
echo 'no';
}
そして、このコードを実行すると動作します
$sth = $pdo->prepare("SELECT * FROM tempusers WHERE tempusers.username = :username");
$sth->bindParam(':username', $register_data['username'], PDO::PARAM_STR);
$sth->execute();
if($sth->fetchColumn() > 0) {
echo 'yes';
}else{
echo 'no';
}
bindParam 値よりも多く使用しようとすると、コードがクラッシュします。チェックする値を 1 つ以上持つことができないのはなぜですか?