经典ASP表单如何防止在reposting过程中SQL注入引发大量问题?

2026-03-30 12:061阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计244个文字,预计阅读时间需要1分钟。

经典ASP表单如何防止在reposting过程中SQL注入引发大量问题?

我在使用带有经典ASP的SQL Server 2005和表单转发的开发中(我回显到同一页面),我将每个文本字段替换如下:course=trim(replace(request(course), ', ''))。这个问题是,如果我在验证错误的情况下需要多'。

我正在使用带有经典ASP的SQL Server 2005和表单转发(我回发到同一页面),我将每个文本字段替换如下:

course = trim(replace(request("course"),"'","''"))\

这个问题是如果我必须在验证错误的情况下多次重新发布表单,我会替换多次刻度标记.

经典ASP表单如何防止在reposting过程中SQL注入引发大量问题?

有没有另一种方法来安全地审查字符串字段而不进行这种替换?

您最好使用参数化查询:

dim cmd : set cmd = server.createObject("ADODB.Command") dim param dim sql : sql = "INSERT INTO table(course) VALUES (?)" cmd.ActiveConnection = yourDBconnection cmd.CommandType = adCmdText set param = cmd.CreateParameter("course", adVarChar, , 20, request("course")) cmd.Parameters.Append param cmd.CommandText = sql cmd.Execute

所以你用sql注入是完全安全的

标签:asprepos

本文共计244个文字,预计阅读时间需要1分钟。

经典ASP表单如何防止在reposting过程中SQL注入引发大量问题?

我在使用带有经典ASP的SQL Server 2005和表单转发的开发中(我回显到同一页面),我将每个文本字段替换如下:course=trim(replace(request(course), ', ''))。这个问题是,如果我在验证错误的情况下需要多'。

我正在使用带有经典ASP的SQL Server 2005和表单转发(我回发到同一页面),我将每个文本字段替换如下:

course = trim(replace(request("course"),"'","''"))\

这个问题是如果我必须在验证错误的情况下多次重新发布表单,我会替换多次刻度标记.

经典ASP表单如何防止在reposting过程中SQL注入引发大量问题?

有没有另一种方法来安全地审查字符串字段而不进行这种替换?

您最好使用参数化查询:

dim cmd : set cmd = server.createObject("ADODB.Command") dim param dim sql : sql = "INSERT INTO table(course) VALUES (?)" cmd.ActiveConnection = yourDBconnection cmd.CommandType = adCmdText set param = cmd.CreateParameter("course", adVarChar, , 20, request("course")) cmd.Parameters.Append param cmd.CommandText = sql cmd.Execute

所以你用sql注入是完全安全的

标签:asprepos