Heim  >  Artikel  >  Backend-Entwicklung  >  Yii verwendet Sitzungen im Middle- und Backend, um wiederholte Übermittlungen und Überschwemmungen zu verhindern

Yii verwendet Sitzungen im Middle- und Backend, um wiederholte Übermittlungen und Überschwemmungen zu verhindern

伊谢尔伦
伊谢尔伦Original
2016-11-26 13:59:551068Durchsuche

1. Aus der Front-End-Perspektive: Maske hinzufügen

2. Aus der Back-End-Perspektive: Sitzung

$session = Yii::app()->session;
$user_id = Yii::app()->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(&#39;status&#39;=>1, &#39;msg&#39;=>&#39;不能在10秒钟内连续发送两次。&#39;));
    }else{
        unset($session[$sessionKey]);//超过限制时间,释放session";
    }
}
//第一次点击确认按钮时执行
if(!isset($session[$sessionKey])){
    $session[$sessionKey] = time();
}


verwenden
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn