Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/61.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
Mysql 将用户ckeditor html数据保存到数据库时要验证的内容_Mysql_Html_Asp.net Mvc_Post_Ckeditor - Fatal编程技术网

Mysql 将用户ckeditor html数据保存到数据库时要验证的内容

Mysql 将用户ckeditor html数据保存到数据库时要验证的内容,mysql,html,asp.net-mvc,post,ckeditor,Mysql,Html,Asp.net Mvc,Post,Ckeditor,我有一个文本区,允许用户输入数据并单击上载。这将把该数据的html保存到mysql数据库表中,以显示在单独的网页上 我需要担心的是人们发布的内容。我是否需要在前端或后端添加任何验证,以确保他们不会发布危险的脚本等 验证正在发布的内容是否可以存储并放回客户端以便稍后显示的最简单方法是什么 我是否需要在前端或后端添加任何验证以确保 他们没有发布危险的脚本等 不,你不应该担心这个。只要您使用参数化查询来存储数据以避免SQL注入,关系数据库就不太关心您向它抛出的文本类型 当您尝试在网页上显示此数据时,可

我有一个文本区,允许用户输入数据并单击上载。这将把该数据的html保存到mysql数据库表中,以显示在单独的网页上

我需要担心的是人们发布的内容。我是否需要在前端或后端添加任何验证,以确保他们不会发布危险的脚本等

验证正在发布的内容是否可以存储并放回客户端以便稍后显示的最简单方法是什么

我是否需要在前端或后端添加任何验证以确保 他们没有发布危险的脚本等

不,你不应该担心这个。只要您使用参数化查询来存储数据以避免SQL注入,关系数据库就不太关心您向它抛出的文本类型

当您尝试在网页上显示此数据时,可能会出现问题。此时,您应该确保它是正确的HTML编码的

剃须刀:

@...
用于WebForms(ASP.NET 4.0)

验证所发布内容是否正确的最简单方法是什么 存储并放回客户端,以便稍后显示

参数化查询用于存储数据(仅当您使用关系数据库时),HTML编码用于显示

您可能还会发现有关的有用信息

我是否需要在前端或后端添加任何验证以确保 他们没有发布危险的脚本等

不,你不应该担心这个。只要您使用参数化查询来存储数据以避免SQL注入,关系数据库就不太关心您向它抛出的文本类型

当您尝试在网页上显示此数据时,可能会出现问题。此时,您应该确保它是正确的HTML编码的

剃须刀:

@...
用于WebForms(ASP.NET 4.0)

验证所发布内容是否正确的最简单方法是什么 存储并放回客户端,以便稍后显示

参数化查询用于存储数据(仅当您使用关系数据库时),HTML编码用于显示


您还可能会发现。

据我所知,ckeditor不提供任何内置xss保护(您应该始终在服务器端验证这些内容)。除了Darin Dimitrov answer,我可以说,在我最近的项目中,我需要将用户输入显示为html,而不是对其进行编码。如果您面临类似的情况(而且您几乎肯定是这样-通常使用ckeditor和ignore format是没有意义的)-请看:
如果这是您的情况-只需使用文章中的sanitize方法清理html,然后您就可以按原样显示它

据我所知,ckeditor不提供任何内置xss保护(您应该始终在服务器端验证这些内容)。除了Darin Dimitrov answer,我可以说,在我最近的项目中,我需要将用户输入显示为html,而不是对其进行编码。如果您面临类似的情况(而且您几乎肯定是这样-通常使用ckeditor和ignore format是没有意义的)-请看: 如果这是您的情况-只需使用文章中的sanitize方法清理html,然后您就可以按原样显示它

<%= Html.Encode(... 
Html.DisplayFor(x => x.SomePropertyOftheViewModel)