このコードは、入力がメールフォームに入力されなかったときにエラーメッセージを追加し、最終的にコードを入力したときにエラーメッセージを削除することを想定しています。私は次のコードで動作する2つを持っています:
//Generate a unique code
function getUniqueCode($length = "")
{
$code = md5(uniqid(rand(), true));
if ($length != "") return substr($code, 0, $length);
else return $code;
}
//Generate an activation key
function generateActivationToken($gen = null)
{
do
{
$gen = md5(uniqid(mt_rand(), false));
}
while(validateActivationToken($gen));
return $gen;
}
そしてこのコード:
//Checks if an email is valid
function isValidEmail($email)
{
if (filter_var($email, FILTER_VALIDATE_EMAIL)) {
return true;
}
else {
return false;
}
}
メールフォームに入力がない場合にエラーメッセージを表示する独自のコードを作成しましたが、メールフォームに何かを入力すると、エラーメッセージボックスからエラーメッセージが表示されません。コードは次のとおりです。
//Checks if a name is valid
function isValidName($name)
{
if (filter_var($name, MAIL_NAME_ERROR)) {
return true;
}
else {
return false;
}
}
要約すると、次のような入力がない場合、5 つすべてが機能します。
- フルネームを入力してください
- 有効なメールアドレスを入力してください
- 電話番号を入力してください
- パスワードを入力してください
- セキュリティの質問に失敗しました
しかし、次のようにメール アドレスとセキュリティ コードを入力すると、セキュリティとメールだけが機能します。
- フルネームを入力してください
- 電話番号を入力してください
- パスワードを入力してください
名前、電話番号、パスワードが正しく機能していません。コードを表示するだけで機能しますが、正しい情報を入力してもコードは削除されません。
3つすべてが1つずつ消えるようにコードを修正するにはどうすればよいですか?