我不想更改配置文件中的默認設置,默認情況下它是FALSE。但我想唯一的聯繫形式使用CSRF(其他形式的不需要):Codeigniter:csrf不工作是這種情況
這是我的控制器:
class Welcome extends CI_Controller {
public function __construct() {
parent::__construct();
$this->load->helper('form_helper');
$this->load->library('session');
}
public function index()
{
$this->config->set_item('csrf_protection', TRUE);
$this->load->view('welcome_message');
}
}
結束我的觀點:
<div id="container">
<?php echo form_open(NULL); ?>
</form>
</div>
但CSRF不工作,它總是空值:
你有沒有設置在您的配置文件中的加密密鑰? – AdrienXL 2015-03-02 17:53:11
這似乎是框架中的一個錯誤。無論如何,在所有表單上都應該啓用CSRF。 – Philip 2015-03-02 18:52:51
我在你的配置文件中設置了加密密鑰'$ config ['encryption_key'] ='tkppinpin';' – 2015-03-03 02:30:38