按下刷新按钮时,数据将插入db中,

时间:2014-08-02 10:40:32

标签: php forms

我有一个表单验证代码,当按下刷新按钮时,数据将被插入到db中。我怎么阻止它? 我参考了这段代码http://www.w3schools.com/php/php_form_url_email.asp 然后我创建了数据库连接,代码如下所示。

单击刷新按钮时,数据将插入数据库中。如何在单击刷新按钮时停止插入值?

1 个答案:

答案 0 :(得分:-1)

您可以使用

header('Location myfile.php');

的结尾

if ($_SERVER["REQUEST_METHOD"] == "POST") { .... }

请求完成后,数据库, 该页面将转到myfile.php。

这不带有POST数据,如果用户点击刷新,则不会发送数据。 如果您想以某种方式留下“成功”消息,您可以使用:

header('Location myfile.php?sent=success');

然后你可以听$_GET['sent']确认它是成功的。

编辑:

方法2会话:

首先设置sessionvariable

  if ($_SERVER["REQUEST_METHOD"] == "POST") {
    /* your code goes here */

    session_start();
    $_SESSION['success'] = true;
    header('Location myfile.php');
  }

获取变量并重置

  session_start();
  $was_success = !empty($_SESSION['success']);
  unset($_SESSION['success']);