2012-08-11 86 views
1

我有一个cms,集成了CKeditor。 Ckeditor取代<?php with <!--?php。我想在ckeditor "<div><?php $prod=products($cat_id); ?>....</div>"中编写php代码并将其存储到MySQL数据库..并且在查看器的页面上,我想输出echo {$page['code']}其中['code']是我上面写的php字符串。我使用str_replace('<!--?php', '<?php', $page['code']);,但它将其输出为隐藏文本。ckeditor替换<?php

回答

3

<?php ?>中的原始尖括号会混淆HTML,以为它是元素标记。包裹这里面htmlentities()像这样:

echo htmlentities($page['code']); 
+0

都不行,我也写在希腊,所以我有一个问题,ヶ辆()..它所有的HTML代码作为文本输出到 – 2012-08-11 09:16:15

+0

的页面在这种情况下使用'htmlspecialchars()'而不是'htmlentities()'。 'htmlspecialchars()'只编码: '&(&符号)' '“(双引号)' ''(单引号)' '<>(小于和大于符号)'并保持原样 – raidenace 2012-08-11 10:48:09

+0

如果因为所有'<' and '>'符号的编码而无法使用它,请执行'str_replace('<! - ?php','< php',$ page ['code']);'和'str_replace ('?>','?>',$ page ['code']);'这将只编码''符号 – raidenace 2012-08-11 10:56:51