【发布时间】:2017-09-13 09:37:54
【问题描述】:
我正在尝试在我的 php 字符串中找出 open() 和 close() 的脚本标记。请在下面找到我的代码
public function custom_xss_clean($str){
if(!preg_match('/(<\/?)(script|html)(>*)/i', $str)){
return true;
} else {
$this->form_validation->set_message('custom_xss_clean','The %s field invalid');
return false;
}
}
此代码在在线工具中运行良好,但在我的字符串代码中却不行
<script>alert(10)</script>
我尝试了这么多模式但没有运气。请帮助提前谢谢。
【问题讨论】:
-
1.使用正则表达式解析 html 通常不是一个好主意,并且 2. 您也可以在 html 属性中使用 javascript,所以这有点毫无意义/还不够。
-
感谢 Sahil 的快速回复,但我这样做是为了验证 codeigniter。我创建了一个回调 custom_xss_clean()。因为 CI 不再支持 XSS_CLEAN。
标签: php regex codeigniter validation server-side-validation