用户
 找回密码
 入住 CI 中国社区
搜索
查看: 4600|回复: 2
收起左侧

[已解决] 关于codeigniter 令牌验证csrf,希望官方演示实例代码?

[复制链接]
发表于 2011-7-30 15:29:47 | 显示全部楼层 |阅读模式
本帖最后由 kuailewang 于 2011-7-30 15:45 编辑

codeigniter 令牌验证csrf:

首先感谢大家的帮助,希望能给出实实在在的可以让人演示操作的代码,最好有详细的注释,因为对于一个新手注释和简单明了的代码是很重要的!

发表于 2011-7-31 16:48:05 | 显示全部楼层
实实在在的可以让人演示操作的代码是神马样的代码?

重复一次我说了无数次的话:PHP是开源的,CI是开源的。CI不懂的东西一看手册,二看其底层代码。PHP也一样,一看PHP Manual,二看其底层C代码。

好了,开始了,live show!

第一步,打开application/config.php,找到下面的几行:

PHP复制代码
 
$config['csrf_protection'] = TRUE;
$config['csrf_token_name'] = 'form_token';
$config['csrf_cookie_name'] = 'csrf_token';
$config['csrf_expire'] = 7200;
 
复制代码


第二步,将form_helper设置自动加载。
第三步,在试图中需要的表单处,使用form_open生成开启标签:

PHP复制代码
 
<?php echo form_open('post', array('name' => 'post_form', 'id' => 'post_form', 'autocomplete' => 'off');?>
 
复制代码


That's all!

EDIT: 需要特别注意,如果表单中包含flash控件(比如上传控件),需要对上述csrf做特殊处理;做法和flash上传处理session的方法类似。

评分

参与人数 1威望 +5 收起 理由
kuailewang + 5 很给力!

查看全部评分

 楼主| 发表于 2011-8-1 08:58:43 | 显示全部楼层
saturn 发表于 2011-7-31 16:48
实实在在的可以让人演示操作的代码是神马样的代码?

重复一次我说了无数次的话:PHP是开源的,CI是开源的 ...

saturn谢谢,谢谢!我以后多研究手册!

本版积分规则