改进了格式

时间:2015-05-25 07:30:20

标签: javascript php jquery html css

我有一个HTML表单,它是更大页面中的div:

<form action="send_form_email.php" method="post">
    <h4>E-mail</h4>
    <div class="border-stripes">
        <input type="email" class="textfield" name="email" placeholder="Your e-mail address" />
    </div>
    <h4>Message</h4>
    <div class="border-stripes">
        <textarea class="textarea" name="message" rows="3" placeholder="Your message"></textarea>
    </div>
    <br />
    <br />
    <input id="submit" name="submit" type="submit" value="Submit">
</form>

我有这个PHP代码

if ($_POST['submit']) {
    if ($email == false) {
        // ***Insert <p>invalid email address</p> above <h4>email</h4>***
    } else if (strlen(trim($_REQUEST['message'])) == 0) {
        // ***Insert <p>Send a Message</p> above <h4>email</h4>***
    } else if (mail($to, $subject, $message, $email)) {
        // ***Insert <p>Successfully sent</p> above <h4>email</h4>***
    }
}

我的问题是我不知道如何根据extra paragraph添加if statement,然后我希望页面自动向下滚动到显示错误的表单。

例如,如果电子邮件地址无效,我希望将页面重定向到表格div并在“电子邮件”上方显示电子邮件地址无效

2 个答案:

答案 0 :(得分:0)

将您的消息放入每个if语句的变量中,如下所示:

if ($_POST['submit']) {
  if ($email == false) {
     $msg = "<p>invalid email address</p>";
  } else if (strlen(trim($_REQUEST['message'])) == 0) {
     $msg = "<p>Send a Message</p>";
  } else if (mail($to, $subject, $message, $email)) {
     $msg = "<p>Successfully sent</p>";
  }else{
     $msg ="";
 }
}else{
   $msg = "";
}

然后在电子邮件字段上方回复您的消息:

<form action="send_form_email.php" method="post">
<?php echo $msg; ?>
<h4>E-mail</h4>
<div class="border-stripes">
    <input type="email" class="textfield" name="email" placeholder="Your e-mail address" />
</div>
<h4>Message</h4>
<div class="border-stripes">
    <textarea class="textarea" name="message" rows="3" placeholder="Your message"></textarea>
</div>
<br />
<br />
<input id="submit" name="submit" type="submit" value="Submit">

答案 1 :(得分:0)

我从您在此处陈述的问题中了解到 - 如果邮件成功提交,您希望显示错误或成功消息。

为此,您可以将代码写在同一个文件send_form_email.php中,如下所示。

<?php
if (isset($_POST)) {
    if ($_POST['email'] == false) {
        $msg = "<p>invalid email address</p> above <h4>email</h4>";
    } else if (strlen(trim($_POST['message'])) == 0) {
        $msg = "Insert <p>Send a Message</p> above <h4>email</h4>";
    } else if (mail($to, $subject, $message, $email)) {
        $msg = "Insert <p>Successfully sent</p> above <h4>email</h4>";
    }
}
?>

<html>
  <head>
    <title> My First Form </title>
  </head>
  <body>
    <form action="send_form_email.php" method="post">
      <h4>E-mail</h4>
      <div class="border-stripes">
        <input type="email" class="textfield" name="email" placeholder="Your e-mail address" />
      </div>
      <h4>Message</h4>
      <div class="border-stripes">
        <textarea class="textarea" name="message" rows="3" placeholder="Your message"></textarea>
      </div>
      <br />
      <br />
      <input id="submit" name="submit" type="submit" value="Submit">
    </form>

    <div class="msg-box">
      <?php echo $msg ? $msg : ''; ?>
    </div>
  </body>
</html>