Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 保存RichText(所见即所得输出)的最佳方法是什么?_Php_Javascript_Html - Fatal编程技术网

Php 保存RichText(所见即所得输出)的最佳方法是什么?

Php 保存RichText(所见即所得输出)的最佳方法是什么?,php,javascript,html,Php,Javascript,Html,我有一个基于javascript的富文本编辑器 保存它生成的标签最安全的方法是什么 我使用MySQL作为我的数据库 我不确定是否使用mysql\u real\u escape\u string$text;是安全的。我建议您使用mysqli与数据库接口,这样您就不需要转义数据并获得针对SQL注入的完整保护。当然,您可能仍然需要防止HTML注入 您不需要将文本字符串写入JavaScript文件。如果您需要JavaScript来处理它,我建议您使用XMLHttpRequest来获取数据,这与名称所建议

我有一个基于javascript的富文本编辑器

保存它生成的标签最安全的方法是什么

我使用MySQL作为我的数据库


我不确定是否使用mysql\u real\u escape\u string$text;是安全的。

我建议您使用mysqli与数据库接口,这样您就不需要转义数据并获得针对SQL注入的完整保护。当然,您可能仍然需要防止HTML注入


您不需要将文本字符串写入JavaScript文件。如果您需要JavaScript来处理它,我建议您使用XMLHttpRequest来获取数据,这与名称所建议的相反,并不要求您的数据是XML格式。

我想不出在这里使用htmlentities的理由。mysql_real_escape_字符串在这里非常重要,因为它可以防止人们注入像“;从表foo中删除*输入数据库。我会尝试不使用htmlentities,如果您发现需要转换为实体,那么您可以尝试htmlspecialchars,它只转换特殊字符

如果要限制表单中允许的HTML,可能还需要查看strip_tags函数

相关文件:


祝你好运

数据库中的HTML不会有什么坏处。在没有正确设计的情况下创建应用程序时会出现问题。如果内容必须显示为HTML,不要转义它。否则,请在将其插入数据库之前对其进行转义。查看markdown,这是SO上用于问题和注释的方法。我发现它比HTML更容易为用户使用,而且验证HTML和输出的问题更少。您将标记存储在数据库中,该数据库在输出时会转换为有效的HTML。@RobW我总是被告知不要更改正在插入的数据,只在数据从数据库中出来时才更改数据?@DaanTimmer您通常是正确的,请参见。而不是使用mysqli@这是另一种选择。