-1
引数のどちらかがtrueの場合はメッセージを表示するためにPhpで論理演算子を使用しようとしていますが、ここで間違った出力が得られるのは自分のコードです。どんな提案も大歓迎です。前もって感謝します。OrをPHPで使用する
<?php
$username = test_input(mysqli_real_escape_string($conn,$_POST['username']));
$emailregex = preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/", $username); //ValidatingEmail
$usernameregex = preg_match("/^[a-zA-Z]+$/",$username); //checking if name contains only letters and white spaces;
if (!$emailregex || !$usernameregex) { //if it didn't match either
echo "InvalidUserName";
exit();
} else if ($emailregex || $usernameregex) { //in case either matched
$myusername =$username;
echo("Hello".$myusername);
}?>
問題は、私は有効な名前を入力するか、または電子メールが"invalidusername"
を取得していても、である私のロジックが間違ってますか?
第一の条件は、 – JNF
"ではないかB" &&使用する必要があります* "のいずれかと一致しませんでした" *ではありません。それは「少なくとも1人は一致していない」。 – deceze
メールやユーザー名でログインできるようにしてください。 –