-1

このコードで動作する PHP 用の文字列バリデーターを探しています。

if(!isValidName($name))
{
    $errors[] = lang("MAIL_NAME_ERROR");
}   

それは私が今設定したコードです。この2つのコードを試しましたが、ここで出力された値を返しません。私が試したコードは次のとおりです。

//Checks if an name is valid
function isValidName($name)
{
   if (filter_var($name, MAIL_NAME_ERROR)) {
      return true;
   }
   else {
      return false;
   }
}

それは私が試したもので、エラーメッセージを入力しましたが、値を返さないか、値をリセットしませんでした。

function isValidName($name)
{
   if (strcspn($name, '0123456789') != strlen($name))
      return FALSE;
   $name = str_replace(" ", "", $name);
   $result = explode("_", $name);
   if(count($result) == 2)
      return TRUE;
   else
      return FALSE;
}

基本的に私がやろうとしているのは、メールフォームに自分の名前を入力しないと、次のようなエラーメッセージが表示されることです。

フルネームを入力してください

そして、私がそうするとき、メッセージは消えるはずです。フィールドが空の場合は問題ありませんが、他の値が欠落している場合は、次のようにすべてのメッセージが返されます。

Please enter your full name
Please enter your telephone number
Please enter your password
Failed security question

私の文字列で動作するか、別の文字列を設定する文字列バリデーターを知っている人はいますか?

4

1 に答える 1

0

入力が設定されているかどうかを確認する必要がある場合は、次のようにします。

if(isset($_POST["name"]) && !empty($_POST["name")){
// Name was entered
}
else{
// Name was not entered
}

PeeHaa が提案したように、filter_var($email_a, FILTER_VALIDATE_EMAIL)さまざまなもの (この場合は電子メール) を検証できる組み込みの PHP 関数である which を使用できます。詳細については、ドキュメントを確認してください

もう少し進んで、次の方法を使用することもできます: MX レコードを使用して電子メール アドレスを検証する

于 2013-07-11T18:03:08.753 に答える