读书人

Yii中应用session防止重复提交

发布时间: 2012-09-20 09:36:50 作者: rapoo

Yii中使用session防止重复提交

表单提交时,由于网速等原因,会出现重复提交的现象。

一、从前端的角度:增加遮罩


二、从后端的角度:使用session。

//可复用代码$session = Yii::app()->session;$user_id = $this->user->id;$sessionKey = $user_id.'_is_sending';if(isset($session[$sessionKey])){$first_submit_time = $session[$sessionKey];$current_time      = time();if($current_time - $first_submit_time < 10){$session[$sessionKey] = $current_time;$this->response(array('status'=>1, 'msg'=>'不能在10秒钟内连续发送两次。'));}else{unset($session[$sessionKey]);//超过限制时间,释放session";}}//第一次点击确认按钮时执行if(!isset($session[$sessionKey])){$session[$sessionKey] = time();}

读书人网 >编程

热点推荐