+ -
当前位置:首页 → 问答吧 → 想问一下autoCheckToken的问题?

想问一下autoCheckToken的问题?

时间:2011-12-12

来源:互联网

管理员您好,我想使用这个功能来防止重复提交订单,但是不奏效呀,每次刷新提交都会成功!请问这是怎么回事?

作者: panxiaoming   发布时间: 2011-12-12

修改了/ThinkPHP/Lib/Think/Core/Model.class.php的函数autoCheckToken
  1.     // 自动表单令牌验证
  2.     public function autoCheckToken($data) {
  3.         $name   = C('TOKEN_NAME');
  4.         if(isset($_SESSION[$name])) {
  5.                         // 当前需要令牌验证
  6.                         if(empty($_SESSION[$name])) return false;
  7.                        
  8.             if(empty($data[$name]) || $_SESSION[$name] != $data[$name]) {
  9.                 // 非法提交
  10.                 return false;
  11.             }
  12.             // 验证完成置HASH为0
  13.             $_SESSION[$name] = 0;
  14.         }
  15.         return true;
  16.     }
复制代码

作者: panxiaoming   发布时间: 2011-12-12