提交表单时显示警报


display alert when form is submitted

我需要显示警报,说收到了你的消息,但这不起作用,所以请告诉我怎么做。是否有编码错误或我无法处理。如果有人帮我,我会很高兴。谢谢

 <h4>Send Your Feedback Here.<p>
      <form name ="register" action="contact.php" method="post"    enctype="multipart/form-data">
          Name<br>
          <input type="text" name="name" size="30">
        </p>
        <p>
        Email<br>
        <input type="text" name="email" size="30"></p><p>
         Message<br>
        <textarea name="message" rows="5" cols="40"></textarea>
        <p>
        </p>          
        <p>
        Security Check<br>
            Sum of <?php $a = rand(0,9);
                        $b = rand(0,9); 
                        echo $a . "+" . $b ; 
                        $result = $a + $b ;
                        ?>  =       
            <input type="text" name="ver"  /><input type="hidden" name="rval" value="<?php echo $result; ?>" />
          <button type="button" onClick="validate()">Send</button>
        </p>
      </form>

<script type="text/javascript">
        function validate()
    {
        var x = document.register.ver.value;
        var y = document.register.rval.value;
        var nameCheck = document.register.name.value, 
        emailCheck = document.register.email.value, 
        msgCheck = document.register.message.value;
    var msg ="";
    if(x!=y)
    {
    msg+= "Sorry!! Captcha Mismached."+"'n";
    }
    if(nameCheck=="")
    {
        msg+= "Dont you have a name????"+"'n";
    }
    if(emailCheck=="")
    {
        msg+= "Enter email... how am I supposed to contact you"+"'n";
    }
    if(msgCheck="")
    {
        msg+= "Dont you have any messages for me??"+"'n";
    }   
    if(msg!="")
    {
    alert(msg);
    }
    else
    {
            <?php
//Get message data.
$name = $_POST['name'];
$message = $_POST['message'];
$email=$_POST['email'];
$ver = $_POST['ver'];  
$rval = $_POST['rval'];
if($ver==$rval)
{
//Email it.
mail(
  'example@example.com',  //Where to send
"Contact form - $name", //Email subject
  $message,               //Message body
  $email                    //email address  
);
echo "<script type='"text/javascript'">alert('Thank you form is submitted');</script>";
    }
else
{
     echo "<script type='"text/javascript'">alert('Wrong captcha');</script>";
}
?>
    }
}

您不能像那样混合使用JavaScript和PHP。在将页面提供给用户之前,将在serve上解析PHP。将其包含在JavaScriptelse块中不会有任何效果,因为代码将在生成页面时运行。

您应该研究AJAX的使用。

<script type="text/javascript">
function thevalidate()
    {
        var x = document.register.ver.value;
        var y = document.register.rval.value;
        var nameCheck = document.register.name.value, 
        emailCheck = document.register.email.value, 
        msgCheck = document.register.message.value;
        var msg ="";
        if(x!=y) {
            msg+= "Sorry!! Captcha Mismached."+"'n";
        }
        if(nameCheck=="") {
            msg+= "Dont you have a name????"+"'n";
        }
        if(emailCheck=="") {
            msg+= "Enter email... how am I supposed to contact you"+"'n";
        }
        if(msgCheck="") {
            msg+= "Dont you have any messages for me??"+"'n";
        }   
        if(msg!="") {
            alert(msg);
        } else {

            <?php
            //You need  to process data here..
            ?>

        }
}
</script>
 <h4>Send Your Feedback Here.<p>
      <form name ="register" action="php/process.php" method="post"    enctype="multipart/form-data">
          Name<br>
          <input type="text" name="name" size="30">
        </p>
        <p>
        Email<br>
        <input type="text" name="email" size="30"></p><p>
         Message<br>
        <textarea name="message" rows="5" cols="40"></textarea>
        <p>
        </p>          
        <p>
        Security Check<br>
            Sum of <?php $a = rand(0,9);
                        $b = rand(0,9); 
                        echo $a . "+" . $b ; 
                        $result = $a + $b ;
                        ?>  =       
            <input type="text" name="ver"  /><input type="hidden" name="rval" value="<?php echo $result; ?>" />
          <button type="button" onClick="thevalidate()">Send</button>
        </p>
      </form>