网站地图    收藏   

主页 > 后端 > php资料库 >

Yii,XSS安全模式内容_自学php网

来源:自学PHP网    时间:2014-12-04 22:12 作者: 阅读:

[导读] 我们要在一个行为里使用htmlpurifier类,用这种行为可以加强任何模型并表明各属性我们想让它们XSS安全。 我写了以下行为: class CSafeContentBehavior extends CActiveRecordBehavior{ public $attributes =a...

我们要在一个行为里使用htmlpurifier类,用这种行为可以加强任何模型并表明各属性我们想让它们XSS安全。

我写了以下行为:

class CSafeContentBehavior extends CActiveRecordBehavior
{
public $attributes =array();
protected $purifier;

function __construct(){
$this->purifier = new CHtmlPurifier;
}

public function beforeSave($event)
{
foreach($this->attributes as $attribute){
$this->getOwner()->{$attribute} = $this->purifier->purify($this->getOwner()->{$attribute});
}
}
}
把这个类放在你的应用程序目录,例如:application/behaviors/CSafeContentBehavior.php。现在你在模型的行为中这样去写:

class Post extends CActiveRecord
{

public function behaviors(){
return array(
'CSafeContentBehavor' => array(
'class' => 'application.behaviors.CSafeContentBehavior',
'attributes' => array('title', 'body'),
),
);
}
}
现在我们可以开始了。我们的post模型在每个保存操作中将净化标题和内容列。

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论