澄清双提交的内容:当用户点击两次提交按钮时,服务器将处理两次相同的POST数据.为了避免这种情况(除了在单次提交后禁用按钮),大多数Web框架(如Struts)都提供了令牌机制.我在GWT中寻找相当于此的东西.
我正在开发一个ASP.NET 4.0 Web Forms项目,经过大约5年的休息,我对提交行为感到困惑.
在按钮的单击事件中,我睡眠线程,以便我可以多次单击提交按钮.
据我所知,ASP.NET阻止了多次调用click事件.这是真的?
顺便说一句:我已经关闭了这个测试的javascript.
我正试图在我的脚本中纠正双重提交的问题.当我按提交时它只更新一次mysql(这就是我想要的).但是,当我点击刷新它再次更新mysql.一旦点击刷新按钮,它似乎忽略了if语句.我该怎么做才能阻止这一点
这是我的代码
if (isset($_POST['submitButton'])) {
//do something
}
<form action = "table.php" method="post">
<label for="submitButton"></label>
<input type="submit" name="submitButton" id="submitButton"
value="Submit Form"/>
</form>
Run Code Online (Sandbox Code Playgroud) 我只是在pastebin http://pastebin.com/KBtqrAkZ的 codeigniter控制器部分插入数据
public function add_product()
{
$this->lang->load('log_in', 'english');
log_in_check($this->lang->line('log_in_authentication_error'), 'admin/log_in');
$this->lang->load('common', 'english');
$data['title'] = $this->lang->line('admin_index_title');
$this->load->view('admin_template/header', $data);
$this->load->view('admin_template/left_menu');
$data['error_msg'] = '';
if ($this->form_validation->run('add_product') === TRUE)
{
$this->admin_model->add_product($this->input->post());
$this->session->set_flashdata('status_msg', $this->lang->line('add_product_success'));
redirect(uri_string(), 'refresh');
exit ;
$data['error_msg'] = $this->lang->line('add_product_invalid_data');
}
$this->load->view('admin/add_product');
//$this->load->view('admin_template/notification');
$this->load->view('admin_template/footer');
}
Run Code Online (Sandbox Code Playgroud)
比我的模型部分简单添加在pastebin http://pastebin.com/WiLHV2sr
public function add_product($data = array())
{
$this->db->insert('ishop_product', $data);
return $this->db->insert_id();
}
Run Code Online (Sandbox Code Playgroud)
如果我按ctrl + F5或F5而不是数据插入,我的问题是重定向后.我是codeigniter的新手.请帮帮我.任何帮助将不胜感激.
我正在构建一个包含大量表单的GWT应用程序.我正在使用gwt-platform及其调度模块.
我想到的下一步是防止双重提交服务器端.问题是我不知道该怎么做......
我想到了这样的事情:
将令牌存储在HTTPSession中是否安全?或者我应该在服务器上创建一个从SESSION_ID映射到生成令牌的HashMap?
或者也许已经在GWT或gwt-platform或其他地方实现了这一点?
谢谢
我有一个弹出窗口,其中有两个onclick方法,如"Submit"和"Discard".
当我单击提交两次时,它会插入两条记录,这意味着重复记录.
我怎么能避免这个?
java ajax struts2 double-submit-prevention double-submit-problem