PHP表单提交后的消息

时间:2011-03-31 14:04:21

标签: php forms post postback dreamweaver

我正在使用PHP脚本向数据库提交电子邮件,

用户提交后,我正在做一个小验证并提交。

一切工作正常,但我没有将用户回复到带有空白文本框的同一页面,而是想添加一个标签“已成功提交”。 我设法这样做,但问题是当我只是刷新页面 - 没有真正按下“提交”按钮,我仍然可以看到消息 - 提交成功... 这只是我代码的一小部分:

<form action="<?php echo $editFormAction;?>" method="post" name="form1" id="form1">
      <table align="center">
        <tr valign="baseline">
          <td nowrap align="right">Email:</td>
          <td><span id="sprytextfield1">
          <input type="text" name="Email" id="Email" value="" size="32">
          <input type="submit" value="Submit"><br/>
          <div id="confirm">
          <?php
            if(isset($_POST['Email']))
                echo "<font color='green' size='5'><b>Submited Successfuly!</b></font><br/>";
          ?>
          </div>
          <span class="textfieldRequiredMsg"><font size="+2"><b>Insert an Email Address</b></font></span>
          <span class="textfieldInvalidFormatMsg"><font size="+2"><b>Invalid Email Address!</b></font></span>
          </span>
          </td>
        </tr>
      </table>
      <input type="hidden" name="MM_insert" value="form1">
  </form>

3 个答案:

答案 0 :(得分:0)

尝试

if(!empty($_POST['Email'])) {
     //successful submit
}

empty将检查该值是否为空字符串。

答案 1 :(得分:0)

有两种方法可以做到。

  1. 使用AJAX发送表单。提交后不会重新加载页面。

  2. 使用会话存储此消息,然后使用Location:标题重新加载页面,然后显示消息并将其从会话中删除。

答案 2 :(得分:0)

您需要在消息显示后取消设置帖子变量

成功提交! &#34 ;; 未设置($ _ POST [&#39;电子邮件#39]; ?&GT;