CI 如何防止表单重复提交
本帖最后由 梦想杀死 于 2016-6-28 16:58 编辑这这样一个方法
function index () {
....
做了一系列操作
DB更新
......
$this->load->view('login',$data);
}
为了防止表单的重复提交,打算用redirect,进行重定向,但是还有许多的数据要传,不知道怎么办了,不打算用URL的形式
大家有没有什么好的意见?
框架:CI-2.0.2
$_SESSION['success'] ='发表成功!';
// $this->session->set_userdata('success','发表成功!');
redirect(template.'/article/add_art');
}else{
$this->add_art();
} 梦想杀死 发表于 2016-6-20 09:49
F5刷新呢?
1. 加入驗證碼機制
2. 加入 CSRF 且 $config['csrf_regenerate'] = TRUE; // 表單送出就更改 token 值 (這樣就無法重整或回上一頁)
但無論哪個都是擾民
也許他真的想要新增第二次一樣的東西 (表沒有唯一值的情況)
若表有唯一值就簡單了,送往新增的控制器,檢查是否有該數據
如有,就返回,並提示「已有數據」等訊息
wkang956 发表于 2016-6-20 15:01
$_SESSION['success'] ='发表成功!';
// $this->session->set_userdata('success','发表成功!');
red ...
重定向,我有许多数据传到页面怎么办? 前端用 js 使按鈕按一次便失效 Closer 发表于 2016-6-20 09:46
前端用 js 使按鈕按一次便失效
F5刷新呢? 不要沉了:time::time::time: Closer 发表于 2016-6-20 09:55
1. 加入驗證碼機制
2. 加入 CSRF 且 $config['csrf_regenerate'] = TRUE; // 表單送出就更改 token 值 ( ...
目前已经开启CSRF Token但是对于CI2来说,重复提交表单,不改变Token值,CI3有应该是
像你说的加 提示「已有數據」等訊息 这样的操作 对于目前来说,改动量太大了... 怎么感觉CI这个框架还有些有待改善的地方,用起来不方便,没用过其他的框架,也不知道其他的框架是否也会有同样的问题 梦想杀死 发表于 2016-6-20 10:13
怎么感觉CI这个框架还有些有待改善的地方,用起来不方便,没用过其他的框架,也不知道其他的框架是否也会有 ...
CI 在 2.x 的時候停滯很久
因為原開發團隊沒有再做改版
後來才將主開發權轉到某教育單位 (轉交之前已發佈 3.x ) Closer 发表于 2016-6-20 10:28
CI 在 2.x 的時候停滯很久
因為原開發團隊沒有再做改版
後來才將主開發權轉到某教育單位 (轉交之前已發佈...
非常感谢!!! 可以用Ajax技术啊要么提交完后跳转