首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安全地将HTML从用户加载到文本区

问安全地将HTML从用户加载到文本区
EN

Stack Overflow用户
提问于 2014-04-22 04:53:41
回答 4查看 90关注 0票数 0

我在一个项目中使用HTML4,我需要能够使用通过POST提交的TinyMCE预先填充文本区域(用于服务器端错误处理,而不删除他们所有的工作)我知道文本区域的工作方式很像标签,因为其中的HTML4不会被解析为DOM,所以大多数网站都会显示演示:

<textarea name="demo"><?=$_POST['demo']?></textarea>

但是,当用户提交包含不匹配的<textarea>或</textarea>标记的HTML时会发生什么呢?

有没有管理这种风险的标准方法?

EN

回答 4

Stack Overflow用户

发布于 2014-04-22 04:54:44

输出时在php中使用htmlspecialchars($_POST['demo'])

票数 1
EN

Stack Overflow用户

发布于 2014-04-22 04:56:20

仅从用户输入中删除<textarea>标记。请参阅使用正则表达式的this post。它告诉你如何只删除某些标签(不像htmlentities),这会删除所有标签。

票数 0
EN

Stack Overflow用户

发布于 2014-04-22 04:56:31

htmlentities函数会将每个html字符(例如<)替换为可以正确显示但不会破坏您的html的字符。http://www.php.net/manual/en/function.htmlentities.php

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23205814

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档