一、在控制器加载到模版前
public function index(){ $_SESSION['token'] = md5(microtime(true)); $this->display(); }
二、在FORM表单中添加隐藏域
<tr>
<td>
<input type="hidden" name="token" value="{$Think.session.token}">
</td>
<td><input type="submit" class="submit btn" value="立即注册"></td>
</tr>
三、有FORM的ACTION处理页面中进行验证
$token = I('post.token'); if ($token !== session('token')) { $this->error('对不起,令牌验证失败!'); }else{ session('token',null); }
以下为JS方式来阻止表单提交。
<form id="ticketForm" enctype="multipart/form-data" action="{:U('Index/Index/addTicket')}" method="post" onsubmit ="getElementById('submitInput').disabled=true;return true;">