刷新页面会重新加载POST操作

时间:2013-12-03 18:24:12

标签: php mysql forms post

我有一个模态弹出框,我在其中放入了允许为特定帐户创建新联系人的表单。模态工作正常,表单效果很好,但是一旦我点击按钮,它就会回到创建新联系人之前在联系人列表上显示的内容。我显然已经填写了F5来刷新页面,然后出现问题框,询问我是否确定要重新加载表单。单击是,它向我显示已添加的联系人,但在后台它添加了另一个具有相同详细信息的联系人。

如何避免?我是否必须清除POST或将页面功能重新加载到按钮或我用来创建联系人的功能?

这是我正在运行的代码的一部分:

Class Client {

    var $_newcontact;
    ...

    public function AddContact() {
        switch($this->_newcontact) {
            case "BackEnd":
                $this->GetData_NewContact();
                if($this->ValidateNewContact()==true) {
                    if($this->AddNewContact($_GET['ClientID'])==true) {
                        echo "New contact has been added";
                    } else {
                        echo "Contact hasn't been created";
                    }
                }
        }
    }

}

在new_contact页面上,我使用代码:

$Client= new Client();
if($_POST['NewContact']) {
    $Client->_newcontact = "BackEnd";
    $Client->AddContact();
}

在Modal中还有一个表单(我实际上使用的是bootstrap模式)。我想不需要代码。

然后是按钮代码:

  <button type="submit" value="submit" name="NewContact" id="NewContact" class="btn btn-primary">Add</button>

我想确保一旦单击“添加”按钮,并将数据的完整验证设置为true等,它将重新加载包含联系人列表的页面并显示已添加的联系人(我有一个从数据库中获取它们的循环。

我如何做到这一点?

1 个答案:

答案 0 :(得分:0)

“但是一旦我点击按钮”。如果这是一个jquery模态,我认为这是模态中的“完成”按钮。

在你可以做的模态的完整功能中:

            "Complete": function() 
            {
                  window.location.replace('index.php');
            }

将index.php替换为您想要的任何页面。