Php感谢信息在同一页


Php Thank you Message in same page

我必须验证表单并发送电子邮件。。我从w3schools复制了这份表格,并附上了mailto函数。但我不知道如何在表格处理后显示"谢谢你提交"。请帮忙。。"谢谢"消息应显示在"提交"按钮下方的同一页面上。

这是我的密码。。

<!DOCTYPE HTML> 
<html>
    <head>
        <style>
            .error {color: #FF0000;}
        </style>
    </head>
    <body> 
    <?php
    // define variables and set to empty values
    $nameErr = $emailErr = $genderErr = $websiteErr = "";
    $name = $email = $gender = $comment = $website = "";
    if ($_SERVER["REQUEST_METHOD"] == "POST") {
       if (empty($_POST["name"])) {
         $nameErr = "Name is required";
       } else {
         $name = test_input($_POST["name"]);
         // check if name only contains letters and whitespace
         if (!preg_match("/^[a-zA-Z ]*$/",$name)) {
           $nameErr = "Only letters and white space allowed"; 
         }
       }
       if (empty($_POST["email"])) {
         $emailErr = "Email is required";
       } else {
         $email = test_input($_POST["email"]);
         // check if e-mail address is well-formed
         if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
           $emailErr = "Invalid email format"; 
         }
       }
       if (empty($_POST["website"])) {
         $website = "";
       } else {
         $website = test_input($_POST["website"]);
         // check if URL address syntax is valid (this regular expression also allows dashes in the URL)
         if (!preg_match("/'b(?:(?:https?|ftp):'/'/|www'.)[-a-z0-9+&@#'/%?=~_|!:,.;]*[-a-z0-9+&@#'/%=~_|]/i",$website)) {
           $websiteErr = "Invalid URL"; 
         }
       }
       if (empty($_POST["comment"])) {
         $comment = "";
       } else {
         $comment = test_input($_POST["comment"]);
       }
       if (empty($_POST["gender"])) {
         $genderErr = "Gender is required";
       } else {
         $gender = test_input($_POST["gender"]);
       }
    }
    function test_input($data) {
       $data = trim($data);
       $data = stripslashes($data);
       $data = htmlspecialchars($data);
       return $data;
    }

    ?>
    <h2>PHP Form Validation Example</h2>
    <p><span class="error">* required field.</span></p>
    <form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>"> 
       Name: <input type="text" name="name" value="<?php echo $name;?>">
       <span class="error">* <?php echo $nameErr;?></span>
       <br><br>
       E-mail: <input type="text" name="email" value="<?php echo $email;?>">
       <span class="error">* <?php echo $emailErr;?></span>
       <br><br>
       Website: <input type="text" name="website" value="<?php echo $website;?>">
       <span class="error"><?php echo $websiteErr;?></span>
       <br><br>
       Comment: <textarea name="comment" rows="5" cols="40"><?php echo $comment;?></textarea>
       <br><br>
       Gender:
       <input type="radio" name="gender" <?php if (isset($gender) && $gender=="female") echo "checked";?>  value="female">Female
       <input type="radio" name="gender" <?php if (isset($gender) && $gender=="male") echo "checked";?>  value="male">Male
       <span class="error">* <?php echo $genderErr;?></span>
       <br><br>
       <input type="submit" name="submit" value="Submit"> 
    </form>

    <?php
    $to = "dheeraj.narayan1712@gmail.com";
    $subject = "My subject";
    $name = "Name: $name";
    $email = "$email";
    $headers = "From: webmaster@example.com" . "'r'n" .
    "CC: somebodyelse@example.com";
    mail($to,$subject,$name,$headers);
    ?>
    </body>
</html>

这很简单;

if(isset($email)){
   echo 'Success! Thanks for submitting';
}

然后把它放在邮件功能之后?请注意,您可以将$email更改为所需的任何POST变量,还可以更改echo'ed内容。(如果你想把它放在表格里,记得用包起来

<?php ?>