tinymce格式化不能正常工作

时间:2013-01-24 07:11:23

标签: php mysql content-management-system tinymce

使用tinymce作为内容,它可以在本地服务器上正常工作但在远程服务器上中断格式化。

保存内容:

mysql_real_escape_string( htmlentities($slide_name,ENT_QUOTES,'UTF-8'))
检索时

html_entity_decode($slide_name, ENT_QUOTES,'UTF-8')

在本地服务器上正确显示内容:

<p><strong style="text-decoration: underline;">Contact:</strong> 0000-<span style="color: #ff0000;">245</span></p>
遥控器上的

(第一次更新后):

<p><span style="\"><strong style="\">Contact:</strong></span> 0000-<span style="\">245</span></p>

对两个数据库(远程/本地)使用utf8_general_ci排序规则

1 个答案:

答案 0 :(得分:0)

经过大量的搜索和 Toby Allen 暗示,我找到了解决方案 这是一个问题:
magic_quotes_gpc在远程服务器上为ON,而magic_quotes_gpc在本地服务器上为OFF

由于我们无法控制远程服务器达到php配置级别所以我们需要关闭magic_quotes_gpc运行时间。

php.net

找到代码段
<?php
if (get_magic_quotes_gpc()) {
    $process = array(&$_GET, &$_POST, &$_COOKIE, &$_REQUEST);
    while (list($key, $val) = each($process)) {
        foreach ($val as $k => $v) {
            unset($process[$key][$k]);
            if (is_array($v)) {
                $process[$key][stripslashes($k)] = $v;
                $process[] = &$process[$key][stripslashes($k)];
            } else {
                $process[$key][stripslashes($k)] = stripslashes($v);
            }
        }
    }
    unset($process);
}
?>

如果可能的话,使用php.ini关闭magic_quotes_gpc,否则我们可以使用上面的函数来关闭magic_quotes_gpc运行时。

我正在为未来的搜索者发布这个答案。