php - 如何将源代码插入我的数据库,然后在一个值中回显它
问题描述
我有一个 WYSIWYG 编辑器,在键入自己时可以正常工作,但是如果我从一个网站复制粘贴,源代码也会随之复制,我希望允许这样做,除非这会破坏我的代码。
在输入字段中,我回显数据,以便可以对其进行编辑并保存到我的数据库中。
像这样:
<input type="hidden" name="content" value="'.$getversion['content'].'">
就像我自己打字时说的那样,这很好用。
但是,例如,如果我从网站复制一些 lorem ipsum 文本,它会复制样式(字体大小、颜色等)。
这是这样保存的:
<p style="margin: 0px 0px 15px; padding: 0px; text-align: justify; font-family: 'Open Sans', Arial, sans-serif;">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis libero erat, tincidunt id placerat vel, vehicula at mauris. Morbi nibh sapien, lacinia ultricies urna dapibus, placerat suscipit risus. Maecenas vulputate, ante at blandit aliquam, ante arcu sollicitudin diam, vitae commodo metus mi nec purus. Nullam a cursus justo, eget venenatis dolor. Etiam condimentum a lectus nec volutpat. Ut sodales vestibulum urna, sed eleifend est. Praesent diam nisl, fermentum a orci ac, viverra efficitur dui. Nam eget nulla ante. Suspendisse feugiat tortor non egestas sodales. Morbi id vestibulum nisl. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos.</p>
<p style="margin: 0px 0px 15px; padding: 0px; text-align: justify; font-family: 'Open Sans', Arial, sans-serif;">Mauris placerat rhoncus metus eu accumsan. Nulla porta tempor tincidunt. Aliquam commodo massa ac ullamcorper ullamcorper. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Cras at ante consectetur, dictum metus auctor, viverra lectus. Mauris tincidunt libero nunc, eu mattis quam rhoncus in. Curabitur ut purus diam. Maecenas posuere elit eget consectetur consequat. Quisque vulputate a magna ac finibus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Maecenas ligula nisi, faucibus sed sodales eu, bibendum eu est. Integer blandit velit eget dui fermentum euismod. Maecenas finibus aliquet sem at auctor.</p>
正如你所看到的,它因为引号而中断:
我能做些什么呢?
我读到我必须在回显它时再次使用 real_escape_string(我已经在保存时使用它)但这并不能解决它。
我还应该提到我用ajax发布它。
解决方案
当您保存到数据库时,请执行此操作...
htmlentities($str);
从数据库回显时,请执行此操作...
echo html_entity_decode($str);
推荐阅读
- c++ - 当我尝试在 C++ 中调用继承的函数时发生错误
- android - 文件 'root/lib/META-INF/MANIFEST.MF' 使用保留文件或目录名称 'lib'
- ios - IOS 应用程序(如 Gmail 更新(递减)徽章计数器)如何在没有推送通知的情况下进行
- ios - Visual Studio 2019 中的问题:已达到对 iTunes Connect 的请求限制?(Xamarin 项目)
- android - 反应本机深度链接应用程序未打开
- cplex - 如何将不同的excel文件数据读入Opl cplex数据文件并执行模型?
- spring - 如何在spring boot mongo存储库中过滤多个字段
- filepath - “读取 CSV”操作员从 RapidMiner 服务器读取文件所需的文件路径是什么?
- docker - 容器运行时在 docker 中的什么位置执行?
- python - 如何在列表中插入多个值?(Python)