特定の方法で検証する必要がある HTML お問い合わせフォームがあります。
フィールドが入力されていない場合に JavaScript でユーザーに警告する代わりに、空のフィールドの下に「フィールドが必要です」という単語を表示することを好みます。
ここに私の連絡先フォームがありcontact.html
ます:
<form id = "myForm" action="contact.php" method="post">
<label for="name">Name:</label>
<input type="text" name="name" id="name" value="" tabindex="1" />
<label for="name">Email:</label>
<input type="text" name="email" id="email" value="" tabindex="1" />
<input type="submit" value="Submit" class="button" />
</form>
これが私のPHPフォームですcontact.php
(検証以外はすべて省略されています):
//Validation... I am building up an error message string to alert the user at the end (omitted)
$errormessage = '';
if(!isset($_POST['name']) || strlen($_POST['name']) < 1){
$errormessage .= 'You have not entered your Name\n';
}
if(!isset($_POST['email']) || strlen($_POST['email']) < 1){
$errormessage .= 'You have not entered your Email Address\n';
}
if($errormessage != ''){ ?>
<script language="javascript" type="text/javascript">
alert('<?php echo "$errormessage" ?>');
window.location = 'contact.html';
</script>
<?php }
else {
$mail_to = 'info@email.co.uk';
$subject = 'Message from a site visitor '.$field_name;
$body_message = 'From: '.$field_name."\n\n";
$body_message .= 'E-mail: '.$field_email."\n\n";
$headers = 'From: '.$field_email."\r\n";
$headers .= 'Reply-To: '.$field_email."\r\n";
$mail_status = mail($mail_to, $subject, $body_message, $headers);
}
ご覧のとおり、現在の検証では、PHP で文字列が作成され、最後にユーザーに警告されます (省略)。ただし、このメソッドを、HTML フィールドの下に「Field Required」という文字列を表示することで置き換えたいと考えています。空のまま。