discuz 启用html code 显示问题

如果想一直使用的话,source/function/function_discuzcode.php里面的

    $htmlon = $htmlon && $allowhtml ? 1 : 0; // 修改为 $htmlon = $htmlon && $allowhtml ? 1 : 1;

if(!$htmlon) {
        $message = dhtmlspecialchars($message);
    }

这样html的就可以使用了,但是所有人都能使用,这个后续再来研究,目前已经可以满足要求了。

 

当然也可以自己定义function_core.php里的

function dhtmlspecialchars($string) {
    if(is_array($string)) {
        foreach($string as $key => $val) {
            $string[$key] = dhtmlspecialchars($val);
        }
    } else {
        $string = str_replace(array('&', '"', '<', '>'), array('&amp;', '&quot;', '&lt;', '&gt;'), $string);
        if(strpos($string, '&amp;#') !== false) {
            $string = preg_replace('/&amp;((#(\d{3,5}|x[a-fA-F0-9]{4}));)/', '&\\1', $string);
        }
    }
    return $string;
}

这样可以自己控制哪些标签的替换。

 

 

posted @ 2013-01-14 18:58  awinlei  阅读(291)  评论(0编辑  收藏  举报