我正在尝试使用Chtml :: prifier来链接内容,但链接尚未链接。是否还需要其他配置设置。
public function actionTime() {
$p = new CHtmlPurifier();
$p->options = array('URI.AllowedSchemes'=>array(
'http' => true,
'https' => true,
));
echo $p->purify("http://testsite.com");
$this->beginWidget('CHtmlPurifier');
echo "all http://anothersite.com";
$this->endWidget();
}
在这两种情况下,我都会将文本视为输出 yii版本1.1.14
答案 0 :(得分:1)
尝试这样做:
echo "Try to input some html tags and see what tag does it filter : ";
echo CHtml::beginForm();
echo CHtml::textArea('user_input');
echo "<br/>";
echo CHtml::submitButton();
echo CHtml::endForm();
echo "<br/><br/>The result: <br/>";
echo $user_input;
echo "<br/><br/>The result in html: <br/>";
echo CHtml::encode($user_input);
XssController.php:
public function actionHtmlPurifier(){
$user_input = null;
if (isset($_POST['user_input'])){
$user_input = $_POST['user_input'];
}
$parser=new CHtmlPurifier(); //create instance of CHtmlPurifier
$user_input=$parser->purify($user_input); //we purify the $user_input
$this->render("htmlpurifier", array('user_input'=>$user_input));
}
我建议你使用这个扩展程序,我之前测试过它。
答案 1 :(得分:0)
对不起我误解了html净化器的功能。我想要的是能够将example.com转换为“a”标签并且思想净化器将会这样做的东西。我将使用正则表达式将其转换为“a”标签,然后使用净化器显示它。