避免在提交时打开mail.php

时间:2014-02-24 08:18:33

标签: php html

单击提交按钮时,如何避免浏览器打开my1.php文件?

   <form action="mail/my1.php" method="POST">
            <label for="name">Name</label>
            <input type="text" name="name"><br /><br />
            <input type="submit" name="submit" value="Submit">
           </form>

4 个答案:

答案 0 :(得分:0)

如果您不想使用iframe,请使用header功能重定向用户...他将被重定向到my1.php然后被抛到另一个页面,他甚至不会识别它。如果你不在标题后使用exit;,脚本仍将被执行。

header("location: anotherpage.php");

iFrame解决方案更清洁,更好。我只是想为你提供另一种可能性。特别是因为可以修改html标记,这会使您的网站容易受到攻击。

答案 1 :(得分:0)

您有很多选择,这里有个人喜好订购:

  1. mail/my1.php
  2. 中添加header()的PHP重定向
  3. 使用AJAX, jQuery使其变得相当方便
  4. 使用框架或iframe *,而不是我最喜欢的
  5. *与Apple没什么关系。

答案 2 :(得分:-1)

如果您不想继续提交页面,可以在iframe中提交您的网页

   <form action="mail/my1.php" method="POST" target="my_iframe">
                <label for="name">Name</label>
                <input type="text" name="name"><br /><br />
                <input type="submit" name="submit" value="Submit">
      </form>

    <iframe id="myiframe" name="myiframe"></iframe>

以上内容将在iframe中提交您的表单。

更新2:

如果你不想提交页面并做其他事情,比如JS / Jquery提交,你只需在标签中添加onsubmit="return false"

<form action="mail/my1.php" method="POST" onsubmit="return false;">
    <label for="name">Name</label>
    <input type="text" name="name"><br /><br />
    <input type="submit" name="submit" value="Submit" id="submit_form">
 </form>

更新3:

如果要在单击提交按钮后禁用按钮,请使用此js功能

document.getElementsById("submit_form").onclick = function () {
    this.disabled = true;
};

答案 3 :(得分:-1)

从表单标记中删除操作。数据不会被重定向。如果您仍想在post后使用$ _REQUEST或$ _POST获取值,以获取提交值。

你可以这样做:

if($_POST['submit'])
{
   $a=$_REQUEST['name'];
}