HTML コード
<div id="fourmstyle" class="fourm">
<form action="scripts/mail.php" method="post">
<label for="name">Your Name <required>*</required>
</label>
<input type="text" name="Name" id="Name" placeholder="Joe Bloggs">
<label for="email">Your Email <required>*</required>
</label>
<input type="text" name="Email" id="Email" placeholder="Joebloggs@example.com">
<label for="telephone">Telephone
</label>
<input type="text" name="Telephone" id="Telephone">
<label for="type">Type
</label>
<select name="Type">
<option value="Booking" selected>Booking</option>
<option value="B&B">B&B</option>
<option value="Question">Question</option>
<option value="General">General</option>
<option value="Website Feedback">Website Feedback</option>
</select></p>
<label for="messsage">Message <required>*</required>
</label>
<textarea name="Message" id="Message" rows="5" cols="25">
</textarea></p>
<label for="btn"> </label>
<button type="submit" class="button">Submit
</button>
<br> <requireddescription> *(indicates that the information is required)
</requireddescription>
</form>
PHPコード
<?php
if(isset($_POST))
{
$name = (isset($_POST['Name'])) ? strip_tags($_POST['Name']) : NULL; //if name is set, strip html tags, and return it, otherwise set the string as NULL.
$email = (isset($_POST['Email'])) ? strip_tags($_POST['Email']) : NULL; //same as above.
$telephone = (isset($_POST['Telephone'])) ? preg_replace('~[^0-9\-]~','',$_POST['Telephone']) : NULL; //if telephone is set, remove any characters that are not a number, or a dash, othewise set as NULL.
$type = (isset($_POST['Type'])) ? strip_tags($_POST['Type']) : NULL; //strip tags.
$message = (isset($_POST['Message'])) ? strip_tags($_POST['Message']) : NULL; //strip tags.
if(empty($name) || empty($email) || empty($message))
{
//name, email, and message are required fields, if they are empty, tell the user to go back and fill them in.
echo '<script type="text/javascript"> alert ("Please go back and fill in all required lines"); </script>';
}
else
{
//if the fields are NOT empty, proceed with the mailing.
$formcontent=" From: $name \n Type: $type \n\n Message: $message \n\n Telephone: $telephone";
$recipient = "joebloggs@example.com";
$subject = "Website Contact Form: $type";
$mailheader = "From: $email \r\n";
if(mail($recipient, $subject, $formcontent, $mailheader))
{
//if mail is sent to the SMTP server successfully, echo 'thank you'.
echo '<script type="text/javascript"> alert ("Thankyou '.$name.' we have submitted your message and we will get back to you as soon as possible, if you need to speak to us in the mean time please call 01983 872244 "); </script>';
}
else
{
//otherwise, tell the user it did not go through.
echo '<script type="text/javascript"> alert ("I am sorry but there has been an error submitting your request please try again or call us on 01983 872244"); </script>';
}
}
}
?>
わかりましたので、上記のコードは非常にうまく機能し、JS ポップアップ アラートが表示されます。ただし、JSアラートをOKすると、元のHTMLページではなく、mail.phpスクリプトに戻ります。これをどのように修正しますか?